Xero scopes by use case
Detailed guidance on the new granular access scopes required for the Xero partnership certification
Checkpoint 5: Scopes, part of the Xero App Partner certification program, requires that apps have the minimal access to data as required by their use case.
To comply, you must define the access scopes you need for your intended use case. During the app review, Xero will ask you to justify your use of scopes and explain why you are accessing the related data.
We have mapped out the Xero scopes that apply to each specific Codat use case in the table below. You will also need these scopes regardless of the use case:
offline_accessaccounting.settings
About Xero's granular scopes
Xero is replacing its broad OAuth 2.0 scopes — most notably accounting.transactions — with a set of more granular scopes, so your app requests only the data it needs.
If you create a new Xero app on or after March 2, 2026, you must use the new granular scopes from day one. If your app already exists, you can begin requesting the granular scopes from April 2026, and you must complete your migration by September 2027.
Granular scopes aren't applied to existing tokens automatically. Because your app is requesting a different set of permissions, each customer connectionConnection A link between a Codat company and a data source (like an accounting platform). Each connection represents authorized access to pull or push data from that platform. requires fresh, explicit consent, and you'll need customers to reauthenticate with the granular apps.
For full details, see Xero's Granular Scopes FAQs and the announcement post, Upcoming changes to Xero accounting API scopes.
Scopes by Codat use case
| Xero Partnership Type | Codat Use Case | Current (broad) Xero Scopes | New granular Xero scopes |
|---|---|---|---|
| Financial Services - Bank FeedsBank Feeds A Codat product that enables automatic synchronization of bank transaction data into a company's accounting software. | Reconciling bank transactions | bankfeeds | bankfeeds |
| Financial Services - Lending | Lending - Loan qualification | accounting.reports.readaccounting.transactionsaccounting.contactsaccounting.attachmentsaccounting.reports.bankstatement.read | accounting.invoicesaccounting.payments accounting.banktransactions accounting.reports.balancesheets.read accounting.reports.profitandloss.readaccounting.contactsaccounting.attachmentsaccounting.reports.banksummary.read |
| Financial Services - Lending | Lending - Invoice finance | accounting.reports.readaccounting.transactionsaccounting.contactsaccounting.attachmentsaccounting.reports.bankstatement.read | accounting.invoices accounting.paymentsaccounting.banktransactions accounting.contactsaccounting.attachmentsaccounting.reports.balancesheets.read |
| App Store and Financial Services - Bank FeedsBank Feeds A Codat product that enables automatic synchronization of bank transaction data into a company's accounting software. | Managing expenses | accounting.transactionsaccounting.contactsaccounting.attachmentsbankfeeds | accounting.banktransactionsaccounting.contactsaccounting.attachmentsbankfeeds |
| App Store | Dashboarding | Read-only configuration required. Please work with your implementation specialist to configure scopes. | Read-only configuration required. Please work with your implementation specialist to configure scopes. |
| App Store | Automating payables | accounting.transactionsaccounting.contactsaccounting.attachments | accounting.invoicesaccounting.paymentsaccounting.banktransactionsaccounting.contactsaccounting.attachments |
| App Store | Automating receivables | accounting.transactionsaccounting.contactsaccounting.attachments | accounting.invoicesaccounting.paymentsaccounting.contactsaccounting.attachments |
| App Store | Integrating commerce data | accounting.journals.readaccounting.transactionsaccounting.contacts | accounting.invoicesaccounting.paymentsaccounting.banktransactionsaccounting.journals.read (needs Advanced tier)accounting.contacts |
| App Store | Managing payroll | accounting.journals.readaccounting.transactions | accounting.manualjournalsaccounting.journals.read (needs Advanced tier) |
| App Store and Financial Services | Spend Insights | accounting.contactsaccounting.attachmentsaccounting.transactions | accounting.invoicesaccounting.payments accounting.banktransactions accounting.contactsaccounting.attachments |
| App Store and Financial Services | FX Insights | accounting.invoicesaccounting.payments accounting.banktransactions accounting.contactsaccounting.attachments |
A note on the Xero Advanced tier
The accounting.journals.read scope is only available to apps on Xero's Advanced tier. If your use case requires it, confirm your Xero subscription level before submitting for certification.