NewStripe: manual 0 % rates and the buyer's country on paid invoices
BeeL
Get startedMulti-NIFVeriFactuRulesStripeAPI referenceChangelog

More than one NIF on the API plan: a 403 that routes to sales

On the API plan with no agreed price, a second NIF, or going Live with several, answers 403 CONTACT_SALES_REQUIRED with a link to sales.


ChangelogBreaking

The API plan covers one NIF self-service; more than one is priced per NIF with sales. Until that price is agreed, the API says so with a new code, 403 CONTACT_SALES_REQUIRED. Its error.details carries reason — which rule applied — and salesUrl, where the account holder talks to sales. Nothing is created or switched on, and no checkout is opened. Once sales sets up the price, the same request goes through.

It does not apply to accounts with an agreed price, to managed accounts or the agencies that provision them, or to the Stripe plan and older plans.

What breaks

  • Adding a second NIF (POST /v1/accounts/{account_id}/companies, in TEST or PROD) to an account with exactly one active company used to answer 201; it now answers 403 CONTACT_SALES_REQUIRED with reason: SECOND_NIF.
  • Switching a NIF on in Live (POST /v1/companies/{company_id}/activations, or creating it in PROD) when the account has two or more active companies used to answer 201 or a 402 with a checkout; it now answers 403 CONTACT_SALES_REQUIRED with reason: LIVE_WITH_MULTIPLE_NIFS, before any 402.
  • LiveActivationVerdict gains CONTACT_SALES. A client that validates the enum strictly must accept the new value.

Does this affect you?

  • If your account is on the API plan and you create companies or switch them on in Live through the API, handle CONTACT_SALES_REQUIRED by showing error.details.salesUrl instead of treating it as a failure.
  • If you validate LiveActivationVerdict against a closed list, add CONTACT_SALES.

What else changed

  • 402 PAYMENT_REQUIRED means unpaid: payment retries are exhausted. A failed charge that is still being retried no longer blocks Live.

Endpoints

  • POST/v1/accounts/{account_id}/companies403 CONTACT_SALES_REQUIRED (SECOND_NIF, LIVE_WITH_MULTIPLE_NIFS)
  • POST/v1/companies/{company_id}/activations403 CONTACT_SALES_REQUIRED (LIVE_WITH_MULTIPLE_NIFS)

Where to go next