Xero connector reference

Important

This feature is in Beta. To use it, a workspace admin must turn on Lakeflow Connect for Xero from the Previews page. See Manage Azure Databricks previews.

The managed Xero connector in Lakeflow Connect supports 23 source tables in the default schema. Twelve tables sync incrementally using the UpdatedDateUTC cursor field, and the other 11 tables use full refresh on every run.

Supported source tables

The Xero connector supports the following source tables, all under the default source schema:

Source table Primary key Description Sync mode Cursor field
accounts AccountID Accounts in the chart of accounts. Incremental UpdatedDateUTC
bank_transactions BankTransactionID Spend money and receive money transactions on bank accounts. Incremental UpdatedDateUTC
bank_transfers BankTransferID Transfers of money between bank accounts. Full refresh only
branding_themes BrandingThemeID Branding themes applied to invoices and other documents. Full refresh only
budgets BudgetID Overall and tracking budgets. Full refresh only
contacts ContactID Customers and suppliers, including archived contacts. Incremental UpdatedDateUTC
contact_groups ContactGroupID Contact groups and the contacts in each group. Full refresh only
credit_notes CreditNoteID Credit notes for customers and suppliers. Incremental UpdatedDateUTC
currencies Code Currencies enabled for the organization. Full refresh only
invoices InvoiceID Sales invoices and purchase bills. Incremental UpdatedDateUTC
items ItemID Products and services that the organization buys and sells. Incremental UpdatedDateUTC
linked_transactions LinkedTransactionID Links between billable expenses and the sales invoices they are billed to. Full refresh only
manual_journals ManualJournalID Manual journals. Incremental UpdatedDateUTC
organisation OrganisationID Details of the connected organization. Full refresh only
overpayments OverpaymentID Overpayments made to suppliers or received from customers. Incremental UpdatedDateUTC
payments PaymentID Payments applied to invoices, credit notes, prepayments, and overpayments. Incremental UpdatedDateUTC
prepayments PrepaymentID Prepayments made to suppliers or received from customers. Incremental UpdatedDateUTC
purchase_orders PurchaseOrderID Purchase orders. Incremental UpdatedDateUTC
repeating_invoices RepeatingInvoiceID Repeating invoice templates. Full refresh only
tax_rates TaxType Tax rates. Full refresh only
tracking_categories TrackingCategoryID Tracking categories and their options, including archived ones. Full refresh only
users UserID Users of the organization. Incremental UpdatedDateUTC
projects projectId Projects from Xero Projects. Full refresh only

Connector options

For usage, see Examples.

Option Type Scope Required Applies to Description
tenant_id String Pipeline Yes All tables The ID of the Xero organization (tenant) to ingest from. See Find the tenant ID.
start_datetime String Pipeline No All incremental tables Earliest modification date and time to ingest, in yyyy-MM-ddTHH:mm:ssZ format (for example, 2024-01-01T00:00:00Z). Applies only to the first sync of each table. Later syncs resume from the stored cursor. If you don't set it, the first sync starts 730 days back.

Destination table schemas

accounts

Primary key: AccountID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Code STRING
Name STRING
AccountID STRING
Type STRING
BankAccountNumber STRING
Status STRING
Description STRING
BankAccountType STRING
CurrencyCode STRING
TaxType STRING
EnablePaymentsToAccount BOOLEAN
ShowInExpenseClaims BOOLEAN
Class STRING
SystemAccount STRING
ReportingCode STRING
ReportingCodeName STRING
HasAttachments BOOLEAN
UpdatedDateUTC STRING
AddToWatchlist BOOLEAN
ValidationErrors ARRAY<STRUCT<Message: STRING>>
IsDeleted BOOLEAN

bank_transactions

Primary key: BankTransactionID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
BankTransactionID STRING
Type STRING
Status STRING
StatusAttributeString STRING
LineAmountTypes STRING
Date STRING
DateString STRING
Reference STRING
IsReconciled BOOLEAN
HasAttachments BOOLEAN
CurrencyCode STRING
CurrencyRate DOUBLE
Url STRING
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
PrepaymentID STRING
OverpaymentID STRING
UpdatedDateUTC STRING
Contact STRUCT<ContactID: STRING, ContactNumber: STRING, ContactStatus: STRING, Name: STRING, FirstName: STRING, LastName: STRING, EmailAddress: STRING, BankAccountDetails: STRING, TaxNumber: STRING, AccountsReceivableTaxType: STRING, AccountsPayableTaxType: STRING, IsSupplier: BOOLEAN, IsCustomer: BOOLEAN, UpdatedDateUTC: STRING, Addresses: VARIANT, Phones: VARIANT, ContactGroups: VARIANT, ContactPersons: VARIANT, HasValidationErrors: BOOLEAN>
BankAccount STRUCT<AccountID: STRING, Code: STRING, Name: STRING>
LineItems ARRAY<STRUCT<LineItemID: STRING, Description: STRING, Quantity: DOUBLE, UnitAmount: DOUBLE, ItemCode: STRING, AccountCode: STRING, AccountID: STRING, TaxType: STRING, TaxAmount: DOUBLE, LineAmount: DOUBLE, DiscountRate: DOUBLE, DiscountAmount: DOUBLE, RepeatingInvoiceID: STRING, Taxability: STRING, SalesTaxCodeId: DOUBLE, Item: STRUCT<Code: STRING, Name: STRING, ItemID: STRING>, Tracking: ARRAY<STRUCT<TrackingCategoryID: STRING, TrackingOptionID: STRING, Name: STRING, Option: STRING>>, TaxBreakdown: ARRAY<STRUCT<TaxComponentId: STRING, Type: STRING, Name: STRING, TaxPercentage: DOUBLE, TaxAmount: DOUBLE, TaxableAmount: DOUBLE, NonTaxableAmount: DOUBLE, ExemptAmount: DOUBLE, StateAssignedNo: STRING, JurisdictionRegion: STRING>>>>
ValidationErrors ARRAY<STRUCT<Message: STRING>>
IsDeleted BOOLEAN

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

