InvoiceCreate event fires each time a new invoice is saved to an account, whether as a draft or in any other initial status. Use this event to sync invoices to external accounting systems, trigger onboarding workflows, or log invoice activity in your own data store.
Payload
| Field | Type | Description |
|---|---|---|
_id | string | Unique identifier for the invoice |
status | string | Current invoice status (e.g., draft, sent, paid) |
liveMode | boolean | true when the event originates from a live account; false in test mode |
amountPaid | number | Total amount already paid against this invoice |
altId | string | Account (location) ID associated with the invoice |
altType | string | Resource type for altId — always "location" |
name | string | Internal name assigned to the invoice |
businessDetails | object | Sender business information (name, address, phone, website, logo URL, custom values) |
businessDetails.name | string | Business name |
businessDetails.address | string | Business address |
businessDetails.phoneNo | string | Business phone number |
businessDetails.website | string | Business website URL |
businessDetails.logoUrl | string | URL of the business logo |
businessDetails.customValues | array | Additional custom values associated with the business |
invoiceNumber | string | Human-readable invoice number |
currency | string | ISO 4217 currency code (e.g., USD) |
contactDetails | object | Recipient contact information (id, phone, email, name, address, company) |
issueDate | string | Date the invoice was issued (YYYY-MM-DD) |
dueDate | string | Payment due date (YYYY-MM-DD) |
discount | object | Discount applied to the invoice (type and value) |
invoiceItems | array | Line items on the invoice, each containing product ID, price ID, name, quantity, amount, currency, and taxes |
total | number | Total invoice value before payments |
title | string | Display title shown on the invoice document (e.g., "INVOICE") |
amountDue | number | Remaining balance owed on the invoice |
createdAt | string | ISO 8601 timestamp when the invoice was created |
updatedAt | string | ISO 8601 timestamp of the most recent update |
totalSummary | object | Summary object containing subTotal and discount amounts |
Example payload
{
"_id": "6578278e879ad2646715ba9c",
"status": "draft",
"liveMode": false,
"amountPaid": 0,
"altId": "6578278e879ad2646715ba9c",
"altType": "location",
"name": "New Invoice",
"businessDetails": {
"name": "ABC Corp.",
"address": "9931 Beechwood, TX",
"phoneNo": "+1-214-559-6993",
"website": "wwww.example.com",
"logoUrl": "https://example.com/logo.png",
"customValues": ["string"]
},
"invoiceNumber": "19",
"currency": "USD",
"contactDetails": {
"id": "6578278e879ad2646715ba9c",
"phoneNo": "+1-214-559-6993",
"email": "alex@example.com",
"name": "Alex",
"address": {
"countryCode": "US",
"addressLine1": "9931 Beechwood",
"city": "St. Houston",
"state": "TX",
"postalCode": "559-6993"
},
"companyName": "ABC Corp."
},
"issueDate": "2023-01-01",
"dueDate": "2023-01-01",
"discount": { "type": "percentage", "value": 10 },
"invoiceItems": [
{
"taxes": [],
"_id": "c6tZZU0rJBf30ZXx9Gli",
"productId": "c6tZZU0rJBf30ZXx9Gli",
"priceId": "c6tZZU0rJBf30ZXx9Gli",
"currency": "USD",
"name": "Macbook Pro",
"qty": 1,
"amount": 999
}
],
"total": 999,
"title": "INVOICE",
"amountDue": 999,
"createdAt": "2023-12-12T09:27:42.355Z",
"updatedAt": "2023-12-12T09:27:42.355Z",
"totalSummary": { "subTotal": 999, "discount": 0 }
}
Related
- Invoice Sent — fires when an invoice is delivered to the contact
- Invoice Paid — fires when an invoice is fully paid
- Invoices API — create, retrieve, and manage invoices programmatically