Shadail technology Backend Payment Core Connector
by Shadail technology https://www.shadailtech.com/| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Purchase (purchase)
• Invoicing (account) • Discuss (mail) |
| Lines of code | 451 |
| Technical Name |
shd_backend_payment_core |
| License | OPL-1 |
| Website | https://www.shadailtech.com/ |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Purchase (purchase)
• Invoicing (account) • Discuss (mail) |
| Lines of code | 451 |
| Technical Name |
shd_backend_payment_core |
| License | OPL-1 |
| Website | https://www.shadailtech.com/ |
Backend Payment Core Connector
A provider-agnostic payment foundation for Odoo 19 — process payments against Sales Orders, Purchase Orders, and Invoices using any configured payment provider and saved tokens, directly from the Odoo backend.
Universal Payment Wizard
Single wizard accessible from Sales Orders, Purchase Orders, and Invoices. Select any configured payment provider and saved token to process instantly.
Token-Based Payments
Uses saved payment.token records filtered by partner and provider. No manual card entry needed for repeat customers.
Document-Transaction Linking
Every transaction is linked to its originating SO, PO, or Invoice. Full audit trail and traceability on all payment activities.
Smart Amount Extraction
Automatically calculates the correct payable amount: amount_total for orders, amount_residual (outstanding balance) for invoices.
Stat Buttons
Transaction count buttons appear on SO and PO headers once payments are linked. One click to open all linked transactions.
Extensible Foundation
Designed to be extended by provider adapters (Authorize.Net, Stripe). All core wizard logic lives here for maximum reuse across integrations.
Reference Generation
Creates meaningful payment references from document names (SO-0001, INV/2026/0001) for easy reconciliation in the payment gateway dashboard.
Multi-Company Support
Payment providers and tokens are scoped per company. Works seamlessly in multi-company Odoo deployments without cross-company data leakage.
Supported Documents
Sales Order
Amount: amount_total
Button: Pay via Provider
Purchase Order
Amount: amount_total
Button: Pay via Provider
Invoice / Bill
Amount: amount_residual
Button: Pay via Provider
shd_backend_authorize_net or shd_backend_payment_stripe. It requires no standalone configuration beyond having at least one Odoo payment provider active.Verify Standard Dependencies
Ensure these standard Odoo modules are installed:
payment— Core Odoo payment frameworksale— Sales Orderspurchase— Purchase Ordersaccount_payment— Invoice payments
Install the Module
Go to Apps, search for Backend Payment Core, and click Install.
Configure a Payment Provider
Go to Accounting → Configuration → Payment Providers. Activate at least one provider (Authorize.Net, Stripe, etc.). Set its state to Enabled or Test.
Install a Provider Adapter (Recommended)
Install
shd_backend_authorize_netorshd_backend_payment_stripeto enable token collection for your chosen gateway. This core module reads existing tokens — token creation is handled by the adapter.
Processing a Payment
Open the Document
Navigate to a Sales Order, Purchase Order, or posted Invoice / Bill.
Click Pay via Provider
The Pay via Provider button appears in the document header. Click it to open the payment wizard.
Review Pre-filled Fields
The wizard automatically fills Partner, Currency, Amount, and Reference Prefix from the document. Verify these values before proceeding.
Select Provider & Token
Choose the Payment Provider and pick a saved Token from the partner's stored payment methods. Only tokens for that partner and provider are shown.
Adjust Amount (Optional)
The amount defaults to the document total or outstanding balance. Adjust if processing a partial payment.
Process Payment
Click Process Payment. The transaction is created, the provider API is called, and you are redirected to the transaction record to verify the result.
Viewing Linked Transactions
Once a payment is processed, a Transactions smart button appears in the document header showing the transaction count. Click it to open all linked transactions.
| Field | Description | Auto-filled? |
|---|---|---|
| Partner | Customer or vendor from the document | ✅ Yes |
| Currency | Document currency | ✅ Yes |
| Amount | Total or outstanding residual amount | ✅ Yes |
| Reference Prefix | Document name for gateway reference | ✅ Yes |
| Payment Provider | Active configured provider | ⚠️ Select manually |
| Token | Saved payment method for the partner | ⚠️ Select manually |
Models & Extensions
| Model | Type | Description |
|---|---|---|
payment.core.document.payment.wizard | Transient | Core wizard: provider/token selection and payment processing. Extend this in adapter modules. |
payment.transaction | Extension | Adds M2M links to sale.order and purchase.order with computed stat button counts. |
sale.order | Extension | Transaction linking fields, Pay via Provider button, stat button action. |
purchase.order | Extension | Transaction linking fields, Pay via Provider button, stat button action. |
account.move | Extension | Pay via Provider button on posted invoices and bills. |
Extension Pattern for Adapter Modules
Provider adapter modules extend payment.core.document.payment.wizard via _inherit, adding provider-specific fields and overriding action_process_payment with the gateway API call. The base class handles document resolution, amount extraction, and reference generation.
payment, sale, purchase, account_paymentNeed a Custom Payment Integration?
Shadail Technology can build provider adapters for any payment gateway on top of this core connector.
Contact UsShadail Technology Backend Payment Core Connector
Table of Contents
Overview
The Shadail Technology Backend Payment Core Connector provides a unified backend payment wizard for Odoo 19. It allows businesses to process payments against Sales Orders, Purchase Orders, and Invoices from a single interface, with pluggable support for multiple payment providers. Provider-specific adapter modules (e.g., shd_backend_authorize_net, shd_backend_payment_stripe) extend this core with provider-specific token management and API integrations.
Key Features
- Unified Payment Wizard — Process payments on Sales Orders, Purchase Orders, and Invoices via a single, consistent interface
- Provider Selection — Choose the payment provider (Authorize.Net, Stripe, etc.) within the wizard
- Token-Based Payments — Select saved payment tokens for seamless backend payment processing
- Transaction Logging — All transactions are recorded as payment.transaction records with full audit trails
- Extensible Architecture — Designed to be extended by provider-specific adapter modules
Dependencies
- payment
- sale
- purchase
- account_payment
Installation
- In the Odoo Apps menu, search for Backend Payment Core Connector and click Install.
- Install provider-specific adapter modules as needed (e.g., shd_backend_authorize_net).
Configuration
- Configure your preferred payment provider(s) under Accounting → Configuration → Payment Providers.
- Ensure at least one provider is in Enabled or Test state.
- The payment wizard will be available on Sales Orders, Purchase Orders, and Invoices after installation.
Usage
Processing a Backend Payment
- Open a Sales Order, Purchase Order, or Invoice.
- Click Process Payment (or the equivalent button added by this module).
- In the wizard, select the Payment Provider and saved Payment Token.
- Confirm — the payment is processed and a transaction record is created.
For Developers — Extending This Module
Provider-specific modules should:
- Depend on shd_backend_payment_core.
- Extend the payment wizard to add provider-specific fields (e.g., payment flow, token type).
- Override the _process_payment method to call the provider API with provider-specific logic.
Technical Notes
- Module: shd_backend_payment_core
- Version: 19.0.1.0.0
- Category: Accounting/Payment Providers
- Author: Shadail Technology
- License: OPL-1
- Website: https://www.shadailtech.com/
Support
For support and customisation requests, contact us at:
- Email: info@shadailtech.com
- Phone: +91 79773 52693
- Website: https://www.shadailtech.com/contactus
- Address: Office no. 602, Raj Oaks, MTNL Rd, Gokul Village, Mira Road East, Mira Bhayandar, MH 401107
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module