bank_transfers

Primary key: BankTransferID

Sync mode: Full refresh only

Field Data type
FromBankAccount STRUCT<Code: STRING, Name: STRING, AccountID: STRING, Type: STRING, BankAccountNumber: STRING, Status: STRING, Description: STRING, BankAccountType: STRING, CurrencyCode: STRING, TaxType: STRING, EnablePaymentsToAccount: BOOLEAN, ShowInExpenseClaims: BOOLEAN, Class: STRING, SystemAccount: STRING, ReportingCode: STRING, ReportingCodeName: STRING, HasAttachments: BOOLEAN, UpdatedDateUTC: STRING, AddToWatchlist: BOOLEAN>
ToBankAccount STRUCT<Code: STRING, Name: STRING, AccountID: STRING, Type: STRING, BankAccountNumber: STRING, Status: STRING, Description: STRING, BankAccountType: STRING, CurrencyCode: STRING, TaxType: STRING, EnablePaymentsToAccount: BOOLEAN, ShowInExpenseClaims: BOOLEAN, Class: STRING, SystemAccount: STRING, ReportingCode: STRING, ReportingCodeName: STRING, HasAttachments: BOOLEAN, UpdatedDateUTC: STRING, AddToWatchlist: BOOLEAN>
Amount DOUBLE
Date STRING
DateString STRING
BankTransferID STRING
CurrencyRate DOUBLE
FromBankTransactionID STRING
ToBankTransactionID STRING
FromIsReconciled BOOLEAN
ToIsReconciled BOOLEAN
Reference STRING
HasAttachments BOOLEAN
CreatedDateUTC STRING
CreatedDateUTCString STRING
Status STRING
FromTracking ARRAY<STRUCT<TrackingCategoryID: STRING, TrackingOptionID: STRING, Name: STRING, Option: STRING>>
ToTracking ARRAY<STRUCT<TrackingCategoryID: STRING, TrackingOptionID: STRING, Name: STRING, Option: STRING>>
ValidationErrors ARRAY<STRUCT<Message: STRING>>

branding_themes

Primary key: BrandingThemeID

Sync mode: Full refresh only

Field Data type
BrandingThemeID STRING
Name STRING
LogoUrl STRING
Type STRING
SortOrder BIGINT
CreatedDateUTC STRING

budgets

Primary key: BudgetID

Sync mode: Full refresh only

Field Data type
BudgetID STRING
Type STRING
Description STRING
UpdatedDateUTC STRING
Status STRING
BudgetLines ARRAY<STRUCT< AccountID STRING, AccountCode STRING, BudgetBalances ARRAY<STRUCT< Period STRING, Amount DOUBLE, UnitAmount DOUBLE, Notes STRING >> >>
Tracking ARRAY<STRUCT< TrackingCategoryID STRING, TrackingOptionID STRING, Name STRING, Option STRING, Status STRING, Options ARRAY<STRUCT< TrackingOptionID STRING, Name STRING, Status STRING, TrackingCategoryID STRING >> >>

contacts

Primary key: ContactID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
ContactID STRING
MergedToContactID STRING
ContactNumber STRING
AccountNumber STRING
ContactStatus STRING
Name STRING
FirstName STRING
LastName STRING
CompanyNumber STRING
EmailAddress STRING
ContactPersons ARRAY<STRUCT<FirstName: STRING, LastName: STRING, EmailAddress: STRING, IncludeInEmails: BOOLEAN>>
BankAccountDetails STRING
TaxNumber STRING
TaxNumberType STRING
AccountsReceivableTaxType STRING
AccountsPayableTaxType STRING
Addresses ARRAY<STRUCT<AddressType: STRING, AddressLine1: STRING, AddressLine2: STRING, AddressLine3: STRING, AddressLine4: STRING, City: STRING, Region: STRING, PostalCode: STRING, Country: STRING, AttentionTo: STRING>>
Phones ARRAY<STRUCT<PhoneType: STRING, PhoneNumber: STRING, PhoneAreaCode: STRING, PhoneCountryCode: STRING>>
IsSupplier BOOLEAN
IsCustomer BOOLEAN
SalesDefaultLineAmountType STRING
PurchasesDefaultLineAmountType STRING
DefaultCurrency STRING
XeroNetworkKey STRING
SalesDefaultAccountCode STRING
PurchasesDefaultAccountCode STRING
SalesTrackingCategories ARRAY<STRUCT<TrackingCategoryName: STRING, TrackingOptionName: STRING>>
PurchasesTrackingCategories ARRAY<STRUCT<TrackingCategoryName: STRING, TrackingOptionName: STRING>>
TrackingCategoryName STRING
TrackingCategoryOption STRING
PaymentTerms STRUCT<Bills: STRUCT<Day: BIGINT, Type: STRING>, Sales: STRUCT<Day: BIGINT, Type: STRING>>
UpdatedDateUTC STRING
ContactGroups ARRAY<STRUCT<Name: STRING, Status: STRING, ContactGroupID: STRING>>
Website STRING
BrandingTheme STRUCT<BrandingThemeID: STRING, Name: STRING, LogoUrl: STRING, Type: STRING, SortOrder: BIGINT, CreatedDateUTC: STRING>
BatchPayments STRUCT<BankAccountNumber: STRING, BankAccountName: STRING, Details: STRING, Code: STRING, Reference: STRING>
Discount DOUBLE
Balances STRUCT<AccountsReceivable: STRUCT<Outstanding: DOUBLE, Overdue: DOUBLE>, AccountsPayable: STRUCT<Outstanding: DOUBLE, Overdue: DOUBLE>>
Attachments ARRAY<STRUCT<AttachmentID: STRING, FileName: STRING, Url: STRING, MimeType: STRING, ContentLength: BIGINT, IncludeOnline: BOOLEAN>>
HasAttachments BOOLEAN
ValidationErrors ARRAY<STRUCT<Message: STRING>>
HasValidationErrors BOOLEAN
StatusAttributeString STRING

