| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Community Apps Dependencies | Show |
| Lines of code | 977 |
| Technical Name |
aglow_stripe_payment_element |
| License | OPL-1 |
| Website | https://www.odoo.com |
| Versions | 15.0 16.0 17.0 18.0 |
Stripe Backend Payments
Charge credit cards directly from Odoo’s backend invoice form
using Stripe — no POS app, no redirects, no external pages.
💳 Pay from Backend Invoice 🔒 PCI Compliant ⚡ Auto-Reconcile
ⓘ Description
Stripe Backend Payments adds a “Pay with Stripe” button directly to Odoo’s backend invoice form. Your accounting or sales team can initiate a Stripe card payment without switching to the POS app, opening a portal link, or leaving the invoice screen.
Clicking the button opens a secure, in-app modal where the user enters card details and confirms the charge.
Once the payment succeeds, the module automatically creates and posts the account.payment,
links it to the invoice, and reconciles the balance. No card data is ever stored in Odoo —
everything is handled securely by Stripe.
|
💳
One-Click from InvoiceA single button on the backend invoice header launches the payment modal — no navigation required |
🔒
Stripe-Hosted SecurityCard details are collected by Stripe’s PCI-compliant interface — nothing touches your server |
✅
Auto-Post & ReconcileThe payment is posted, linked to the invoice, and the balance is reconciled automatically |
⚙ Key Features
Seamless Backend Payment Flow
- In-App Modal — a branded overlay with amount display, card input, and action buttons opens right on the backend invoice
- Real-Time Validation — Stripe validates card details as they are entered
- 3D Secure Support — handles SCA / 3D Secure authentication automatically when required by the card issuer
- Success Confirmation — a success screen with the transaction ID is shown before returning to the invoice
- Cancel Anytime — the user can close the modal at any point without affecting the invoice
Accounting Integration
- Automatic Payment Posting — a draft
account.paymentis created and posted on success - Invoice Reconciliation — the payment is linked to the invoice and the outstanding balance is cleared
- Transaction Tracking — every payment creates a
payment.transactionwith Stripe PaymentIntent and PaymentMethod IDs - Multi-Currency — supports any currency that Stripe processes, using the invoice’s currency
Stripe Customer Management
- Automatic Customer Creation — a Stripe Customer is created for the partner if one doesn’t already exist
- Smart Deduplication — checks the partner record and existing payment tokens before creating a new customer
- Persistent Linking — the Stripe Customer ID is stored on the partner for all future payments
Error Handling
- User-Friendly Messages — 30+ Stripe error codes are mapped to clear, plain-language messages
- Inline Error Display — errors appear directly in the payment modal so the user can correct and retry
- Backend Logging — all operations and errors are logged for troubleshooting
⚡ How It Works
Collecting payment from a backend invoice takes just a few clicks:
|
1
|
Pay with Stripe — open a posted customer invoice in the Odoo backend and click the “Pay with Stripe” button in the header. |
|
2
|
Enter Card Details — the payment modal opens showing the amount due and Stripe’s card input form. |
|
3
|
Process Payment — click “Process Payment” to charge the card. 3D Secure is handled automatically if needed. |
|
4
|
Done — the payment is posted, the invoice balance is reconciled, and you’re returned to the invoice. |
👀 Smart Visibility
The “Pay with Stripe” button only appears on backend invoices when all of the following conditions are met:
Posted InvoiceThe invoice must be in the Posted state — draft or cancelled invoices won’t show the button. |
Customer InvoiceOnly customer invoices ( |
Outstanding BalanceThe invoice must have a remaining amount due. Fully paid invoices hide the button automatically. |
🔧 Configuration
1. Stripe Payment Acquirer
Navigate to Accounting → Configuration → Payment Providers and configure your Stripe acquirer with your Publishable Key and Secret Key. This module uses the same credentials as Odoo’s built-in Stripe integration.
2. Assign a Journal
Make sure your Stripe acquirer has a payment journal assigned. This is the journal where payments will be posted when a transaction succeeds.
3. You’re Ready
That’s it. Open any posted customer invoice in the Odoo backend with an outstanding balance and the “Pay with Stripe” button will appear in the header.
If you already have the
payment_stripe module configured, this module works out of the box with no additional setup.
📦 Dependencies
This module requires the following Odoo modules to be installed:
| Module | Purpose |
|---|---|
Accounting account |
Invoices, journals, and payment posting |
Payment payment |
Payment transaction framework |
Stripe payment_stripe |
Stripe API credentials and base integration |
🎙 Support
Questions or issues? We're here to help.
✉ contact@aglow.dev
Stripe Backend Payments is developed and maintained by Alpenglow Technologies LLC.
This software is provided "as is", without warranty of any kind, express or implied.
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