- Home
- Apps
- SaaS Tools
- Pago por Redsys / Bizum
Illustrative previewA made-to-order Odoo payment acquirer that adds Spanish Redsys card and Bizum mobile payment flows to your checkout and Sales/Invoicing.
ECOSIRE scopes, builds, installs, and supports it — it is not an off-the-shelf download.
What is Pago por Redsys / Bizum?
A made-to-order Odoo payment acquirer that adds Spanish Redsys card and Bizum mobile payment flows to your checkout and Sales/Invoicing. ECOSIRE scopes, builds, installs, and supports it — it is not an off-the-shelf download. 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
Spanish merchants running Odoo hit a wall the moment they need to take card and mobile payments through the domestic banking network that their acquiring bank actually uses. Odoo core ships generic international acquirers, but it has no native support for the redirect-and-notification protocol used by Spanish bank gateways, and none at all for the instant account-to-account mobile scheme that Spanish shoppers now expect at checkout. The result is either lost conversions, manual reconciliation of bank statements against Odoo orders, or an expensive detour through a third-party processor that charges more and hides the transaction detail your finance team needs.
ECOSIRE builds a dedicated payment provider module that plugs into Odoo's standard acquirer framework so both flows behave like any first-class payment method. On the technical side we implement a payment.provider record (a model inheriting payment.provider in models/, declared in __manifest__.py with depends on payment and account) plus a payment.transaction subtype that builds the signed redirect form, computes the request signature with your merchant secret, and handles the asynchronous server-to-server notification callback. The controller route validates the returned signature before it ever touches a transaction state, so a spoofed or replayed callback cannot mark an order paid. Card and the instant mobile scheme are exposed as two selectable methods on the same provider, each with its own code, terminal number, and currency handling. QWeb templates render the checkout button and the redirect form; ir.model.access.csv and record rules keep credentials and transaction logs scoped to the right users, and configuration lives on the provider form in test/enabled/disabled states exactly like a native acquirer.
Because it uses the real acquirer plumbing, everything downstream just works: successful payments confirm the sales order, post to the correct journal in Invoicing, and reconcile automatically; refunds are initiated from Odoo and pushed to the gateway; and every request/response pair is logged for audit. We wire the eCommerce checkout, the customer portal "pay now" links on invoices, and — where you need it — the point-of-sale or subscription renewal path. Configuration values (merchant code, terminal, secret key, environment URLs) are stored per company so a multi-company or multi-brand group can route each entity to its own bank contract. The build targets your exact Odoo version (17.0, 18.0, or 19.0) and respects Community vs Enterprise differences in the accounting and POS layers.
Delivery is build-to-order. After a short scoping call we confirm the flows you need (eCommerce, portal invoices, POS, subscriptions), your bank's specific gateway variant, currencies, and reconciliation rules, then send a fixed quotation and a written scope. You get the work on a staging clone first for UAT against your bank's test terminal, with a rollback plan, before we install on production and hand over the git repository. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); additional companies or bank contracts, POS and subscription integration, multi-currency handling, and migrating historical transaction data increase the quoted scope.
What you get
- Installable source code of your version of the payment acquirer module, targeted to your exact Odoo 17.0/18.0/19.0 edition
- Installation and configuration on your environment, including merchant code, terminal, secret key, and endpoint setup
- Technical documentation: module architecture, models, signature logic, callback route, and configuration reference
- End-user guide plus a live training session for finance and store-operations staff
- UAT on a staging clone against your bank's test terminal, with a documented rollback plan before production install
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history and version tags
- Reconciliation and refund walkthrough covering journal mapping and dispute-audit logs
Who this is for
Spanish eCommerce operators on Odoo
Online stores whose acquiring bank uses the domestic gateway and whose shoppers expect the instant mobile payment option at checkout. They need both flows native in the Odoo website checkout so conversions and reconciliation stay clean.
Finance and accounting teams
Controllers who are tired of manually matching bank settlements to Odoo orders. They want successful payments to auto-confirm, post to the correct journal, and reconcile, with a full transaction log for every dispute or audit.
Multi-company and multi-brand groups
Organizations running several legal entities or brands in one Odoo database, each with its own bank contract. They need per-company merchant credentials and terminal routing on the same provider without cross-posting.
Odoo integration partners and internal IT
Technical teams that could build it themselves but want a maintainable, version-targeted module with clean source, documentation, and a supported handover instead of an unowned in-house script.
How Pago por Redsys / Bizum Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Spanish domestic gateway + instant mobile scheme | Both built as native acquirer methods | Possible but you build both from scratch | May cover one flow, mobile often missing | Not supported at all |
| Signature verification on callback | Recomputed and enforced before state change | Depends on your developer's rigor | Varies; often opaque | N/A — no gateway |
| Accounting reconciliation | Auto-confirm, post, and reconcile | You wire the journal logic yourself | Usually reconciles, mapping fixed | Manual bank-statement matching |
| Odoo version fit (17/18/19) | Built to your exact version | Whatever you target and maintain | Only versions the vendor supports | Ships with core, no gateway |
| Multi-company / per-bank routing | Per-company credentials on one provider | Build it if you have time | Rarely per-company aware | Not applicable |
| Source code ownership | Full git repo handover | You own it (and all the upkeep) | Licensed, often obfuscated | Core only |
| Support and accountability | Scoped support window + optional retainer | Rests entirely on your team | Ticket queue, variable SLA | Community forums |
| Delivery model | Scoped, fixed quote, staged UAT + rollback | Open-ended internal project | Instant download, self-integrated | Included but no acquirer |
Frequently Asked Questions about Pago por Redsys / Bizum
Is this an existing app I can download and install right now?
No. This is a build-to-order module. ECOSIRE builds it against your exact Odoo version, your bank's specific gateway variant, and the flows you need, then installs and supports it. You are commissioning a productized service, not buying an instant download.
How long does delivery take?
Typical delivery is one working week from confirmed scope. The timeline starts once we've agreed the flows (eCommerce, portal, POS, subscriptions), your gateway variant, and reconciliation rules in the scoping call and you've approved the fixed quotation. Larger scopes (multi-company, POS, data migration) sit at the longer end.
How does pricing and scoping work?
Pricing starts from $999 as an indicative single-company base-scope figure. After a short scoping call we send a fixed written quotation for your actual requirements. Drivers such as additional companies or bank contracts, POS and subscription integration, multi-currency handling, and historical data migration increase the quoted scope.
What support and updates are included?
Every build includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full git repository, your team can maintain it independently, or you can retain ECOSIRE for version upgrades (for example moving from Odoo 17 to 18 or 19) and enhancements under a separate agreement.
Will payments reconcile automatically in Odoo Accounting?
Yes. Because the module uses Odoo's native acquirer framework, a successful payment confirms the sales order, posts to the journal you nominate, and reconciles through the standard payment and invoicing flow. Refunds are initiated from Odoo and pushed to the gateway, and every transaction is logged for audit.
Does it work with Odoo Community or only Enterprise?
Both. The core payment provider, signed redirect, and callback validation work on Community and Enterprise. Some downstream touchpoints (such as certain POS or subscription paths) differ between editions, so we confirm your edition during scoping and target the build accordingly.
How do you keep the payment callback secure?
The controller route recomputes and verifies the merchant signature on every notification before it changes any transaction state, so a forged or replayed callback cannot mark an order as paid. Credentials and transaction logs are scoped with `ir.model.access.csv` and record rules, and secrets are stored per company on the provider form.
Related Modules

