- Home
- Apps
- SaaS Tools
- Worldline / Saferpay Gateway for Odoo
Illustrative previewA build-to-order Odoo payment provider that connects your webshop and sales checkout to Worldline/Saferpay for
European acquiring — hosted redirect or embedded iframe, cards plus local methods, full 3DS2/SCA, and webhook-driven reconciliation.
ECOSIRE builds, installs, and supports it after a scoping call.
What is Worldline / Saferpay Gateway for Odoo?
A build-to-order Odoo payment provider that connects your webshop and sales checkout to Worldline/Saferpay for European acquiring — hosted redirect or embedded iframe, cards plus local methods, full 3DS2/SCA, and webhook-driven reconciliation. ECOSIRE builds, installs, and supports it after a scoping call. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
EU and Swiss enterprise merchants who acquire through Worldline (Saferpay) hit a wall with Odoo out of the box: there is no core payment provider for Saferpay, so eCommerce and sales-order online payment either fall back to a generic processor or get handled off-platform. The result is broken reconciliation, manual matching of settlements against account.move, no native support for the local methods your customers actually reach for — TWINT, iDEAL, Bancontact, Klarna — and a checkout that cannot satisfy PSD2 SCA cleanly. Odoo's generic providers were never written against Saferpay's Payment Page / Transaction JSON API, its 3DS2 liability-shift flow, or its capture/refund semantics.
ECOSIRE builds a dedicated Odoo payment provider that plugs into the standard payment framework so it behaves like a first-class acquirer everywhere Odoo already renders a pay button — website checkout, the customer portal invoice, and sales-order payment links. It ships as a proper module: a __manifest__.py declaring the payment dependency, a payment.provider record extended with a saferpay code, encrypted API-credential fields, and a payment.transaction subclass that implements the Saferpay PaymentPage/Initialize → PaymentPage/Assert lifecycle for the hosted redirect flow, or the Transaction/Initialize + secure-fields flow for the embedded iframe. We wire the return and webhook controllers, verify the notification signature server-side, and reconcile each transaction back to the originating sale.order or account.move.
Technically, the module manages the full money lifecycle rather than just authorization. capture, void, and refund are implemented against Saferpay's Transaction/Capture, Transaction/Cancel, and Transaction/Refund endpoints and surfaced as Odoo actions on the transaction, so your finance team can capture or reverse without leaving the ERP. 3DS2/SCA is handled through Saferpay's Secure Card Data and challenge flow, with the liability-shift result stored on the transaction for audit. A dedicated webhook controller ingests asynchronous status changes (authorized, captured, failed, chargeback) idempotently — keyed on the Saferpay transaction reference so retries never double-post — and moves the Odoo transaction and its linked document through the correct states. Access is locked down with ir.model.access.csv plus record rules so credential fields and the raw API log are visible only to payment administrators, and everything is scoped per company for multi-entity groups.
Because every acquirer contract, method mix, and reconciliation policy differs, this is build-to-order rather than a one-click install. After a short scoping call we confirm your exact method set (cards, TWINT, iDEAL, Bancontact, Klarna, and any others in your Saferpay terminal), your capture policy (auto vs. manual), Community-vs-Enterprise accounting depth, and your target Odoo version (17.0, 18.0, or 19.0). We then build against your sandbox credentials, run UAT on a staging database, and hand over installable source, a git repository, technical and user documentation, and a training session. Typical delivery is one working week from confirmed scope. No instant download — you get a module built and tested for your environment, plus a post-go-live support window.
What you get
- Installable module source code built and tested for your exact Odoo version (17.0 / 18.0 / 19.0), Community or Enterprise
- Installation and configuration on your environment, including Saferpay terminal credentials, method mix, and capture policy wired to your setup
- Technical documentation: model/field reference, controller and webhook endpoints, credential and environment configuration, and reconciliation logic
- End-user guide plus a live training session for your finance and eCommerce teams (capture, refund, and troubleshooting)
- UAT on a staging database against Saferpay sandbox terminals, with a documented rollback plan before go-live
- Post-go-live support window for defect fixes and configuration adjustments
- Private git repository handover with full commit history so your team owns and can extend the code
- Go-live checklist covering webhook registration, production-terminal switchover, and settlement reconciliation verification
Who this is for
Swiss enterprise eCommerce merchant on Saferpay
Runs an Odoo webshop and already acquires through Worldline/Saferpay. Needs TWINT and card checkout that satisfies SCA, with settlements that reconcile automatically against sales orders instead of manual export-and-match.
EU multi-entity finance controller
Oversees several legal entities in one Odoo group, each with its own Saferpay terminal. Needs per-company credentials, capture and refund handled inside the ERP, and an audit trail on every 3DS2 liability-shift outcome.
Head of digital payments / PSP owner
Owns the acquirer relationship and the method mix (iDEAL, Bancontact, Klarna, cards). Needs a provider that maps cleanly to the Saferpay Transaction API, with idempotent webhooks and signature verification so payment state is never wrong.
Odoo implementation partner or internal ERP lead
Responsible for a clean, maintainable integration on 17.0/18.0/19.0. Wants a proper `payment` framework extension with source, docs, and a git handover — not a black-box connector they cannot support.
How Worldline / Saferpay Gateway for Odoo Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Saferpay/Worldline provider in Odoo | Purpose-built `payment.provider` for the Saferpay API | Depends entirely on your in-house build | Often a thin card-only wrapper, if it exists | No Saferpay provider in core `payment` |
| Local methods (TWINT, iDEAL, Bancontact, Klarna) | Wired to your Saferpay terminal, selectable per provider | Each method built and maintained by you | Usually cards only; local methods rare | Not available |
| 3DS2 / SCA handling | Full challenge flow, liability-shift stored on the transaction | You implement and test the SCA flow | Varies; often partial or undocumented | Only via generic providers, not Saferpay-aware |
| Capture / void / refund inside Odoo | Native actions mapped to Saferpay Transaction API | Built to your spec, if budgeted | Frequently missing or authorize-only | Not applicable — no provider |
| Webhook reconciliation | Idempotent, signature-verified, reconciled to SO/invoice | You design idempotency and matching | Basic callback, limited reconciliation | None for Saferpay |
| Multi-company / per-terminal credentials | Per-company encrypted credentials with record rules | Extra scope you must plan for | Rarely multi-company aware | Not applicable |
| Source, docs & git handover | Full source, technical + user docs, git repo | You own it but carry all the build cost | Usually closed/obfuscated source | N/A |
| Support & maintenance | Post-go-live support window + scoped upgrades | Entirely on your internal team | Generic vendor support, slow for edge cases | Community forums only |
Frequently Asked Questions about Worldline / Saferpay Gateway
Is this an existing app I can download and install right now?
No. This is a build-to-order module. Saferpay contracts, method mixes, and reconciliation policies differ per merchant, so ECOSIRE builds and tests the provider against your sandbox credentials and target Odoo version before handing over installable source. You are not buying a generic download — you are getting a module built for your environment.
How long does delivery take?
Typical delivery is one working week from confirmed scope. The scoping call fixes your method set, capture policy, Odoo version, and Community-vs-Enterprise path; from there we build against your Saferpay sandbox, run UAT on a staging database, and schedule go-live. Complex multi-entity or unusual method requirements can extend the timeline, which we flag before you commit.
Which Odoo versions and editions do you support?
Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. The core `payment` framework exists in both editions, so the provider works on Community; Enterprise-only accounting features (such as advanced reconciliation widgets) are handled explicitly where present. We confirm your exact version and edition during scoping.
How does it handle 3DS2 / PSD2 SCA?
Authentication runs through Saferpay's 3DS2 challenge flow. The module stores the liability-shift result on the `payment.transaction` so you have an audit trail for disputes, and the Odoo transaction only advances to a paid/authorized state after the authentication and authorization result is verified server-side.
What about refunds, captures, and reconciliation?
Capture, void, and refund are Odoo actions mapping to Saferpay's `Transaction/Capture`, `Transaction/Cancel`, and `Transaction/Refund` endpoints, so finance operates inside the ERP. Each transaction reconciles back to its originating sales order or invoice, and partial refunds post against the correct move lines. Asynchronous status changes arrive via an idempotent, signature-verified webhook.
What do I get for support and updates after go-live?
Every build includes a post-go-live support window for defect fixes and configuration adjustments, plus the full git repository so your team owns the code. Version upgrades (for example moving from 18.0 to 19.0) or new payment methods are scoped as follow-on work; because you hold the source, you are never locked to us.
Can each company in our group use its own Saferpay terminal?
Yes. The provider is multi-company scoped, so each legal entity uses its own Customer ID, Terminal ID, and API key. Credentials are encrypted and restricted to payment administrators via `ir.model.access.csv` and record rules, and settlements reconcile within each company's accounting.
Related Modules

