This is a staging build of the docs
We've reorganized our products to make building with Codat easier than ever
Skip to main content

Common uses of supplemental data

Review properties commonly used by our customers to enhance data required for their use cases

When a particular integration contains a property which is not common across other platforms, it may happen that it does not form part of our standard data, but can be obtained using supplemental data to support your use case.

For example, you can enhance our invoices data type with an invoice URL, a Xero-specific field that directs the user to a source document for an invoice hosted outside of Xero. For QBO, the invoices data type can be supplemented with SalesTermRef, providing you with sales terms associated with an invoice.

In sections below, you will find some integration-specific properties commonly used to supplement standard data with, and example configuration required to support this. For a full list of properties that can be used in supplemental data, refer to the integrations' own documentation.

Xero

Accounts schema

Example propertyDescription
TaxTypeSee default tax rate associated with the account
SystemAccountSee if the account is a System Account and, if so, which type
{
"supplementalDataConfig": {
"client-keyname-for-accounts": {
"dataSource": "/Accounts",
"pullData": {
"ClientNameForTaxType":"TaxType",
"ClientNameForSystemAccount": "SystemAccount"
}
}
}
}

Invoices schema

Example propertyDescription
ExpectedPaymentDateDisplayed on the invoice if the expected payment date has been set
HasAttachmentsBoolean value to indicate if invoice has an attachment
SentToContactBoolean value to indicate whether the approved invoice has been sent to the customer
ReferenceDisplay an additional external reference for the invoice
{
"supplementalDataConfig": {
"client-keyname-for-xero-invoices": {
"dataSource": "/Invoices",
"pullData": {
"ClientNameForExpectedPaymentDate": "ExpectedPaymentDate",
"ClientNameForHasAttachments": "HasAttachments"
}
}
}
}

Items schema

Example propertyDescription
QuantityOnHandShows the quantity of the item on hand
TotalCostPoolShows the value of the item on hand. Calculated using average cost accounting.
{
"supplementalDataConfig": {
"client-keyname-for-items": {
"dataSource": "/Items",
"pullData": {
"ClientNameForQuantityOnHand":"QuantityOnHand",
"ClientNameForTotalCostPool":"TotalCostPool"
}
}
}
}

Contacts schema

Example propertyDescription
BankAccountDetailsReturns the bank account number of supplier
{
"supplementalDataConfig": {
"client-Keyname-For-Xero-suppliers": {
"dataSource": "/Contacts",
"pullData": {
"ClientNameForBankAccounts": "BankAccountDetails"
}
}
}
}

Tax rates schema

Example propertyDescription
CanApplyToAssetsBoolean to describe if tax rate can be used for asset accounts
CanApplyToEquityBoolean to describe if tax rate can be used for equity accounts
CanApplyToExpensesBoolean to describe if tax rate can be used for expense accounts
CanApplyToLiabilitiesBoolean to describe if tax rate can be used for liability accounts
CanApplyToRevenueBoolean to describe if tax rate can be used for revenue accounts
{
"supplementalDataConfig": {
"client-keyname-for-tax-rates": {
"dataSource": "/TaxRates",
"pullData": {
"ClientNameForCanApplyToLiabilities":"CanApplyToLiabilities",
"ClientNameForCanApplyToAssets": "CanApplyToAssets",
"ClientNameForCanApplyToEquity": "CanApplyToEquity",
"ClientNameForCanApplyToExpenses": "CanApplyToExpenses",
"ClientNameForCanApplyToRevenue": "CanApplyToRevenue"
}
}
}
}

QuickBooks Online

Customers schema

Example propertyDescription
SalesTermRefReference to the Sales Terms associated with this customer
ParentRefReference to a customer that is the immediate parent of this sub-customer
{
"supplementalDataConfig": {
"Client-keyname-for-QBO-customers": {
"dataSource": "/Customer",
"pullData": {
"ClientNameForSalesTermRef":"SalesTermRef.value",
"ClientNameForParentRef": "ParentRef.value"
}
}
}
}

Invoices schema

Example propertyDescription
SalesTermRefReference to the Sales Terms associated with this Invoice
{
"supplementalDataConfig": {
"client-keyname-for-qbo-invoices": {
"dataSource": "/Invoice",
"pullData": {
"salesTermRef": "SalesTermRef.value"
}
}
}
}

  • Experiment with supplemental data endpoints in our API reference.

Was this page useful?
❤️
👍
🤔
👎
😭