contact_groups

Primary key: ContactGroupID

Sync mode: Full refresh only

Field Data type
ContactGroupID STRING
Name STRING
Status STRING
HasValidationErrors BOOLEAN
Contacts ARRAY<STRUCT<ContactID STRING, Name STRING>>

credit_notes

Primary key: CreditNoteID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Type STRING
Contact STRUCT<ContactID: STRING, MergedToContactID: STRING, ContactNumber: STRING, AccountNumber: STRING, ContactStatus: STRING, Name: STRING, FirstName: STRING, LastName: STRING, CompanyNumber: STRING, EmailAddress: STRING, ContactPersons: VARIANT, BankAccountDetails: STRING, TaxNumber: STRING, TaxNumberType: STRING, AccountsReceivableTaxType: STRING, AccountsPayableTaxType: STRING, Addresses: VARIANT, Phones: VARIANT, IsSupplier: BOOLEAN, IsCustomer: BOOLEAN, SalesDefaultLineAmountType: STRING, PurchasesDefaultLineAmountType: STRING, DefaultCurrency: STRING, XeroNetworkKey: STRING, SalesDefaultAccountCode: STRING, PurchasesDefaultAccountCode: STRING, SalesTrackingCategories: VARIANT, PurchasesTrackingCategories: VARIANT, TrackingCategoryName: STRING, TrackingCategoryOption: STRING, PaymentTerms: VARIANT, UpdatedDateUTC: STRING, ContactGroups: VARIANT, Website: STRING, BrandingTheme: VARIANT, BatchPayments: VARIANT, Discount: DOUBLE, Balances: VARIANT, Attachments: VARIANT, HasAttachments: BOOLEAN, ValidationErrors: VARIANT, HasValidationErrors: BOOLEAN, StatusAttributeString: STRING>
Date STRING
DueDate STRING
Status STRING
LineAmountTypes STRING
LineItems ARRAY<STRUCT<LineItemID: STRING, Description: STRING, Quantity: DOUBLE, UnitAmount: DOUBLE, ItemCode: STRING, AccountCode: STRING, AccountID: STRING, TaxType: STRING, TaxAmount: DOUBLE, Item: STRUCT<Code: STRING, Name: STRING, ItemID: STRING>, LineAmount: DOUBLE, Tracking: ARRAY<STRUCT<TrackingCategoryID: STRING, TrackingOptionID: STRING, Name: STRING, Option: STRING>>, DiscountRate: DOUBLE, DiscountAmount: DOUBLE, RepeatingInvoiceID: STRING, Taxability: STRING, SalesTaxCodeId: DOUBLE, TaxBreakdown: ARRAY<STRUCT<TaxComponentId: STRING, Type: STRING, Name: STRING, TaxPercentage: DOUBLE, TaxAmount: DOUBLE, TaxableAmount: DOUBLE, NonTaxableAmount: DOUBLE, ExemptAmount: DOUBLE, StateAssignedNo: STRING, JurisdictionRegion: STRING>>>>
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
CISDeduction DOUBLE
CISRate DOUBLE
UpdatedDateUTC STRING
UpdatedDateUTCString STRING
CurrencyCode STRING
FullyPaidOnDate STRING
CreditNoteID STRING
CreditNoteNumber STRING
Reference STRING
SentToContact BOOLEAN
CurrencyRate DOUBLE
RemainingCredit DOUBLE
Allocations ARRAY<STRUCT<AllocationID: STRING, Invoice: STRUCT<InvoiceID: STRING, InvoiceNumber: STRING, CreditNotes: ARRAY<VARIANT>, HasErrors: BOOLEAN, InvoiceAddresses: ARRAY<VARIANT>, InvoicePaymentServices: ARRAY<VARIANT>, IsDiscounted: BOOLEAN, LineItems: ARRAY<VARIANT>, Overpayments: ARRAY<VARIANT>, Payments: ARRAY<VARIANT>, Prepayments: ARRAY<VARIANT>>, Overpayment: VARIANT, Prepayment: VARIANT, CreditNote: VARIANT, Amount: DOUBLE, Date: STRING, IsDeleted: BOOLEAN, StatusAttributeString: STRING, ValidationErrors: ARRAY<STRUCT<Message: STRING>>>>
AppliedAmount DOUBLE
Payments ARRAY<STRUCT<Invoice: VARIANT, CreditNote: VARIANT, Prepayment: VARIANT, Overpayment: VARIANT, InvoiceNumber: STRING, CreditNoteNumber: STRING, BatchPayment: VARIANT, Account: VARIANT, Code: STRING, Date: STRING, CurrencyRate: DOUBLE, Amount: DOUBLE, BankAmount: DOUBLE, Reference: STRING, IsReconciled: BOOLEAN, Status: STRING, PaymentType: STRING, UpdatedDateUTC: STRING, UpdatedDateUTCString: STRING, PaymentID: STRING, BatchPaymentID: STRING, BankAccountNumber: STRING, Particulars: STRING, Details: STRING, HasAccount: BOOLEAN, HasValidationErrors: BOOLEAN, StatusAttributeString: STRING, ValidationErrors: ARRAY<STRUCT<Message: STRING>>, Warnings: ARRAY<STRUCT<Message: STRING>>>>
BrandingThemeID STRING
StatusAttributeString STRING
HasAttachments BOOLEAN
HasErrors BOOLEAN
ValidationErrors ARRAY<STRUCT<Message: STRING>>
Warnings ARRAY<STRUCT<Message: STRING>>
InvoiceAddresses ARRAY<STRUCT<InvoiceAddressType: STRING, AddressLine1: STRING, AddressLine2: STRING, AddressLine3: STRING, AddressLine4: STRING, City: STRING, Region: STRING, PostalCode: STRING, Country: STRING>>
IsDeleted BOOLEAN

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

