SendInvoice (Push Method)
SendInvoice
Creates an invoice inside Invision by sending invoice, adjuster, fee, and line‑item data into the system.
If successful, the system automatically generates the invoice without requiring user entry.
Request
| Parameter | Type | Description |
|---|---|---|
| AdjusterFirstName | Varchar(50) | Required. Adjuster’s first name. |
| AdjusterLastName | Varchar(50) | Required. Adjuster’s last name. |
| PaOrAttorny | Varchar(50) | Required. Public Adjuster / Attorney / Other / None. |
| PaymentTerm | Varchar(50) | Required. Payment terms (e.g., Net 30). |
| ClaimNumber | Varchar(50) | Required. Claim number associated with the invoice. |
| InvoiceNumber | Varchar(50) | Optional. Send only if manually providing the invoice number. |
| Company | Varchar(250) | Required. Carrier name (value from GetCompanies). |
| RuleId | Varchar(50) | Required. The rule used to generate invoice charges. |
| unitOfMeasures | Array | Required if the rule contains UOM charges. Array of objects (UOM, QuantityConsumed). |
| CreatedBy | Int | Optional. The internal user account ID to associate with the invoice creator. |
| InvoiceAdmin | NVarchar(50) | Optional, but if present requires CreatedBy. Used for Franchise Model invoices. Accepts email or User Account ID. |
| AdditionalExpenses | Array | Optional. Expense entries. CommissionMethod required only for vendors with “Show Commission Section” enabled. Values: 1 = Commissionable, 2 = Non‑Commissionable, 3 = Reimbursable. |
| FeeDeductions | Array | Optional. Deduction entries. |
| OptionalFlatFees | Array | Optional. If not passed, system applies only SelectByDefault flat fees from rules. |
Response
| Parameter | Type | Description |
|---|---|---|
| ID | String | Identifier in BAP for the created invoice. |
| Errors | Array | Contains error message(s) if an error occurs. |
Example (C#)
// setup request parameters
ParametersForSendInvoice objSendInvoiceData = new ParametersForSendInvoice
{
AdjusterFirstName = "Joe",
AdjusterLastName = "Cool",
PaOrAttorny = "Public Adjuster",
PaymentTerm = "30",
ClaimNumber = "2019FL0313",
InvoiceNumber = "TestInvoicenumber100",
Company = "ABC",
RuleId = "537",
Createdby = "313313",
unitOfMeasures = new List<InvoiceUnitOfMeasures>()
{
new InvoiceUnitOfMeasures()
{
UnitOfMeasure = "Mileage",
QuantityConsumed = "3000"
},
new InvoiceUnitOfMeasures()
{
UnitOfMeasure = "Mileage",
QuantityConsumed = "100"
}
},
OptionalFlatFees = new string[] { "Field Re-Inspection", "Admin Fee" },
additionalExpenses = new List<InvoiceAdditionalExpenses>()
{
new InvoiceAdditionalExpenses()
{
AdditionalExpense = "Lunch",
Amount = "124",
CommissionMethod = "1" // 1=Commissionable, 2=Non-Commissionable, 3=Reimbursable
},
new InvoiceAdditionalExpenses()
{
AdditionalExpense = "Photos",
Amount = "100",
CommissionMethod = "2"
}
},
feeDeductions = new List<InvoiceFeeDeductions>()
{
new InvoiceFeeDeductions()
{
FeeDeduction = "loan",
Amount = "10"
},
new InvoiceFeeDeductions()
{
FeeDeduction = "loan2",
Amount = "10"
}
}
};
dynamic SendInvoiceResponse = apiClient.SendInvoice(objSendInvoiceData);
Console.WriteLine("SendInvoiceResponse: {0}", SendInvoiceResponse);