A build-to-order Odoo payment provider that accepts Mexican cards, OXXO cash vouchers, and SPEI bank transfers through Conekta, with webhook reconciliation and MXN localization. ECOSIRE builds, installs, and supports it after a scoping call — it is not an instant apps.odoo.com download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $249.00 USD; request a quote for a scoped proposal.
示意预览A build-to-order Odoo payment provider that accepts Mexican cards,
OXXO cash vouchers, and SPEI bank transfers through Conekta, with webhook reconciliation and MXN localization. ECOSIRE builds, installs, and supports it after a scoping call — it is not an instant apps.odoo.com download.
无需自行搭建——由 ECOSIRE 构建、安装并提供支持的可用应用。
以一次性构建价格开始。我们在启动时与您共同确定范围。
ECOSIRE 在您的 Odoo 上构建、配置并安装。
约 2–4 周内上线,并提供上线后的支持期。
Mexican merchants running Odoo hit a wall the moment checkout meets local reality: a large share of Mexican shoppers pay with OXXO cash or SPEI bank transfer, not international cards, and Odoo core ships no Conekta provider. Teams end up bolting a hosted Conekta link onto the side, then reconciling paid orders by hand in account.move because nothing tells Odoo when an OXXO voucher was actually settled hours or days after the order was placed. Native payment providers assume a synchronous card authorization; the asynchronous cash-and-transfer flow that dominates Mexican e-commerce simply has no home.
This build-to-order module adds Conekta as a first-class Odoo payment provider. We implement a payment.provider record extended for Conekta with its own credentials (public/private API keys, environment toggle) stored on the provider and never in code, plus a payment.transaction subclass that drives Conekta's Orders API. Card charges tokenize client-side and authorize inline; OXXO and SPEI create a pending charge and surface the voucher reference / CLABE back to the customer on the QWeb checkout confirmation. The provider registers payment methods (payment.method) for card, OXXO, and SPEI so Odoo's sale, website_sale, and invoicing flows treat them natively — no side channel.
The reconciliation core is a webhook controller (/payment/conekta/webhook) that validates Conekta's signature, maps order.paid, charge.paid, order.canceled and refund events to the matching payment.transaction via the stored provider reference, and moves the transaction and its sale.order / account.move to the correct state — so an OXXO payment that lands two days later posts and confirms itself with zero manual touch. Refunds are issued from the Odoo transaction (action_refund) straight to Conekta's refund endpoint, with partial-refund support and audit logging. MXN localization covers currency rounding, amount-in-cents conversion, and Meses Sin Intereses (MSI) installment configuration exposed as provider settings so eligible card BINs offer 3/6/9/12-month plans at checkout.
Security follows Odoo conventions throughout: access is governed by ir.model.access.csv plus record rules so only Billing/Accounting roles read raw provider credentials, the webhook endpoint is auth='public' but signature-gated, and all state changes are written server-side, never trusted from the browser. Everything is delivered as a clean installable module with a proper __manifest__.py declaring dependencies (payment, account, website_sale where relevant), pinned to your exact Odoo 17.0, 18.0, or 19.0 minor and Community/Enterprise edition.
Because this is build-to-order, nothing ships until we agree on scope. A short scoping call confirms your Odoo version and edition, which payment methods and MSI tiers you need, your Conekta account setup, and your reconciliation and refund rules. We then build against your requirements, test on a staging copy of your database, run UAT with your team, and deploy with a rollback plan. Typical delivery is 2–4 weeks from confirmed scope. You receive the full source and Git repository so you are never locked to us.
An online or omnichannel retailer already processing with Conekta who needs OXXO, SPEI, and card payments to reconcile automatically inside Odoo instead of being matched by hand in accounting.
Owns month-end close and cash reconciliation. Needs late-settling OXXO and SPEI payments to post to the correct `account.move` automatically, with refunds traceable and auditable from Odoo.
Runs the `website_sale` storefront and wants a native Mexican checkout with OXXO cash, SPEI, and Meses Sin Intereses offered on eligible cards to lift conversion, not a clunky hosted redirect.
Responsible for the deployment. Wants a clean module with a proper `__manifest__.py`, sane `ir.model.access.csv` security, staging UAT, and the source in Git so the business is never locked to a single vendor.
| 标准 | 伊科西尔 | 定制建造 | 竞争对手 | Odoo 原生 |
|---|---|---|---|---|
| Conekta cards + OXXO + SPEI | All three as native Odoo payment methods | Possible but you build and test each flow | Often card-only or partial coverage | No Conekta provider at all |
| Late OXXO/SPEI reconciliation | Signature-gated webhook auto-posts the move | You must design the async settlement logic | Varies; async handling often weak | Manual matching in accounting |
| Odoo version/edition fit | Pinned to your 17/18/19 + Community/Enterprise | Whatever you build it for | Generic build, may lag your minor | N/A — feature absent |
| Refunds | Full and partial from the transaction, logged | Build and audit the refund path yourself | Basic refund, partials not guaranteed | No provider to refund through |
| MSI installments | Configurable 3/6/9/12 for eligible BINs | Extra engineering to model tiers | Rarely configurable | Not available |
| Security of credentials | Provider record + ir.model.access + record rules | Depends on your discipline | Varies by vendor | N/A |
| Source ownership | Full source + Git repo handover | You own it but carry all the effort | Often obfuscated or license-locked | N/A |
| Support after launch | Post-go-live window + scoped upgrades | Your team maintains it | Ticket queue, variable SLA | Community forums only |
No. This is a build-to-order module. ECOSIRE builds it against your confirmed scope, Odoo version, and edition, then installs and supports it. There is no instant apps.odoo.com download.
Typical delivery is 2–4 weeks from confirmed scope. After the scoping call and requirements sign-off we build, test on a staging copy of your database, run UAT with your team, and then deploy with a rollback plan.
Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. We pin the module to your exact minor version and edition so it installs cleanly and upgrades predictably.
A signature-validated Conekta webhook maps the late settlement event to the pending `payment.transaction`, then auto-confirms the `sale.order` and posts the `account.move`. No one has to match late cash or transfer payments by hand.
Yes. Full and partial refunds are issued from the Odoo transaction to Conekta's refund endpoint with audit logging. MSI tiers (3/6/9/12 months) are configurable and offered to eligible card BINs at checkout.
Keys are stored on the `payment.provider` record and access-restricted via `ir.model.access.csv` and record rules — never hardcoded. Cards are tokenized client-side, so the raw PAN never reaches your Odoo server or database.
You get a post-go-live support window for defect fixes and configuration changes, plus the full Git repository so you own the code. Version upgrades and enhancements can be scoped as follow-on work.
A build-to-order Odoo payment provider that accepts Mexican cards, OXXO cash vouchers, and SPEI bank transfers through Conekta, with webhook reconciliation and MXN localization. ECOSIRE builds, installs, and supports it after a scoping call — it is not an instant apps.odoo.com download.