currencies

Primary key: Code

Sync mode: Full refresh only

Field Data type
Code STRING
Description STRING

invoices

Primary key: InvoiceID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Type STRING
Contact STRUCT<ContactID:STRING,MergedToContactID:STRING,ContactNumber:STRING,AccountNumber:STRING,ContactStatus:STRING,Name:STRING,FirstName:STRING,LastName:STRING,CompanyNumber:STRING,EmailAddress:STRING,BankAccountDetails:STRING,TaxNumber:STRING,TaxNumberType:STRING,AccountsReceivableTaxType:STRING,AccountsPayableTaxType:STRING,IsSupplier:BOOLEAN,IsCustomer:BOOLEAN,DefaultCurrency:STRING,UpdatedDateUTC:STRING,Website:STRING,Discount:DOUBLE,HasAttachments:BOOLEAN,HasValidationErrors:BOOLEAN,ContactPersons:VARIANT,Addresses:VARIANT,Phones:VARIANT>
LineItems ARRAY<STRUCT<LineItemID:STRING,Description:STRING,Quantity:DOUBLE,UnitAmount:DOUBLE,ItemCode:STRING,AccountCode:STRING,AccountID:STRING,TaxType:STRING,TaxAmount:DOUBLE,Item:STRUCT<Code:STRING,Name:STRING,ItemID:STRING>,LineAmount:DOUBLE,Tracking:ARRAY<STRUCT<TrackingCategoryID:STRING,TrackingOptionID:STRING,Name:STRING,Option:STRING>>,DiscountRate:DOUBLE,DiscountAmount:DOUBLE,RepeatingInvoiceID:STRING,Taxability:STRING,SalesTaxCodeId:DOUBLE,TaxBreakdown:ARRAY<STRUCT<TaxComponentId:STRING,Type:STRING,Name:STRING,TaxPercentage:DOUBLE,TaxAmount:DOUBLE,TaxableAmount:DOUBLE,NonTaxableAmount:DOUBLE,ExemptAmount:DOUBLE,StateAssignedNo:STRING,JurisdictionRegion:STRING>>>>
Date STRING
DueDate STRING
LineAmountTypes STRING
InvoiceNumber STRING
Reference STRING
BrandingThemeID STRING
Url STRING
CurrencyCode STRING
CurrencyRate DOUBLE
Status STRING
SentToContact BOOLEAN
ExpectedPaymentDate STRING
PlannedPaymentDate STRING
CISDeduction DOUBLE
CISRate DOUBLE
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
TotalDiscount DOUBLE
RoundingAmount DOUBLE
EnteredTotal DOUBLE
InvoiceID STRING
RepeatingInvoiceID STRING
HasAttachments BOOLEAN
IsDiscounted BOOLEAN
InvoicePaymentServices ARRAY<VARIANT>
Payments ARRAY<STRUCT<PaymentID:STRING,Date:STRING,Amount:DOUBLE,CurrencyRate:DOUBLE,Reference:STRING,HasAccount:BOOLEAN,HasValidationErrors:BOOLEAN>>
Prepayments ARRAY<STRUCT<PrepaymentID:STRING,ID:STRING,Date:STRING,Reference:STRING,AppliedAmount:DOUBLE,Total:DOUBLE,CurrencyRate:DOUBLE>>
Overpayments ARRAY<STRUCT<OverpaymentID:STRING,ID:STRING,Date:STRING,Reference:STRING,AppliedAmount:DOUBLE,Total:DOUBLE,CurrencyRate:DOUBLE>>
AmountDue DOUBLE
AmountPaid DOUBLE
FullyPaidOnDate STRING
AmountCredited DOUBLE
UpdatedDateUTC STRING
UpdatedDateUTCString STRING
CreditNotes ARRAY<STRUCT<CreditNoteID:STRING,CreditNoteNumber:STRING,ID:STRING,AppliedAmount:DOUBLE,DateString:STRING,Date:STRING,Total:DOUBLE>>
Attachments ARRAY<STRUCT<AttachmentID:STRING,FileName:STRING,Url:STRING,MimeType:STRING,ContentLength:BIGINT,IncludeOnline:BOOLEAN>>
HasErrors BOOLEAN
StatusAttributeString STRING
ValidationErrors ARRAY<STRUCT<Message:STRING>>
Warnings ARRAY<STRUCT<Message:STRING>>
InvoiceAddresses ARRAY<STRUCT<InvoiceAddressType:STRING,AddressLine1:STRING,AddressLine2:STRING,AddressLine3:STRING,AddressLine4:STRING,City:STRING,Region:STRING,PostalCode:STRING,Country:STRING>>
IsDeleted BOOLEAN

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

items

Primary key: ItemID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
ItemID STRING
Code STRING
Name STRING
Description STRING
PurchaseDescription STRING
InventoryAssetAccountCode STRING
IsSold BOOLEAN
IsPurchased BOOLEAN
IsTrackedAsInventory BOOLEAN
PurchaseDetails STRUCT<UnitPrice: DOUBLE, AccountCode: STRING, COGSAccountCode: STRING, TaxType: STRING>
SalesDetails STRUCT<UnitPrice: DOUBLE, AccountCode: STRING, COGSAccountCode: STRING, TaxType: STRING>
TotalCostPool DOUBLE
QuantityOnHand DOUBLE
QuantityAvailable DOUBLE
QuantityOnBackOrder DOUBLE
StatusAttributeString STRING
UpdatedDateUTC STRING
ValidationErrors ARRAY<STRUCT<Message: STRING>>

