Factuarea APIDevelopers
Contract

Existing Stripe accounts and charge rules

Connect a Stripe account you already have, decide per account which charges are invoiced and which are not, and read the charges that were left out. Six new operations, three new fields on connected accounts and five new inbox reasons.

7 October 2026 — Stripe auto-invoicing now works with the Stripe account you already use, and each connected account can say which charges are invoiced and which are not. Read the Stripe auto-invoicing guide for the whole flow.

  • Connect an existing Stripe account — when you connect Stripe you can choose between an account you already have (you install the Factuarea Stripe App and authorise it, with no new account) and a new account, as before. Without a choice, the new-account flow applies. See Connect a Stripe account you already have.
  • One account, one company — a Stripe account can be active in one company at a time. Connecting one that is active in another company is rejected with 409 stripe_account_linked_elsewhere. See One account, one company.
  • Treatment rules per account — ordered rules that decide whether a charge is invoiced (with its own concept and VAT rate) or not invoiced, with a reason from a closed list (indemnity_not_subject, multipurpose_voucher, invoiced_elsewhere). The first rule that matches decides. See Charges that are not invoiced.
  • Non-invoiced charges — each charge left out by a rule is recorded and can be listed. Its refund creates no corrective invoice.
  • Concept of charges without Checkout — the single invoice line takes the concept of the rule, the description of the PaymentIntent, the default concept of the account (default_line_concept) or, last, the generic text. See Concept of charges without Checkout.
  • Invoices created in Stripe — invoices created by hand in Stripe and those that come from an accepted quote are invoiced from invoice.paid with their real lines, and each charge ends up on a single invoice whichever event arrives first. See Invoices created in Stripe.
  • Seven new inbox reasons — excluded_by_charge_rule, handled_by_stripe_invoice, stripe_authorization_required, stripe_app_uninstalled, refund_of_non_invoiced_charge, stripe_invoice_without_amount (an invoice created in Stripe with a zero or negative amount) and deauthorization_not_applicable (an uninstall of a connection the account does not use), all accepted by the discard_reason filter. See the reasons catalog.
  • Six new MCP tools — list_stripe_charge_rules, create_stripe_charge_rule, update_stripe_charge_rule, delete_stripe_charge_rule, reorder_stripe_charge_rules and list_stripe_non_invoiced_charges, with the same scopes as the operations below. None of them needs an idempotency_key.

Charge rules apply the treatment you configure. Factuarea does not decide whether a charge is subject to VAT, so confirm each rule with your tax advisor.

New operations

The scopes are the existing stripe_autoinvoicing:read and stripe_autoinvoicing:write; no scope is added.

OperationEndpointScope
List charge treatment rulesGET /v1/connected-accounts/{account}/charge-rulesstripe_autoinvoicing:read
Create a charge treatment rulePOST /v1/connected-accounts/{account}/charge-rulesstripe_autoinvoicing:write
Reorder the charge treatment rulesPUT /v1/connected-accounts/{account}/charge-rules/orderstripe_autoinvoicing:write
Update a charge treatment rulePUT /v1/connected-accounts/{account}/charge-rules/{rule}stripe_autoinvoicing:write
Delete a charge treatment ruleDELETE /v1/connected-accounts/{account}/charge-rules/{rule}stripe_autoinvoicing:write
List non-invoiced chargesGET /v1/connected-accounts/{account}/non-invoiced-chargesstripe_autoinvoicing:read

Four new error codes, all documented with their operation: charge_rule_not_found (404), charge_rule_invalid (422), charge_rule_limit_reached (422) and stripe_account_linked_elsewhere (409, when connecting an account from the app).

Updated operations

  • Connected accounts — List and Get a connected account return three new fields: connection_method (account_links or stripe_app), authorization_status (authorized, reauthorization_required or revoked) and default_line_concept (null if unset). Update a connected account accepts default_line_concept (1 to 255 characters; null clears it, and omitting it leaves it as it is). The MCP tools for connected accounts return the same fields.
  • Integration events — the discard_reason filter of List integration events accepts the seven new reasons, which also appear in Get an integration event.

The additions are optional: an integration that does not send or read them keeps working as before.

On this page

Need a hand?Contact support