Skip to Content

CorvusPay in Odoo 19: card payments without card data in your database

A payment provider for the Western Balkans, with pre-authorisation, capture, refunds and reconciliation, not just checkout.
Bojan Nišević

If you sell online in Bosnia and Herzegovina, Croatia or Serbia, the payment provider you actually need is often a local one. Odoo ships with integrations for the large international gateways, but CorvusPay is not among them.

So we wrote it. CorvusPay Payment Provider is now on the Odoo Apps Store, free and LGPL-3, for Odoo 19.

Card data never reaches your Odoo

Payment takes place on the CorvusPay form. The customer enters their card details with CorvusPay, not on your page, so no card number ever touches your database. Requests are signed with HMAC-SHA256, and every result that comes back is verified before the transaction is allowed to change state.

Both card and IBAN (PIS) payments are supported, at web shop checkout, on sales orders and on customer invoices.

The part most integrations skip

Collecting the money is the easier half of the job. What the operator needs is everything that comes after, and that is where we put the effort:

  • Pre-authorisation with full or partial capture, for the common case where you charge on delivery.
  • Voiding an authorisation you never used.
  • Refunds, full and partial, recorded as child transactions of the original payment rather than as separate entries.
  • Reconciliation with CorvusPay, on demand and on a schedule, for the customer who paid and then closed the browser tab without returning to your shop. Without it, such payments are left in limbo.

Alongside the English source text, translations into Bosnian, Croatian, Serbian Cyrillic and Serbian Latin are included.

What you need

  • Odoo 19, Community or Enterprise, with the Payments module.
  • A CorvusPay merchant account, with the Store ID, Secret Key and client certificate for the store you use.
  • The cryptography Python package on the Odoo server.

One honest note before you go live. Status checks, capture, void and refunds run server to server, and CorvusPay's integration manual only publishes the test endpoints. The production endpoints shipped with the module follow the naming CorvusPay uses elsewhere. Confirm them with CorvusPay when you receive your production credentials, and verify one controlled live payment and one refund before regular operation.

Download the module

The module is available on the Odoo Apps Store at apps.odoo.com/apps/modules/19.0/payment_corvuspay. Questions and customisations: hello@wolfinne.com.

Vendor bills that fill themselves in: AI invoice reading for Odoo 19
Attach a PDF, press one button, and Claude fills in the vendor, dates, lines and taxes. Free on the Odoo Apps Store.