linked_transactions

Primary key: LinkedTransactionID

Sync mode: Full refresh only

Field Data type
LinkedTransactionID STRING
SourceTransactionID STRING
SourceLineItemID STRING
ContactID STRING
TargetTransactionID STRING
TargetLineItemID STRING
Status STRING
Type STRING
UpdatedDateUTC STRING
SourceTransactionTypeCode STRING
ValidationErrors ARRAY<STRUCT<Message: STRING>>

manual_journals

Primary key: ManualJournalID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
ManualJournalID STRING
Narration STRING
JournalLines ARRAY<STRUCT< LineAmount DOUBLE, AccountCode STRING, AccountID STRING, Description STRING, TaxType STRING, Tracking ARRAY<STRUCT< TrackingCategoryID STRING, Name STRING, Option STRING, TrackingOptionID STRING, Status STRING >>, TaxAmount DOUBLE, IsBlank BOOLEAN >>
Date STRING
LineAmountTypes STRING
Status STRING
Url STRING
ShowOnCashBasisReports BOOLEAN
HasAttachments BOOLEAN
UpdatedDateUTC STRING
StatusAttributeString STRING
Warnings ARRAY<STRUCT<Message STRING>>
ValidationErrors ARRAY<STRUCT<Message STRING>>
Attachments ARRAY<STRUCT< AttachmentID STRING, FileName STRING, Url STRING, MimeType STRING, ContentLength BIGINT, IncludeOnline BOOLEAN >>
IsDeleted BOOLEAN

organisation

Primary key: OrganisationID

Sync mode: Full refresh only

Field Data type
OrganisationID STRING
APIKey STRING
Name STRING
LegalName STRING
PaysTax BOOLEAN
Version STRING
OrganisationType STRING
BaseCurrency STRING
CountryCode STRING
IsDemoCompany BOOLEAN
OrganisationStatus STRING
RegistrationNumber STRING
EmployerIdentificationNumber STRING
TaxNumber STRING
TaxNumberName STRING
FinancialYearEndDay BIGINT
FinancialYearEndMonth BIGINT
SalesTaxBasis STRING
SalesTaxPeriod STRING
DefaultSalesTax STRING
DefaultPurchasesTax STRING
PeriodLockDate STRING
EndOfYearLockDate STRING
CreatedDateUTC STRING
Timezone STRING
OrganisationEntityType STRING
ShortCode STRING
Class STRING
Edition STRING
LineOfBusiness STRING
Addresses ARRAY<STRUCT<AddressType STRING, AddressLine1 STRING, AddressLine2 STRING, AddressLine3 STRING, AddressLine4 STRING, City STRING, Region STRING, PostalCode STRING, Country STRING, AttentionTo STRING>>
Phones ARRAY<STRUCT<PhoneType STRING, PhoneNumber STRING, PhoneAreaCode STRING, PhoneCountryCode STRING>>
ExternalLinks ARRAY<STRUCT<LinkType STRING, Url STRING, Description STRING>>
PaymentTerms STRUCT<Bills STRUCT<Day BIGINT, Type STRING>, Sales STRUCT<Day BIGINT, Type STRING>>

overpayments

Primary key: OverpaymentID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Type STRING
Contact STRUCT<ContactID: STRING, MergedToContactID: STRING, ContactNumber: STRING, AccountNumber: STRING, ContactStatus: STRING, Name: STRING, FirstName: STRING, LastName: STRING, CompanyNumber: STRING, EmailAddress: STRING, ContactPersons: VARIANT, BankAccountDetails: STRING, TaxNumber: STRING, TaxNumberType: STRING, AccountsReceivableTaxType: STRING, AccountsPayableTaxType: STRING, Addresses: VARIANT, Phones: VARIANT, IsSupplier: BOOLEAN, IsCustomer: BOOLEAN, SalesDefaultLineAmountType: STRING, PurchasesDefaultLineAmountType: STRING, DefaultCurrency: STRING, XeroNetworkKey: STRING, SalesDefaultAccountCode: STRING, PurchasesDefaultAccountCode: STRING, SalesTrackingCategories: VARIANT, PurchasesTrackingCategories: VARIANT, TrackingCategoryName: STRING, TrackingCategoryOption: STRING, PaymentTerms: VARIANT, UpdatedDateUTC: STRING, ContactGroups: VARIANT, Website: STRING, BrandingTheme: VARIANT, BatchPayments: VARIANT, Discount: DOUBLE, Balances: VARIANT, Attachments: VARIANT, HasAttachments: BOOLEAN, ValidationErrors: VARIANT, HasValidationErrors: BOOLEAN, StatusAttributeString: STRING>
Date STRING
DateString STRING
Status STRING
LineAmountTypes STRING
LineItems ARRAY<STRUCT<LineItemID: STRING, Description: STRING, Quantity: DOUBLE, UnitAmount: DOUBLE, ItemCode: STRING, AccountCode: STRING, AccountID: STRING, TaxType: STRING, TaxAmount: DOUBLE, Item: STRUCT<Code: STRING, Name: STRING, ItemID: STRING>, LineAmount: DOUBLE, Tracking: ARRAY<STRUCT<TrackingCategoryID: STRING, TrackingOptionID: STRING, Name: STRING, Option: STRING>>, DiscountRate: DOUBLE, DiscountAmount: DOUBLE, RepeatingInvoiceID: STRING, Taxability: STRING, SalesTaxCodeId: DOUBLE, TaxBreakdown: ARRAY<STRUCT<TaxComponentId: STRING, Type: STRING, Name: STRING, TaxPercentage: DOUBLE, TaxAmount: DOUBLE, TaxableAmount: DOUBLE, NonTaxableAmount: DOUBLE, ExemptAmount: DOUBLE, StateAssignedNo: STRING, JurisdictionRegion: STRING>>>>
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
UpdatedDateUTC STRING
UpdatedDateUTCString STRING
CurrencyCode STRING
OverpaymentID STRING
CurrencyRate DOUBLE
RemainingCredit DOUBLE
Allocations ARRAY<STRUCT<AllocationID: STRING, Invoice: VARIANT, Overpayment: VARIANT, Prepayment: VARIANT, CreditNote: VARIANT, Amount: DOUBLE, Date: STRING, IsDeleted: BOOLEAN, StatusAttributeString: STRING, ValidationErrors: ARRAY<STRUCT<Message: STRING>>>>
AppliedAmount DOUBLE
Payments ARRAY<STRUCT<Invoice: VARIANT, CreditNote: VARIANT, Prepayment: VARIANT, Overpayment: VARIANT, InvoiceNumber: STRING, CreditNoteNumber: STRING, BatchPayment: VARIANT, Account: VARIANT, Code: STRING, Date: STRING, CurrencyRate: DOUBLE, Amount: DOUBLE, BankAmount: DOUBLE, Reference: STRING, IsReconciled: BOOLEAN, Status: STRING, PaymentType: STRING, UpdatedDateUTC: STRING, UpdatedDateUTCString: STRING, PaymentID: STRING, BatchPaymentID: STRING, BankAccountNumber: STRING, Particulars: STRING, Details: STRING, HasAccount: BOOLEAN, HasValidationErrors: BOOLEAN, StatusAttributeString: STRING, ValidationErrors: ARRAY<STRUCT<Message: STRING>>, Warnings: ARRAY<STRUCT<Message: STRING>>>>
HasAttachments BOOLEAN
Reference STRING
Attachments ARRAY<STRUCT<AttachmentID: STRING, FileName: STRING, Url: STRING, MimeType: STRING, ContentLength: BIGINT, IncludeOnline: BOOLEAN>>

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

