Invoices

Invoices

An Invoice in Tabs represents a request for payment sent to a customer, detailing line items (products, services, or charges), pricing, and due dates. Invoices are generated from Obligations.


Invoice Object

FieldTypeDescriptionRequired
idstringUnique identifier for the invoice.Yes
issueDatestring (YYYY-MM-DD)The date the invoice was issued.Yes
dueDatestring (YYYY-MM-DD)The date the invoice is due.Yes
sentDatestring | null (YYYY-MM-DD)The date the invoice was sent to the customer (if applicable).No
createdAtstring (ISO 8601)Timestamp when the invoice was created.Yes
statusInvoiceStatusCurrent status of the invoice (e.g., DRAFT, OPEN, PAID, etc.).Yes
customerIdstringThe ID of the customer this invoice is associated with.Yes
originalDueDatestring (YYYY-MM-DD)The original due date before any modifications.Yes
originalIssueDatestring (YYYY-MM-DD)The original issue date before any modifications.Yes
totalnumber (cents)Total invoice amount in cents. For example, $100.00 = 10000.Yes
balanceRemainingnumber (cents)Remaining balance in cents (not yet paid).Yes
externalIdsExternalId[]One or more external IDs referencing this invoice in other systems (e.g., ERP, CRM).No
lineItemsInvoiceItem[]The individual line items associated with this invoice (products, services, fees, etc.).Yes

InvoiceItem

Each line item represents a single billing component on the invoice.

FieldTypeDescriptionRequired
idstringUnique identifier for the invoice item.Yes
namestringName of the item (e.g., “Subscription Fee”).Yes
descriptionstringDescription providing additional details about the item.No
quantitynumberNumber of units for this item.Yes
unitPricenumber (cents)Price per unit in cents. For example, $5.00 = 500.Yes
totalnumber (cents)Total cost for this line item in cents (quantity × unitPrice).Yes
itemItemV3DtoReference to the underlying product or item details (SKU, metadata, etc.).Yes

Note: The exact structure of item may vary depending on how your products are defined in Tabs (e.g., ItemV3Dto includes fields like SKU, descriptions, and metadata).


ExternalId

ExternalId objects can be attached to both invoices and invoice line items (if needed), helping you track these records in third-party systems.

FieldTypeDescriptionRequired
externalIdstringThe ID used in another system (e.g., an ERP record).Yes
sourceTypestring (enum)The source system (e.g., Salesforce, NetSuite).Yes
metadataanyAdditional metadata for context.No