Payment data model
View field support, webhooks, and list parameters for each integration on the Supported Integrations page.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | No | |
created_at | string (date-time) | No | (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
updated_at | string (date-time) | No | (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
total_amount | number | No | |
contact_id | string | No | (reference to AccountingContact) |
payment_method | string | No | |
type | enum | No | Values: INVOICE, BILL |
currency | string | No | |
notes | string | No | |
invoice_id | string | No | (reference to AccountingInvoice) |
bill_id | string | No | references AccountingBill |
link_id | string | No | |
account_id | string | No | (reference to AccountingAccount) |
reference | string | No | |
organization_id | string | No | reference to an AccountingOrganization |
allocations | PaymentAllocation[] | No | What this payment was applied to (invoices, bills, credit memos, etc.). Replaces separate invoice/bill payment endpoints. |
allocations[].object_type | enum | No | The type of object this payment was applied to Values: INVOICE, BILL, CREDITMEMO, VENDORCREDIT, SALESORDER, PURCHASEORDER |
allocations[].object_id | string | No | The id of the object this payment was applied to |
allocations[].amount | number | No | The amount of the payment applied to this object |
allocations[].currency | string | No | ISO 4217 currency code of the applied amount |
allocations[].exchange_rate | number | No | The exchange rate at the time the payment was applied, for multi-currency |
allocations[].allocated_at | string (date-time) | No | Date and time when the payment was applied, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
status | enum | No | Values: SUCCEEDED, PENDING, AUTHORIZED, FAILED, CANCELED |
salesorder_id | string | No | reference to an AccountingSalesorder, e.g. the POS order this payment settled |
tender_type | enum | No | normalized tender category; the provider's original label stays in payment_method Values: CARD, CASH, GIFT_CARD, BANK_TRANSFER, WALLET, CHECK, STORE_CREDIT, BUY_NOW_PAY_LATER, EXTERNAL, OTHER |
tip_amount | number | No | |
fee_amount | number | No | processing/processor fee |
location_id | string | No | store/site where the payment was taken (commerce_location) |
device_id | string | No | POS terminal/register/device (hr device) |
card_brand | string | No | |
card_last4 | string | No | |
paid_at | string (date-time) | No | Date and time the payment was made (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
exchange_rate | number | No | Exchange rate to the base/home currency at the payment date |
category_ids | string[] | No | dimension refs -> AccountingCategory |
net_amount | number | No | total_amount minus fee_amount |
Are we missing anything? Let us know