Why Stripe + Odoo?
Stripe is the most popular payment provider for Odoo eCommerce and online invoicing. It supports credit cards, Apple Pay, Google Pay, and dozens of local payment methods. Odoo includes a built-in Stripe payment provider module — no third-party addon needed.
Setup Steps
1. Get Stripe API Keys
- Log in to Stripe Dashboard
- Go to Developers → API Keys
- Copy the Publishable key (starts with
pk_) - Copy the Secret key (starts with
sk_)
Important: Use test keys (pk_test_, sk_test_) for development. Switch to live keys for production.
2. Configure in Odoo
- Go to Invoicing/Accounting → Configuration → Payment Providers
- Select Stripe
- Enter the Publishable Key and Secret Key
- Set State to "Enabled" (test mode first)
- Save
3. Configure Webhooks
Webhooks notify Odoo when payments succeed, fail, or are refunded.
- In Stripe Dashboard → Developers → Webhooks
- Add endpoint:
https://your-odoo.com/payment/stripe/webhook - Select events:
payment_intent.succeeded,payment_intent.payment_failed,charge.refunded - Copy the Webhook Signing Secret
- Enter it in Odoo's Stripe configuration
4. Test the Integration
Use Stripe test cards:
| Card Number | Result |
|---|---|
| 4242 4242 4242 4242 | Success |
| 4000 0000 0000 0002 | Declined |
| 4000 0025 0000 3155 | Requires 3D Secure |
Features
3D Secure / SCA
Stripe automatically handles 3D Secure authentication for European cards (PSD2/SCA compliance). No additional configuration needed in Odoo.
Multi-Currency
Stripe supports 135+ currencies. Odoo sends the invoice currency to Stripe, and Stripe processes the payment in that currency. Currency conversion happens at Stripe's rates.
Saved Payment Methods
Customers can save their cards for future purchases. Stripe tokenizes card data — Odoo never stores card numbers.
Refunds
Process refunds from Odoo: create a credit note, and Odoo sends a refund request to Stripe automatically.
Common Issues
| Issue | Cause | Fix |
|---|---|---|
| Payment not confirmed | Webhook not configured | Set up webhook endpoint in Stripe Dashboard |
| "Invalid API key" | Wrong key type (test vs live) | Verify you are using the correct key pair |
| 3D Secure fails | Redirect URL misconfigured | Ensure Odoo URL is accessible from the internet |
| Currency mismatch | Odoo pricelist currency ≠ Stripe account currency | Enable multi-currency in Stripe or match currencies |
DeployMonkey + Stripe
Deploy Odoo on DeployMonkey with eCommerce, configure Stripe in minutes, and start accepting payments. DeployMonkey ensures your Odoo URL is accessible for webhooks and 3D Secure redirects.