payments

Primary key: PaymentID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Invoice VARIANT
CreditNote VARIANT
Prepayment VARIANT
Overpayment VARIANT
InvoiceNumber STRING
CreditNoteNumber STRING
BatchPayment STRUCT<BatchPaymentID: STRING, Date: STRING, Amount: DOUBLE, Status: STRING, Type: STRING, Payments: ARRAY<VARIANT>, Account: STRUCT<AccountID: STRING, Code: STRING, Name: STRING>, Reference: STRING, Particulars: STRING, Code: STRING, Details: STRING, Narrative: STRING, DateString: STRING, TotalAmount: DOUBLE, UpdatedDateUTC: STRING, IsReconciled: BOOLEAN>
Account VARIANT
Code STRING
Date STRING
CurrencyRate DOUBLE
Amount DOUBLE
BankAmount DOUBLE
Reference STRING
IsReconciled BOOLEAN
Status STRING
PaymentType STRING
UpdatedDateUTC STRING
UpdatedDateUTCString STRING
PaymentID STRING
BatchPaymentID STRING
BankAccountNumber STRING
Particulars STRING
Details STRING
HasAccount BOOLEAN
HasValidationErrors BOOLEAN
StatusAttributeString STRING
ValidationErrors ARRAY<STRUCT<Message: STRING>>
Warnings ARRAY<STRUCT<Message: STRING>>
IsDeleted BOOLEAN

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

prepayments

Primary key: PrepaymentID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Type STRING
Contact STRUCT<ContactID: STRING, MergedToContactID: STRING, ContactNumber: STRING, AccountNumber: STRING, ContactStatus: STRING, Name: STRING, FirstName: STRING, LastName: STRING, CompanyNumber: STRING, EmailAddress: STRING, ContactPersons: VARIANT, BankAccountDetails: STRING, TaxNumber: STRING, TaxNumberType: STRING, AccountsReceivableTaxType: STRING, AccountsPayableTaxType: STRING, Addresses: VARIANT, Phones: VARIANT, IsSupplier: BOOLEAN, IsCustomer: BOOLEAN, SalesDefaultLineAmountType: STRING, PurchasesDefaultLineAmountType: STRING, DefaultCurrency: STRING, XeroNetworkKey: STRING, SalesDefaultAccountCode: STRING, PurchasesDefaultAccountCode: STRING, SalesTrackingCategories: VARIANT, PurchasesTrackingCategories: VARIANT, TrackingCategoryName: STRING, TrackingCategoryOption: STRING, PaymentTerms: VARIANT, UpdatedDateUTC: STRING, ContactGroups: VARIANT, Website: STRING, BrandingTheme: VARIANT, BatchPayments: VARIANT, Discount: DOUBLE, Balances: VARIANT, Attachments: VARIANT, HasAttachments: BOOLEAN, ValidationErrors: VARIANT, HasValidationErrors: BOOLEAN, StatusAttributeString: STRING>
Date STRING
Status STRING
LineAmountTypes STRING
LineItems ARRAY<STRUCT<LineItemID: STRING, Description: STRING, Quantity: DOUBLE, UnitAmount: DOUBLE, ItemCode: STRING, AccountCode: STRING, AccountID: STRING, TaxType: STRING, TaxAmount: DOUBLE, Item: STRUCT<Code: STRING, Name: STRING, ItemID: STRING>, LineAmount: DOUBLE, Tracking: ARRAY<STRUCT<TrackingCategoryID: STRING, TrackingOptionID: STRING, Name: STRING, Option: STRING>>, DiscountRate: DOUBLE, DiscountAmount: DOUBLE, RepeatingInvoiceID: STRING, Taxability: STRING, SalesTaxCodeId: DOUBLE, TaxBreakdown: ARRAY<STRUCT<TaxComponentId: STRING, Type: STRING, Name: STRING, TaxPercentage: DOUBLE, TaxAmount: DOUBLE, TaxableAmount: DOUBLE, NonTaxableAmount: DOUBLE, ExemptAmount: DOUBLE, StateAssignedNo: STRING, JurisdictionRegion: STRING>>>>
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
Reference STRING
InvoiceNumber STRING
UpdatedDateUTC STRING
UpdatedDateUTCString STRING
CurrencyCode STRING
PrepaymentID STRING
BrandingThemeID STRING
CurrencyRate DOUBLE
RemainingCredit DOUBLE
Allocations ARRAY<STRUCT<AllocationID: STRING, Invoice: VARIANT, Overpayment: VARIANT, Prepayment: VARIANT, CreditNote: VARIANT, Amount: DOUBLE, Date: STRING, IsDeleted: BOOLEAN, StatusAttributeString: STRING, ValidationErrors: ARRAY<STRUCT<Message: STRING>>>>
Payments ARRAY<STRUCT<Invoice: VARIANT, CreditNote: VARIANT, Prepayment: VARIANT, Overpayment: VARIANT, InvoiceNumber: STRING, CreditNoteNumber: STRING, BatchPayment: VARIANT, Account: VARIANT, Code: STRING, Date: STRING, CurrencyRate: DOUBLE, Amount: DOUBLE, BankAmount: DOUBLE, Reference: STRING, IsReconciled: BOOLEAN, Status: STRING, PaymentType: STRING, UpdatedDateUTC: STRING, UpdatedDateUTCString: STRING, PaymentID: STRING, BatchPaymentID: STRING, BankAccountNumber: STRING, Particulars: STRING, Details: STRING, HasAccount: BOOLEAN, HasValidationErrors: BOOLEAN, StatusAttributeString: STRING, ValidationErrors: ARRAY<STRUCT<Message: STRING>>, Warnings: ARRAY<STRUCT<Message: STRING>>>>
AppliedAmount DOUBLE
HasAttachments BOOLEAN
Attachments ARRAY<STRUCT<AttachmentID: STRING, FileName: STRING, Url: STRING, MimeType: STRING, ContentLength: BIGINT, IncludeOnline: BOOLEAN>>

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