WhatsApp + SMS OTP & Transactional Notifications
Build-to-order Odoo module sending OTPs and transactional alerts over WhatsApp + SMS for orders, deliveries and logins.

Zambia Smart Invoice Compliance for Odoo
A build-to-order Odoo module that fiscalises your customer invoices and credit notes through the ZRA Smart Invoice device/API flow, directly from `account.move`. ECOSIRE scopes, builds, installs and supports it for your Odoo 17.0, 18.0 or 19.0 database.

Zapier / Make Integration Bridge for Odoo
Connect Odoo to 6,000+ apps via Zapier and Make with triggers and actions for any model — built-to-order, no custom code for your team.
Worldline / Saferpay Gateway
A build-to-order Odoo payment provider that connects your webshop and sales checkout to Worldline/Saferpay for European acquiring — hosted redirect or embedded iframe, cards plus local methods, full 3DS2/SCA, and webhook-driven reconciliation. ECOSIRE builds, installs, and supports it after a scoping call.
- Native `payment.provider` extension with a dedicated `saferpay` code, so Worldline appears as a first-class acquirer in website checkout, portal, and sales-order payment links
- Hosted Payment Page flow implemented against Saferpay `PaymentPage/Initialize` and `PaymentPage/Assert`, with server-side result verification before any Odoo state change
- Embedded iframe / secure-fields option using `Transaction/Initialize` for merchants who need on-site card entry without leaving the Odoo checkout
- Local payment methods wired through the Saferpay terminal: Cards, TWINT, iDEAL, Bancontact, and Klarna, selectable per `payment.provider`