Opn (Omise) Payment Gateway for Odoo
A build-to-order Odoo payment provider that connects your checkout to Opn Payments (formerly Omise) for Thai and Southeast Asian cards, PromptPay QR, internet banking, and the TrueMoney wallet. ECOSIRE builds, installs, and supports it for Odoo 17.0, 18.0, and 19.0.

Order Line Sequences & Line Numbers for Odoo
A build-to-order Odoo module that adds stable, human-readable sequence numbers to sales, purchase and delivery order lines — on screen and in printed QWeb documents. ECOSIRE scopes, builds, installs and supports it for your specific workflow.

Pakistan Payroll (EOBI, PESSI, WHT)
Pakistan-localized Odoo payroll: EOBI, PESSI/SESSI, FBR tax slabs, gratuity/PF and bank salary files — built, installed and supported by ECOSIRE.

Partner Statement Report
A build-to-order Odoo module that generates polished customer and vendor account statements — open balances, aging, and full transaction history — as branded QWeb PDFs you can email or batch-send. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19.
Pago por Redsys / Bizum
A made-to-order Odoo payment acquirer that adds Spanish Redsys card and Bizum mobile payment flows to your checkout and Sales/Invoicing. ECOSIRE scopes, builds, installs, and supports it — it is not an off-the-shelf download.
- Dedicated `payment.provider` record integrated into Odoo's native acquirer framework, appearing alongside core acquirers with test/enabled/disabled states
- `payment.transaction` subclass that builds the signed redirect form and manages the full transaction lifecycle (draft, pending, authorized, done, cancel, error)
- Two selectable methods on one provider: domestic card redirect and the instant account-to-account mobile scheme, each with its own code and terminal
- Signature computation and verification on both the outbound request and the asynchronous notification callback, rejecting unsigned or tampered responses