purchase_orders

Primary key: PurchaseOrderID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
Contact STRUCT<ContactID:STRING,MergedToContactID:STRING,ContactNumber:STRING,AccountNumber:STRING,ContactStatus:STRING,Name:STRING,FirstName:STRING,LastName:STRING,CompanyNumber:STRING,EmailAddress:STRING,BankAccountDetails:STRING,TaxNumber:STRING,TaxNumberType:STRING,AccountsReceivableTaxType:STRING,AccountsPayableTaxType:STRING,IsSupplier:BOOLEAN,IsCustomer:BOOLEAN,DefaultCurrency:STRING,UpdatedDateUTC:STRING,Website:STRING,Discount:DOUBLE,HasAttachments:BOOLEAN,HasValidationErrors:BOOLEAN,ContactPersons:VARIANT,Addresses:VARIANT,Phones:VARIANT>
LineItems ARRAY<STRUCT<LineItemID:STRING,Description:STRING,Quantity:DOUBLE,UnitAmount:DOUBLE,ItemCode:STRING,AccountCode:STRING,AccountID:STRING,TaxType:STRING,TaxAmount:DOUBLE,Item:STRUCT<Code:STRING,Name:STRING,ItemID:STRING>,LineAmount:DOUBLE,Tracking:ARRAY<STRUCT<TrackingCategoryID:STRING,TrackingOptionID:STRING,Name:STRING,Option:STRING>>,DiscountRate:DOUBLE,DiscountAmount:DOUBLE,RepeatingInvoiceID:STRING,Taxability:STRING,SalesTaxCodeId:DOUBLE,TaxBreakdown:ARRAY<STRUCT<TaxComponentId:STRING,Type:STRING,Name:STRING,TaxPercentage:DOUBLE,TaxAmount:DOUBLE,TaxableAmount:DOUBLE,NonTaxableAmount:DOUBLE,ExemptAmount:DOUBLE,StateAssignedNo:STRING,JurisdictionRegion:STRING>>>>
Type STRING
Date STRING
DateString STRING
DeliveryDate STRING
DeliveryDateString STRING
LineAmountTypes STRING
PurchaseOrderNumber STRING
Reference STRING
BrandingThemeID STRING
CurrencyCode STRING
Status STRING
SentToContact BOOLEAN
DeliveryAddress STRING
AttentionTo STRING
Telephone STRING
DeliveryInstructions STRING
ExpectedArrivalDate STRING
ExpectedArrivalDateString STRING
PurchaseOrderID STRING
CurrencyRate DOUBLE
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
TotalDiscount DOUBLE
HasAttachments BOOLEAN
HasErrors BOOLEAN
IsDiscounted BOOLEAN
UpdatedDateUTC STRING
StatusAttributeString STRING
ValidationErrors ARRAY<STRUCT<Message:STRING>>
Warnings ARRAY<STRUCT<Message:STRING>>
Attachments ARRAY<STRUCT<AttachmentID:STRING,FileName:STRING,Url:STRING,MimeType:STRING,ContentLength:BIGINT,IncludeOnline:BOOLEAN>>
IsDeleted BOOLEAN

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

repeating_invoices

Primary key: RepeatingInvoiceID

Sync mode: Full refresh only

