Chile Transbank Webpay
Online card acquiring for Chile via the Transbank Webpay Plus REST API (BYOK commerce code) with full refund support
Chile Transbank Webpay Plus
Online card acquiring for Chile with full refund support - using your own Transbank commerce code (BYOK)
Charge Chilean credit and debit cards directly from Odoo through the official Transbank Webpay Plus REST API. Create a hosted-form payment, commit the authorization, query its status and issue full or partial refunds - all from a single, auditable transaction record. This connector uses your own Transbank commerce code and API key; no third-party accreditation is required and no data leaves your Odoo except the calls to Transbank you configure.
Key Features
Full acquiring lifecycle
Create → commit → status, mapped to a clear Odoo state machine (Draft, Pending, Authorized, Failed). Every step records the authorization code, response code, VCI 3-D Secure indicator, masked card number, payment type and installments returned by Webpay.
Full & partial refunds
Refund any authorized transaction fully or partially. The connector tracks the refundable balance, prevents over-refunding, and recognises Transbank's same-day reversal (REVERSED) versus post-settlement nullification (NULLIFIED) outcomes automatically. The balance is enforced on every route into a refund — the wizard, the Refunds list and the transaction itself — and the transaction row is locked while it is checked, so two refunds issued in the same second cannot between them exceed what was captured. A refund Transbank rejects keeps its error state and message on the record instead of vanishing with the error dialog.
BYOK - your credentials
Store your own commerce code (Tbk-Api-Key-Id) and API key (Tbk-Api-Key-Secret). Switch between the Transbank integration sandbox and production with one field; the correct base URL is selected for you.
Invoice reconciliation
Link a transaction to a customer invoice, register the authorized payment in your bank journal and reconcile it against the invoice, so the invoice is actually marked paid rather than left open beside an outstanding payment. Refunding a posted invoice generates a draft customer credit note built as a reversal of that invoice, so it carries the invoice's own taxes, journal, company and link back to the original document; a partial refund is scaled to the amount refunded. If no credit note can be produced, the reason is recorded on the refund and in the invoice's chatter rather than passed over in silence.
What is included
| Capability | Detail |
|---|---|
| Create transaction | POST to the Webpay Plus v1.2 endpoint; returns the hosted-form token and redirect URL. |
| Commit transaction | Confirms the authorization once the shopper returns from Transbank. |
| Status query | Idempotent re-query of any transaction by token for reconciliation. |
| Refund / reversal | Full or partial; REVERSED (same-day) and NULLIFIED outcomes handled. |
| Amount handling | Whole-peso (CLP) rounding, the format Webpay Plus requires. The connector does not convert currency, so an acquirer is only accepted on a company whose books are kept in CLP. |
| Connection test | One-click validation of the commerce code and API key. |
| API call log | Every request is logged with method, URL, status, duration and error excerpt. |
| Response code mapping | Webpay response codes translated to readable messages. |
How it works
- Create a Webpay acquirer with your commerce code and API key, choose the environment, and test the connection.
- Start a charge (optionally from an invoice). The connector creates the transaction and gives you the Transbank redirect URL.
- The shopper authenticates on Transbank's hosted form and lands back on the module's own result page, which confirms the authorization for them and commits the transaction automatically; you can still commit or re-query it by hand from the record.
- Optionally enable the scheduled sweep (Settings › Technical › Scheduled Actions) so a transaction the shopper abandoned is finished instead of left pending for ever.
- Refund fully or partially at any time; the refundable balance and credit notes are kept in sync.
Requirements
- Odoo 18.0, 19.0 or 20.0, Community or Enterprise.
- An active Transbank Webpay Plus contract with your own commerce code and API key.
- Python
requestslibrary (bundled with Odoo).
This module generates the Webpay Plus REST payloads and transmits them using your Transbank credentials. It is not a payment institution and does not provide Transbank accreditation.
Screenshots
Acquirers
Api Log
New Charge
Refunds
Update date: 2026-10-01
User guides (PDF)
Related modules
Advanced Financial Analytics
Cash-flow forecast records computed from posted invoices
US BAI2 Statement Split
Split multi-account US BAI2 cash-management statements and route each account to its matching Odoo bank journal
US BAI2 File Writer
Write US BAI2 cash-management statement files from Odoo bank-transaction data - balances, transactions, control totals