SendManualInvoice (Push Method)
SendManualInvoice
Creates a manual claim and then creates an invoice against that manual claim in a single request. Use this when the claim does not originate from an estimating tool or data feed.
Request
| Parameter | Type | Description |
|---|---|---|
| Catid | Varchar(50) | Required. CAT ID from estimating tool. If not applicable, send 0 or empty (""). |
| PolicyNumber | String | Required. Policy number. |
| InsuredFirstName | String | Required. Insured first name. |
| InsuredLastName | String | Required. Insured last name. |
| InsuredAddress1 | String | Required. Insured address line 1. |
| InsuredAddress2 | String | Required. Insured address line 2. |
| InsuredCity | String | Required. Insured city. |
| InsuredState | String | Required. Insured state. |
| InsuredZipCode | String | Required. Insured ZIP/postal code. |
| DateOfLoss | String | Required. Date of loss. |
| TypeOfLoss | String | Required. Type of loss. |
| GrossEstimateAmount | String | Required. Estimate amount value for the claim. |
Invoice information (in the same request)
| Parameter | Type | Description |
|---|---|---|
| AdjusterFirstName | String | Required. |
| AdjusterLastName | String | Required. |
| PaOrAttorny | String | Required. |
| PaymentTerm | String | Required. |
| ClaimNumber | String | Required. |
| InvoiceNumber | Varchar(50) | Optional. Provide only if you need a manual invoice number. |
| Company | String | Required. Carrier name (value from GetCompanies). |
| RuleId | String | Required. Rule to calculate charges. |
| CreatedBy | Int | Optional. Associates an internal user account with the newly created invoice. |
| unitOfMeasures | Array | Required if the selected rule contains UOM charges. Array of { UnitOfMeasure, QuantityConsumed }. |
| AdditionalExpenses | Array | Optional. For vendors with “Show Commission Section” enabled, CommissionMethod is required (1 = Commissionable, 2 = Non‑Commissionable, 3 = Reimbursable). |
| FeeDeductions | Array | Optional. |
| OptionalFlatFees | Array | Optional. If omitted, only SelectByDefault flat fees from rules are applied. |
Response
| Parameter | Type | Description |
|---|---|---|
| ID | String | Identifier in BAP for the created manual invoice. |
| Errors | Array | Contains error message(s) should an error occur. |
Example (C#)
// setup request parameters
ParametersForSendManualInvoice objSendManualInvoiceData = new ParametersForSendManualInvoice
{
// Manual Claim Fields
Catid = "0",
PolicyNumber = "1024",
InsuredFirstName = "Joe",
InsuredLastName = "Cool",
InsuredAddress1 = "123 Test Drive",
InsuredAddress2 = "",
InsuredCity = "Tampa",
InsuredState = "FL",
InsuredZipCode = "33607",
DateOfLoss = "9/19/2018 12:00:00 AM",
TypeOfLoss = "Fire",
GrossEstimateAmount = "10.20",
// Manual Invoice Fields
AdjusterFirstName = "Joe",
AdjusterLastName = "Cool",
PaOrAttorny = "Public Adjuster",
PaymentTerm = "30",
ClaimNumber = "test12234",
InvoiceNumber = "TestInvoicenumber100", // optional
Company = "ABC",
RuleId = "4980",
Createdby = "313313",
unitOfMeasures = new List<InvoiceUnitOfMeasures>()
{
new InvoiceUnitOfMeasures { UnitOfMeasure = "Mileage", QuantityConsumed = "3000" },
new InvoiceUnitOfMeasures { UnitOfMeasure = "Hourly", QuantityConsumed = "100" },
new InvoiceUnitOfMeasures { UnitOfMeasure = "Hourly Rate",QuantityConsumed = "150" },
new InvoiceUnitOfMeasures { UnitOfMeasure = "UOM3", QuantityConsumed = "200" },
new InvoiceUnitOfMeasures { UnitOfMeasure = "UOM4", QuantityConsumed = "250" },
new InvoiceUnitOfMeasures { UnitOfMeasure = "UOM5", QuantityConsumed = "5000" }
},
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 SendManualInvoiceResponse = apiClient.SendManualInvoice(objSendManualInvoiceData);
Console.WriteLine("SendManualInvoiceResponse: {0}", SendManualInvoiceResponse);