Field Data type
Type STRING
Contact STRUCT<ContactID:STRING,MergedToContactID:STRING,ContactNumber:STRING,AccountNumber:STRING,ContactStatus:STRING,Name:STRING,FirstName:STRING,LastName:STRING,CompanyNumber:STRING,EmailAddress:STRING,BankAccountDetails:STRING,TaxNumber:STRING,TaxNumberType:STRING,AccountsReceivableTaxType:STRING,AccountsPayableTaxType:STRING,IsSupplier:BOOLEAN,IsCustomer:BOOLEAN,DefaultCurrency:STRING,UpdatedDateUTC:STRING,Website:STRING,Discount:DOUBLE,HasAttachments:BOOLEAN,HasValidationErrors:BOOLEAN,ContactPersons:VARIANT,Addresses:VARIANT,Phones:VARIANT>
Schedule STRUCT<Period:BIGINT,Unit:STRING,DueDate:BIGINT,DueDateType:STRING,StartDate:STRING,NextScheduledDate:STRING,NextScheduledDateString:STRING,EndDate:STRING>
LineItems ARRAY<STRUCT<LineItemID:STRING,Description:STRING,Quantity:DOUBLE,UnitAmount:DOUBLE,ItemCode:STRING,AccountCode:STRING,AccountID:STRING,TaxType:STRING,TaxAmount:DOUBLE,Item:STRUCT<Code:STRING,Name:STRING,ItemID:STRING>,LineAmount:DOUBLE,Tracking:ARRAY<STRUCT<TrackingCategoryID:STRING,TrackingOptionID:STRING,Name:STRING,Option:STRING>>,DiscountRate:DOUBLE,DiscountAmount:DOUBLE,RepeatingInvoiceID:STRING,Taxability:STRING,SalesTaxCodeId:DOUBLE,TaxBreakdown:ARRAY<STRUCT<TaxComponentId:STRING,Type:STRING,Name:STRING,TaxPercentage:DOUBLE,TaxAmount:DOUBLE,TaxableAmount:DOUBLE,NonTaxableAmount:DOUBLE,ExemptAmount:DOUBLE,StateAssignedNo:STRING,JurisdictionRegion:STRING>>>>
LineAmountTypes STRING
Reference STRING
BrandingThemeID STRING
CurrencyCode STRING
Status STRING
SubTotal DOUBLE
TotalTax DOUBLE
Total DOUBLE
UpdatedDateUTC STRING
RepeatingInvoiceID STRING
ID STRING
HasAttachments BOOLEAN
Attachments ARRAY<STRUCT<AttachmentID:STRING,FileName:STRING,Url:STRING,MimeType:STRING,ContentLength:BIGINT,IncludeOnline:BOOLEAN>>
ApprovedForSending BOOLEAN
SendCopy BOOLEAN
MarkAsSent BOOLEAN
IncludePDF BOOLEAN

Note

This table does not support slowly changing dimensions (SCD) type 2 because it has VARIANT columns.

tax_rates

Primary key: TaxType

Sync mode: Full refresh only

Field Data type
Name STRING
TaxType STRING
TaxComponents ARRAY<STRUCT<Name: STRING, Rate: DOUBLE, IsCompound: BOOLEAN, IsNonRecoverable: BOOLEAN>>
Status STRING
ReportTaxType STRING
CanApplyToAssets BOOLEAN
CanApplyToEquity BOOLEAN
CanApplyToExpenses BOOLEAN
CanApplyToLiabilities BOOLEAN
CanApplyToRevenue BOOLEAN
DisplayTaxRate DOUBLE
EffectiveRate DOUBLE

tracking_categories

Primary key: TrackingCategoryID

Sync mode: Full refresh only

Field Data type
TrackingCategoryID STRING
TrackingOptionID STRING
Name STRING
Option STRING
Status STRING
Options ARRAY<STRUCT<TrackingOptionID STRING, Name STRING, Status STRING, TrackingCategoryID STRING, HasValidationErrors BOOLEAN, IsDeleted BOOLEAN, IsArchived BOOLEAN, IsActive BOOLEAN>>

users

Primary key: UserID

Sync mode: Incremental

Cursor field: UpdatedDateUTC

Field Data type
UserID STRING
EmailAddress STRING
FirstName STRING
LastName STRING
UpdatedDateUTC STRING
IsSubscriber BOOLEAN
OrganisationRole STRING
GlobalUserID STRING

projects

Primary key: projectId

Sync mode: Full refresh only

Field Data type
projectId STRING
contactId STRING
name STRING
currencyCode STRING
minutesLogged BIGINT
totalTaskAmount STRUCT<currency: STRING, value: DOUBLE>
totalExpenseAmount STRUCT<currency: STRING, value: DOUBLE>
estimateAmount STRUCT<currency: STRING, value: DOUBLE>
minutesToBeInvoiced BIGINT
taskAmountToBeInvoiced STRUCT<currency: STRING, value: DOUBLE>
taskAmountInvoiced STRUCT<currency: STRING, value: DOUBLE>
expenseAmountToBeInvoiced STRUCT<currency: STRING, value: DOUBLE>
expenseAmountInvoiced STRUCT<currency: STRING, value: DOUBLE>
projectAmountInvoiced STRUCT<currency: STRING, value: DOUBLE>
deposit STRUCT<currency: STRING, value: DOUBLE>
depositApplied STRUCT<currency: STRING, value: DOUBLE>
creditNoteAmount STRUCT<currency: STRING, value: DOUBLE>
deadlineUtc TIMESTAMP
totalInvoiced STRUCT<currency: STRING, value: DOUBLE>
totalToBeInvoiced STRUCT<currency: STRING, value: DOUBLE>
estimate STRUCT<currency: STRING, value: DOUBLE>
status STRING

Required OAuth permissions

When you sign in during connection setup, the connector requests the following read-only OAuth scopes. For what each scope grants, see OAuth 2.0 scopes.

Scope Required for
openid, profile, email, offline_access Baseline access. offline_access lets the connector refresh its access token between runs.
accounting.settings.read accounts, branding_themes, currencies, items, organisation, tax_rates, tracking_categories, users
accounting.contacts.read contacts, contact_groups
accounting.invoices.read credit_notes, invoices, linked_transactions, purchase_orders, repeating_invoices
accounting.payments.read overpayments, payments, prepayments
accounting.banktransactions.read bank_transactions, bank_transfers
accounting.manualjournals.read manual_journals
accounting.budgets.read budgets
projects.read projects