Stripe fees as expenses and a fuller payout breakdown
Connected Stripe accounts can record their monthly Stripe fees as an expense, payouts now break down every movement they settle, and expenses that self-assess their VAT no longer count it in the total. Nine operations updated, three new account fields, three new payout fields and a new connection method.
18 October 2026 — Stripe takes its fees out of your balance before paying you, so they never reach you as an invoice. A connected account can now ask us to record them as an expense every month, and payouts now say exactly what they are made of. The Stripe fees as expenses guide explains the whole flow, and Payouts & bank reconciliation covers the new breakdown.
Nothing here is a new operation: these are fields and values added to operations that already exist. Two of them change what an existing number means, so they come first.
Two values that change
composition.fee_totalin payouts — it now adds up every fee the payout settles: the fees of the charges, the fees Stripe charged on their own (monthly or currency conversion fees) and the fees that belong to refunds. Before, it only counted the fees of the charges, so a payout with standalone fees or refunds now shows a higherfee_total.totalin expenses that self-assess their VAT — whenoperation_classisintracomunitariaorisp, the supplier does not charge the VAT, so it is no longer part of what you pay:total = subtotal - total_retention + total_surcharge. The self-assessed VAT is still published intotal_vatandtaxes_total, and it is still declared in the Modelo 303. For any other operation class nothing changes.
Updated operations
- Connected accounts —
List connected Stripe accounts
and Retrieve a connected Stripe account
return three new fields:
fee_expenses_enabled(falseby default),fee_expenses_tax_treatment(reverse_charge_eu,exemptornull) andfee_expenses_since(the first month to record, asYYYY-MM, ornull). Update a connected Stripe account accepts the same three. Turning the expense off keeps the treatment, the month and the expenses already created. The MCP toolupdate_stripe_connected_accountand the tools that read connected accounts carry the same fields. connection_method = platform— the three connected-account operations above can now returnplatform, next toaccount_linksandstripe_app. It is the Stripe account of the platform itself, which only the company that issues Factuarea's own invoices has. It is read-only, it has no stored credential and it does not acceptsubscription_autoinvoicing_enabled.- Payouts —
List Stripe payouts and
Retrieve a Stripe payout
return three new fields inside
composition, all as 2-decimal strings in the payout currency:refunds_total(negative),standalone_fee_total(already included infee_total) andother_total(adjustments, disputes and similar, with sign). With them,amount_gross - fee_total + refunds_total + other_totalequalsamount_net. A payout ingested before this change reads"0.00"in the three. - Expenses —
Create an expense,
Update an expense,
Retrieve an expense
and List all expenses
return the new
totaldescribed above forintracomunitariaandispexpenses.
New errors when updating a connected account
Update a connected Stripe account
(scope stripe_autoinvoicing:write) can now answer:
| Status | Code | When |
|---|---|---|
400 | parameter_missing | You turn the expense on without a tax treatment or a first month, in the same request or already stored. param is fee_expenses_tax_treatment or fee_expenses_since. |
422 | parameter_invalid_value | fee_expenses_since is not a YYYY-MM month, is earlier than 2020-01 or is later than the current month, or the treatment is not reverse_charge_eu or exempt. |
422 | parameter_invalid_value with subcode platform_account_subscriptions_owned_by_billing | You turn on subscription_autoinvoicing_enabled on the platform account, whose subscriptions Factuarea invoices itself. |
403 | feature_not_available_in_plan | You turn the expense on and the company does not have the Purchases module. param is fee_expenses_enabled. |
The MCP tool answers with the same code, param and subcode.
The tax treatment of Stripe's fees depends on each business, so there is no default and we do not choose it for you. We recommend confirming it with your tax advisor before turning the expense on.
The additions are optional: an integration that does not send or read them keeps working as before, apart from the two values above.