diff --git a/blog/260430-portal-subsidiaries-page.md b/blog/260430-portal-subsidiaries-page.md index eef25b556..ae2b13e2b 100644 --- a/blog/260430-portal-subsidiaries-page.md +++ b/blog/260430-portal-subsidiaries-page.md @@ -21,7 +21,7 @@ We are introducing the following improvements: - Dedicated subsidiaries table reuses the familiar Companies table, including search, sort, connection-status filter, and infinite scroll. - Edit, delete, and link actions are available directly from each subsidiary row, matching the behavior on the top-level Companies page. -These improvements apply to all parent companies in the Portal and complement the [hierarchical company table](/blog/multi-entity-portal-update) we shipped earlier this year. +These improvements apply to all parent companies in the Portal and complement the [hierarchical company table](/updates/260217-multi-entity-portal-update) we shipped earlier this year. ## Who is this relevant for? diff --git a/blog/260506-always-visible-search.md b/blog/260506-always-visible-search.md index 313b6f0b3..78be00ba1 100644 --- a/blog/260506-always-visible-search.md +++ b/blog/260506-always-visible-search.md @@ -22,7 +22,7 @@ We are introducing the following improvements: - Focusing the empty search input opens a popover that lists exactly which fields you can search by: **Company ID**, **Company name**, **Connection ID**, **Connected platform**, and **User who created it**. - An updated placeholder ("Search company, platform, ID...") makes the supported search terms clearer at a glance. -These improvements apply to the Companies and Subsidiaries pages and build on the [multi-entity company table](/blog/multi-entity-portal-update) we shipped earlier this year. +These improvements apply to the Companies and Subsidiaries pages and build on the [multi-entity company table](/updates/260217-multi-entity-portal-update) we shipped earlier this year. ## Who is this relevant for? diff --git a/docs/integrations/accounting/xero/partner-certification/scopes.md b/docs/integrations/accounting/xero/partner-certification/scopes.md index 1cf26a83a..bb76b6dec 100644 --- a/docs/integrations/accounting/xero/partner-certification/scopes.md +++ b/docs/integrations/accounting/xero/partner-certification/scopes.md @@ -1,25 +1,43 @@ --- title: "Xero scopes by use case" -description: "Detailed guidance on access scopes required for the Xero partnership certification" +description: "Detailed guidance on the new granular access scopes required for the Xero partnership certification" --- -[Checkpoint 7: Scopes](https://developer.xero.com/documentation/xero-app-store/app-partner-guides/certification-checkpoints/#required-for-all-integrations), part of the Xero App Partner certification program, requires that apps have the minimal access to data as required by their use case. +[Checkpoint 5: Scopes](https://developer.xero.com/documentation/xero-app-store/app-partner-guides/certification-checkpoints/#required-for-all-integrations), 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 scope regardless of the use case: +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_access` - `accounting.settings` -| **Xero Partnership Type** | **Codat Use Case** | **Suggested Xero Scopes** | -| --------------------------------------------- | ----------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Financial Services - Bank Feeds | Reconciling bank transactions | `bankfeeds` | -| Financial Services - Lending | Lending - Loan qualification | `accounting.reports.read`
`accounting.transactions`
`accounting.contacts`
`accounting.attachments`
`accounting.reports.bankstatement.read` | -| Financial Services - Lending | Lending - Invoice finance | `accounting.reports.read`
`accounting.transactions`
`accounting.contacts`
`accounting.attachments`
`accounting.reports.bankstatement.read` | -| App Store and Financial Services - Bank Feeds | Managing expenses | `accounting.transactions`
`accounting.contacts`
`accounting.attachments`
`bankfeeds` | -| App Store | Dashboarding | Read-only configuration required. Please work with your implementation specialist to configure scopes. | -| App Store | Automating payables | `accounting.transactions`
`accounting.contacts`
`accounting.attachments` | -| App Store | Automating receivables | `accounting.transactions`
`accounting.contacts`
`accounting.attachments` | -| App Store | Integrating commerce data | `accounting.journals.read`
`accounting.transactions`
`accounting.contacts` | -| App Store | Managing payroll | `accounting.journals.read`
`accounting.transactions` | +## 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 connection requires fresh, explicit consent, and you'll need customers to reauthenticate with the granular apps. + +For full details, see Xero's [Granular Scopes FAQs](https://developer.xero.com/faq/granular-scopes) and the announcement post, [Upcoming changes to Xero accounting API scopes](https://devblog.xero.com/upcoming-changes-to-xero-accounting-api-scopes-705c5a9621a0). + +## Scopes by Codat use case + +| Xero Partnership Type | Codat Use Case | Current (broad) Xero Scopes | New granular Xero scopes | +| --------------------------------------------- | ----------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Financial Services - Bank Feeds | Reconciling bank transactions | `bankfeeds` | `bankfeeds` | +| Financial Services - Lending | Lending - Loan qualification | `accounting.reports.read`
`accounting.transactions`
`accounting.contacts`
`accounting.attachments`
`accounting.reports.bankstatement.read` | `accounting.invoices`
`accounting.payments`
`accounting.banktransactions`
`accounting.reports.balancesheets.read`
`accounting.reports.profitandloss.read`
`accounting.contacts`
`accounting.attachments`
`accounting.reports.banksummary.read` | +| Financial Services - Lending | Lending - Invoice finance | `accounting.reports.read`
`accounting.transactions`
`accounting.contacts`
`accounting.attachments`
`accounting.reports.bankstatement.read` | `accounting.invoices`
`accounting.payments`
`accounting.banktransactions`
`accounting.contacts`
`accounting.attachments`
`accounting.reports.balancesheets.read` | +| App Store and Financial Services - Bank Feeds | Managing expenses | `accounting.transactions`
`accounting.contacts`
`accounting.attachments`
`bankfeeds` | `accounting.banktransactions`
`accounting.contacts`
`accounting.attachments`
`bankfeeds` | +| 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.transactions`
`accounting.contacts`
`accounting.attachments` | `accounting.invoices`
`accounting.payments`
`accounting.banktransactions`
`accounting.contacts`
`accounting.attachments` | +| App Store | Automating receivables | `accounting.transactions`
`accounting.contacts`
`accounting.attachments` | `accounting.invoices`
`accounting.payments`
`accounting.contacts`
`accounting.attachments` | +| App Store | Integrating commerce data | `accounting.journals.read`
`accounting.transactions`
`accounting.contacts` | `accounting.invoices`
`accounting.payments`
`accounting.banktransactions`
`accounting.journals.read` _(needs Advanced tier)_
`accounting.contacts` | +| App Store | Managing payroll | `accounting.journals.read`
`accounting.transactions` | `accounting.manualjournals`
`accounting.journals.read` _(needs Advanced tier)_ | +| App Store and Financial Services | Spend Insights | `accounting.contacts`
`accounting.attachments`
`accounting.transactions` | `accounting.invoices`
`accounting.payments`
`accounting.banktransactions`
`accounting.contacts`
`accounting.attachments` | +| App Store and Financial Services | FX Insights | | `accounting.invoices`
`accounting.payments`
`accounting.banktransactions`
`accounting.contacts`
`accounting.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.