GetInvoicesByStatus (Pull Method)
GetInvoicesByStatus
Retrieves invoices filtered by status and date range. Supports Normal, Supplement, or Both invoice types.
Request
| Parameter | Type | Description |
|---|---|---|
| Company | Varchar(250) | Optional. If omitted, invoices for all companies are returned. |
| Status | Varchar(50) | Optional invoice status filter. Possible values include: Approved, Pending, Rejected, Active, Inactive, AwaitingPayment, Paid, ReadyforPayment, PaymentReceived. Send empty to include all statuses. |
| StartDate | Date | Required. Start date of the range to include. |
| EndDate | Date | Required. End date of the range to include. |
| StartTime | Varchar(10) | Optional. If provided, combined with StartDate for precise start timestamp. If omitted, defaults to 00:00:00. |
| EndTime | Varchar(10) | Optional. If provided, combined with EndDate for precise end timestamp. If omitted, defaults to 23:59:59. |
| UseCreatedOn | Bool | Required. True uses Created On dates; False uses Modified On dates. |
| InvoiceType | Varchar(50) | Optional. Values: Normal, Supplement, Both. If omitted, defaults to Normal. |
Response
| Parameter | Type | Description |
|---|---|---|
| InvoiceId | Int | Internal unique identification of the invoice. |
| UniqueId | Int | Unique identification per company. |
| InvoiceNumber | Varchar(50) | Invoice number. |
| ParentInvoiceNumber | Varchar(50) | For supplemental invoices only. |
| ParentInvoiceUniqueID | Varchar(50) | For supplemental invoices only. |
| Errors | Text Array | Contains error message(s) if an error occurs. |
| AssignmentType | Varchar(250) | Assignment type (e.g., Non‑CAT, CAT). Returned for Normal invoices. |
| DamagesType | Varchar(250) | Damages type (e.g., Daily Revision). Returned for Supplement invoices. |
| AssignmentName | Varchar(250) | Rule name. |
| CATID | Varchar(50) | |
| Company | Varchar(250) | |
| InvoiceType | Varchar(50) | “Normal” or “Supplement”. |
| VendorId | NVarchar(250) | |
| ClaimNumber | Varchar(50) | |
| TransactionId | Varchar(50) | Returned only for claims related to Xactimate. |
| Loss Street Address | Varchar(100) | |
| Loss City | Varchar(250) | |
| Loss State | Varchar(10) | |
| Loss Zipcode | Varchar(50) | |
| PolicyNumber | Varchar(50) | |
| InsuredName | Varchar(50) | |
| DateOfLoss | DateTime | |
| TypeOfLoss | Varchar(50) | |
| GrossEstimateAmount | Decimal | |
| PaOrAttorny | Varchar(50) | |
| FieldFee | Decimal | |
| PercentageFee | Decimal | |
| TaxesPercentage | Decimal | |
| TaxesAmount | Decimal | |
| InvoiceTotal | Decimal | |
| AdjusterName | Varchar(50) | |
| Status | Varchar(50) | Invoice status (Approved, Pending, Rejected, Active, Inactive, AwaitingPayment, Paid, ReadyforPayment, PaymentReceived). |
| Comments | Text | |
| CreatedOn | DateTime | |
| ModifiedOn | DateTime | |
| CreatedBy | NVarchar(256) | Email address of the person who created the invoice. |
| ModifiedBy | NVarchar(256) | Email address of the person who modified the invoice. |
| Invoice Admin | NVarchar(50) | Franchise model context. May be empty, a User Account, or Username (email). |
| Creator User Account | NVarchar(50) | User account ID of invoice creator (if configured). |
| Adjuster User Account | NVarchar(50) | User account ID of the adjuster (if configured). |
| Associated Adjuster | NVarchar(50) | Franchise-related association: may return User Account or Email. |
| PendingReason | Varchar(500) | |
| ProcessingFees | Varchar(50) | |
| isManualInvoice | Bit | Indicates if invoice is manual. |
Fields that can return one or multiple records against an invoice
Unit of measures (Array)
Each entry contains:
- UnitOfMeasures
- FeePerUnit
- QuantityConsumed
- TotalCost
- FreeUnits
Flat Fees (Array)
Each entry contains:
- FlatFeeLabel
- FlatFeeAmount
Additional Expenses (Array)
Each entry contains:
- FieldName
- FieldAmount
- CommissionMethod
Fee Deductions (Array)
Each entry contains:
- FieldName
- FieldAmount
Example (C#)
// setup request parameters
NameValueCollection getInvoicesByStatusParams = new NameValueCollection
{
{ "Company", "ABC" },
{ "Status", "Payment Received" },
{ "StartDate", "07/24/2019" },
{ "EndDate", "07/24/2019" },
{ "StartTime", "04:30" },
{ "EndTime", "04:31" },
{ "UseCreatedOn", "true" },
{ "InvoiceType", "Supplement" } // Normal | Supplement | Both
};
dynamic getInvoicesByStatusResponse = apiClient.GetInvoicesByStatus(getInvoicesByStatusParams);
Console.WriteLine("GetInvoicesByStatus: {0}", getInvoicesByStatusResponse);
foreach (var item in getInvoicesByStatusResponse)
{
Console.WriteLine("Invoice: {0} ({1}) {2} {3}\n", item.InvoiceNumber, item.Company, item.Status, item.CreatedOn);
}