Stripe and Odoo, balanced on their own.
Every Stripe payment, fee and payout appears in the Odoo journal with no middleman and no typing. The payment comes in at what the customer paid and the fee gets its own line, so everything matches to the cent.
Odoo 19 Enterprise · Official Stripe API · Read-only key
Stripe journal
Sync Stripe- 10/17Payment order S00412ch_3Q8kA2…€120.00
- 10/17COMISION STRIPEch_3Q8kA2…-€2.05
- 10/17Payment order S00413ch_3Q8kB7…€59.90
- 10/17COMISION STRIPEch_3Q8kB7…-€1.15
- 10/18Payout to bankpo_1Q8mZ4…-€176.70
Sample data.
Stripe payments reach Odoo out of balance.
To bring Stripe transactions into Odoo, many companies rely on a paid bank aggregator. It half works, and the difference left by every fee ends up being reconciled by hand.
With a bank aggregator
- The sync drops and someone has to check what is missing.
- Consent has to be renewed every few months.
- Only the net amount arrives: every payment is out of balance with its order.
- Fees are calculated and booked by hand, on top of a subscription fee.
With ECOP Stripe Bank Sync
Odoo reads transactions directly from Stripe and puts them in the bank statement, ready to reconcile: the gross payment and the fee on its own line.
- No aggregator, no expiring consent
- Payments that match the order to the cent
- Fees booked with no effort
In production since July 2026 at a company running its online store on Odoo, where it replaced the bank aggregator.
Set it up once and it works every day.
- 1
Read-only key
Create a restricted key in Stripe that can only read, and paste it in the Accounting settings.
- 2
Journal and start date
Select the Stripe journal and the date to import from. It joins the existing history without repeating transactions.
- 3
Simulation
Before creating anything, simulation mode shows which lines would go into the statement.
- 4
Daily sync
New transactions appear on their own every day. The “Sync Stripe” button brings them in on demand.
- 5
Reconciliation in Odoo
Payments match their orders and fees go to the Stripe vendor through Odoo’s reconciliation rules.
The Stripe key is read-only: the module can read transactions, but it can never move money or change anything in Stripe.
Everything that happens in Stripe, on its own line.
Direct connection to Stripe
No bank aggregator in between: Odoo talks to Stripe through its official API.
Automatic daily sync
New transactions appear on their own in the Stripe journal every day.
“Sync Stripe” button
On the journal card of the Accounting dashboard, to bring transactions in on demand. It tells you how many it imported.
Gross payment, separate fee
Each payment comes in at what the customer paid, and the Stripe fee on a separate “COMISION STRIPE” line.
Fees where they belong
Fee lines are sent to the Stripe vendor, where they are matched each month against its invoice.
Payouts to the bank
Transfers from Stripe to the bank account appear with their reference, ready to match with the bank entry.
Simulation mode
Shows which lines it would create before creating any. Ideal for go-live.
No duplicates, no gaps
Run it as often as you like without repeating lines, and no transaction is ever silently left out.
Clean start
Imports from the date you set and joins the previous history without repeating transactions.
For companies on Odoo 19 Enterprise that get paid through Stripe.
| Profile | Why it matters |
|---|---|
| Online stores on Odoo with Stripe payments | Many small payments, each with its own fee: this is where most manual work is saved. |
| Companies that get paid by Stripe payment link or invoice | Payments that match the invoice on their own. |
| Finance and accounting managers | Less time reconciling and month-end closes with no Stripe differences. |
| Accounting firms managing clients on Odoo | Complete, reliable Stripe statements without asking the client for anything. |
| Odoo partners and integrators | A ready-made piece to offer clients who use Stripe. |
| Bank aggregator users facing drops or expirations | A direct replacement for Stripe, with no aggregator. |
Odoo 19 Enterprise and a Stripe account.
Installation is one more Odoo module, with no new external dependencies. Go-live includes the reconciliation model that sends fees to the Stripe vendor.
It does not work on Odoo Community or on other Odoo versions.
- Odoo version
- 19 Enterprise.
- Odoo modules
- Accounting and Bank Synchronization.
- Stripe
- A read-only restricted key: balance transactions, balance, payouts and charges.
- Setup
- Paste the key in the Accounting settings, select the Stripe journal and choose the start date.
- Reconciliation
- A reconciliation model for the fees, configured during go-live.
- External dependencies
- No new ones.
Frequently asked questions
Does it reconcile everything on its own?
No. It creates the statement lines and Odoo reconciles them with its rules. Stripe payouts are matched by hand against the bank entry.
Can it move money in my Stripe account?
No. It uses a read-only key: it can read transactions, but it can never move money or change anything in Stripe.
Is it real time?
No. It syncs once a day, or immediately when you press the “Sync Stripe” button.
Does it book the Stripe invoice?
No. The fee expense and VAT are on Stripe’s monthly invoice, which is recorded like any vendor bill. The fee lines are matched against it.
Does it fix past differences?
No. It imports from the date you set; anything already wrong in the books stays as it was.
Does it replace Ponto or Salt Edge?
For Stripe, yes: it connects directly to Stripe, with no aggregator and no consent to renew. It does not connect other banks.
Does it work with PayPal, Redsys or other gateways?
No. Stripe only.
Does it work on Odoo Community?
No. Odoo 19 Enterprise only.
See your Stripe payments in Odoo before installing anything.
Ask us for a demo with your own Stripe account in simulation mode: you will see what would go into your books without touching anything.
