- ホーム
- Apps
- SaaS Tools
- Nexi / Nets Payment Gateway for Odoo
イメージプレビューA build-to-order Odoo payment provider that connects your checkout to Nexi XPay and Nets Easy for Italian and
Nordic card acquiring, with 3DS2/SCA, local payment methods, and webhook-based reconciliation. ECOSIRE builds, installs, and supports it for Odoo 17.0/18.0/19.0.
Nexi / Nets Payment Gateway for Odooとは?
A build-to-order Odoo payment provider that connects your checkout to Nexi XPay and Nets Easy for Italian and Nordic card acquiring, with 3DS2/SCA, local payment methods, and webhook-based reconciliation. ECOSIRE builds, installs, and supports it for Odoo 17.0/18.0/19.0. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
主な機能
受注生産、すべておまかせ
自分での設定は不要 — ECOSIRE が構築・インストール・サポートする実働アプリです。
- 1
ご注文
一回限りの構築料金から始めます。キックオフで一緒に範囲を決めます。
- 2
構築とインストール
ECOSIRE がお客様の Odoo 上で構築・設定・インストールします。
- 3
本番稼働 + サポート
約1週間(営業日ベース)で稼働し、本番稼働後2週間のサポートが付きます。納品したコードの不具合は無償で修正します。
技術仕様
- Odoo互換性
- Odoo 17, Odoo 18, Odoo 19
- エディション
- Enterprise&Community
- ライセンス
- ライセンスの確認が必要です
- Python要件
- Python 3.10+
- データベース
- PostgreSQL 12+
この製品について
Italian and Nordic merchants running Odoo eCommerce, subscriptions, or portal invoice payment consistently hit the same wall: Odoo core ships Stripe, Adyen, PayPal, and a handful of others, but there is no native payment.provider for Nexi XPay or Nets Easy. That means the acquirer your bank actually settles with — the one giving you Italian domestic card rates or Nordic methods like Dankort, MobilePay redirection, or Vipps-adjacent flows — cannot take money on your Odoo checkout. Merchants end up bouncing customers to an off-platform hosted page with no reconciliation back into Odoo, or manually reconciling settlements against account.move by hand. Both leak revenue and both break the audit trail.
ECOSIRE builds a first-class Odoo payment provider that inherits payment.provider and payment.transaction and speaks natively to the Nexi XPay / Nets Easy hosted checkout APIs. The __manifest__.py declares a clean dependency on payment (and website_sale where eCommerce is in scope), registers the provider in payment_provider_data.xml, and adds provider-specific credential fields (merchant/terminal id, secret/API key, environment toggle) on the provider model with values encrypted at rest and gated by ir.model.access.csv plus record rules so only Payment Administrators can read them. At checkout the module creates a payment intent/order against the gateway, redirects the shopper to the hosted, PCI-scope-reducing payment page, and returns them to Odoo's controller. 3DS2 / SCA is handled by the acquirer's hosted flow so you stay out of card-data scope; the module simply carries the authentication result back. An inbound webhook controller (CSRF-exempt, signature-verified against the shared secret) reconciles the asynchronous notification: it looks up the payment.transaction by the gateway reference, verifies amount and currency, and transitions the transaction state (_set_done, _set_pending, _set_canceled, _set_error) idempotently so a retried webhook never double-posts. Confirmed transactions flow through Odoo's standard pipeline to confirm the sale order and post the invoice, and refunds are issued from the invoice/transaction using the provider's refund support so a credit note in Odoo triggers the real acquirer refund and writes back the state.
Everything is built to Odoo conventions so it survives upgrades and audits: compute fields use @api.depends, states use standard selection values, the gateway dialogue is logged for traceability, and admin-facing configuration lives in proper XML/OWL settings views rather than hardcoded config. We support Community and Enterprise — the provider works on Community website_sale, and where Enterprise-only flows (e.g. subscription tokenization) are in scope we build against them explicitly. The same provider is available for Odoo 17.0, 18.0, and 19.0, matched to your exact running version.
Because this is build-to-order, we start from your acquirer contract and settlement setup, not a generic template. After a short scoping call we confirm which product (Nexi XPay vs Nets Easy), which methods (cards plus the specific Nordic/Italian local methods you are enabled for), currencies, and whether tokenized/recurring payments are needed. We then build against your sandbox credentials, run the full flow — authorize, capture, 3DS2 challenge, webhook reconciliation, partial and full refund — on a staging database, and hand over installable source, a git repo, docs, and a training session. Typical delivery is one working week from confirmed scope, followed by a post-go-live support window while you take real transactions.
得られるもの
- Installable Odoo module source code targeted to your exact version (17.0 / 18.0 / 19.0) and edition (Community/Enterprise)
- Installation and configuration on your environment, including provider credential setup and sandbox-to-production cutover
- Technical documentation: architecture, webhook endpoints, credential/security model, and upgrade notes
- End-user guide plus a live training session for your finance/eCommerce team
- UAT on a staging database covering authorize, capture, 3DS2 challenge, webhook reconciliation, and partial/full refunds, with a documented rollback plan
- Post-go-live support window to resolve any issues during your first real transactions
- Git repository handover with full commit history and tagged release
- Configuration checklist mapping your Nexi/Nets contract (methods, currencies, terminals) to the deployed provider settings
これは誰のためのものですか
Italian merchant on Nexi XPay
Runs Odoo eCommerce and needs domestic Italian card acquiring through their Nexi contract at their negotiated rates, with SCA-compliant 3DS2 and clean invoice reconciliation instead of an off-platform hosted page.
Nordic retailer on Nets Easy
Sells across Denmark/Sweden/Norway and needs Nets Easy with local methods (Dankort, Nordic wallets) presented natively at Odoo checkout, with settlements reconciling automatically to sale orders and invoices.
Odoo finance/controller
Owns `account.move` integrity and wants every acquirer settlement, refund, and chargeback reflected as a proper Odoo transaction and credit note — no manual matching, full audit log, no card data on the Odoo box.
Odoo implementation partner / internal IT
Needs a maintainable, upgrade-safe provider that follows Odoo conventions (inherited models, `ir.model.access.csv`, standard states) and ships with a git repo and docs so it can be supported after handover across 17/18/19.
Nexi / Nets Payment Gateway for Odoo の比較方法
| 基準 | エコシエール | カスタムビルド | 競合他社 | Odoo 標準機能 |
|---|---|---|---|---|
| Nexi/Nets support | Purpose-built provider for XPay and Nets Easy | Possible but you build it from scratch | Rarely covers Italian/Nordic acquirers | Not available — no Nexi/Nets provider |
| 3DS2 / SCA | Delegated to acquirer hosted page, result reconciled | Must implement and test yourself | Varies; often incomplete | Only for bundled providers (Stripe/Adyen) |
| Webhook reconciliation | Signature-verified, idempotent state machine | You design idempotency and matching | Often basic or missing | Only for supported providers |
| Refunds | Credit note triggers real acquirer refund | Extra scope to build | Sometimes manual-only | N/A for Nexi/Nets |
| Odoo version fit | Built and tested on your 17/18/19 | Depends on your team's version expertise | May lag latest release | Ships with core, but no Nexi/Nets |
| Fit to your contract | Scoped to your methods, currencies, terminals | Fully bespoke but slower | Generic config, one size fits all | N/A |
| Support & handover | Docs, training, git repo, support window | You own all maintenance | Vendor-dependent, variable | Community forums only |
| Total effort for you | Scoping call, UAT sign-off, go live | High — spec, build, test, maintain | Buy then integrate/troubleshoot gaps | Cannot use this acquirer at all |
Nexi / Nets Payment Gateway に関するよくある質問
How long does delivery take?
This is build-to-order, not an instant download. After a short scoping call to confirm your acquirer (Nexi XPay or Nets Easy), methods, currencies, and whether recurring payments are needed, typical delivery is one working week from confirmed scope. We build against your sandbox first, run full UAT on staging, then cut over to production.
Do you handle ongoing support and Odoo version updates?
Yes. Every build includes a post-go-live support window, and we hand over a git repo, source, and docs. Because the module follows Odoo conventions (inherited `payment.provider`, standard transaction states, `ir.model.access.csv`), it upgrades cleanly. We can migrate it to a newer Odoo version or extend it under a separate support/retainer arrangement.
Is my Odoo server in PCI scope?
No card data touches your Odoo instance. We integrate the Nexi XPay / Nets Easy hosted checkout, so the shopper enters card details on the acquirer's PCI-compliant page and 3DS2/SCA runs there. Odoo only receives and reconciles the signed result, which keeps your PCI scope minimal.
Does it work with Community or do I need Enterprise?
The provider works on Odoo Community with `website_sale` and on Enterprise. Card checkout, webhooks, and refunds are edition-agnostic. Certain flows like subscription tokenization depend on Enterprise apps; if those are in scope we build against them explicitly and confirm during scoping.
How are payments reconciled back into Odoo?
A signature-verified webhook controller matches each acquirer notification to its `payment.transaction` by reference, validates amount and currency, and transitions state idempotently. Confirmed payments run through Odoo's standard pipeline to confirm the sale order and post the invoice, so your `account.move` reflects real settlements automatically.
Can it issue refunds?
Yes. Refunds are driven from the Odoo invoice/transaction and call the acquirer's refund API, then write the resulting state back to the transaction. Both partial and full refunds are covered and tested during UAT.
Which Odoo versions do you support?
Odoo 17.0, 18.0, and 19.0. We build and test against your exact running version so the module matches your ORM, controller, and payment-framework APIs rather than assuming a generic release.
関連モジュール

Netvisor Connector for Finland
A build-to-order integration that keeps Odoo and your Finnish accounting system reconciled — pushing invoices, importing bills and payments, and mapping the GL and cost centres both ways. ECOSIRE scopes, builds, installs and supports it after you request a quotation.
Nexi / Nets Payment Gateway
A build-to-order Odoo payment provider that connects your checkout to Nexi XPay and Nets Easy for Italian and Nordic card acquiring, with 3DS2/SCA, local payment methods, and webhook-based reconciliation. ECOSIRE builds, installs, and supports it for Odoo 17.0/18.0/19.0.
- Custom `payment.provider` record inheriting Odoo's provider model, registered in `payment_provider_data.xml` and selectable per website/company
- Nexi XPay hosted-checkout integration: create payment order, redirect to the acquirer page, verify the return signature in the Odoo controller
- Nets Easy hosted-checkout integration with the same abstraction so a single provider config drives either acquirer per your contract
- 3DS2 / SCA delegated to the acquirer's hosted flow, keeping the Odoo instance out of PCI card-data scope; authentication result carried back to `payment.transaction`


