Odoo Website Payment

Secure online payment system with multi-gateway integration and automated transaction processing

The Website Payment module in Odoo 19 provides a comprehensive online payment solution, allowing customers to pay for orders directly on the website with multiple payment methods.

The system supports integration with leading payment gateways like Stripe, PayPal, Authorize.net, and many others, ensuring secure transactions with SSL encryption and PCI DSS compliance.

From credit card payments, e-wallets, bank transfers to installment payments - everything is processed automatically and synchronized with the accounting system.

Odoo 19
Payment Gateway
Stripe
PayPal
Secure Checkout
PCI DSS

Key Features

Key points

  • Multi-Gateway Support: Integrate multiple payment gateways simultaneously, auto-select appropriate gateway by country/currency

  • Secure Checkout: SSL/TLS encryption, credit card tokenization, PCI DSS Level 1 compliant

  • Payment Methods: Credit/debit cards, PayPal, Apple Pay, Google Pay, bank transfer, COD

  • Auto-Confirmation: Automatically confirm orders on successful payment, send notification emails

  • Refund Management: Process refunds directly from Odoo, auto-update order status

  • Saved Cards: Securely save card information (tokenized) for faster future payments

  • Payment Status Tracking: Track transaction status in realtime (pending, authorized, captured, refunded)

  • Multi-Currency: Support multi-currency payments with auto-updated exchange rates


Supported Payment Gateways

Payment Gateway Comparison

GatewayTransaction FeeProcessing TimeKey Features
Stripe2.9% + $0.30InstantApple Pay, Google Pay, Link, supports 135+ currencies
PayPal2.9% + $0.30InstantPayPal Wallet, Pay Later, guest checkout
Authorize.net2.9% + $0.301-2 dayseCheck, recurring billing, fraud detection
Adyen2.5% + $0.10InstantLocal payment methods, 150+ currencies, risk management
Mollie2.9% + €0.25InstantiDEAL, Bancontact, SEPA, popular in EU

Payment Flow

Steps

  • 1. Customer adds products to cart, clicks Checkout. System displays shipping information form and payment methods.

  • 2. Select payment method (Credit Card, PayPal, etc.). If credit card, enter card number, expiry date, CVV. Data is SSL encrypted before sending.

  • 3. Click Pay Now. Odoo sends request to payment gateway (Stripe, PayPal). Gateway validates card, checks balance, performs 3D Secure if needed.

  • 4. Gateway returns result: Success (payment successful), Pending (processing), Failed (failed). Odoo updates order status accordingly.

  • 5. If successful: Order moves to Confirmed, sends confirmation email to customer, creates invoice automatically, updates inventory.

  • 6. If failed: Display error message, allow customer to retry or choose another method. Save log for admin review.

  • 7. Admin tracks transactions in Sales → Orders → Payments. View transaction ID details, gateway response, refund if needed.


Payment Gateway Configuration

Steps

  • 1. Install module: Go to Apps, search "Payment Provider: Stripe" (or PayPal, Authorize.net). Click Install. Module adds payment provider to system.

  • 2. Configure API credentials: Go to Website → Configuration → Payment Providers. Select Stripe, click Edit. Enter Publishable Key and Secret Key from dashboard.stripe.com. Set State: Enabled.

  • 3. Configure payment methods: In Configuration tab, select Payment Methods: Card, Apple Pay, Google Pay. Select Supported Currencies: USD, EUR, VND. Enable Capture Mode: Immediate or Manual.

  • 4. Configure webhook (important): Copy Webhook URL from Odoo. Go to Stripe Dashboard → Webhooks, add new endpoint. Select events: payment_intent.succeeded, payment_intent.payment_failed, charge.refunded.

  • 5. Test mode: Enable Test Mode in Odoo, use test card 4242 4242 4242 4242 to test. Check payment flow, order confirmation, email notification.

  • 6. Go live: Disable Test Mode, enter Live API keys. Check website SSL certificate (required). Test again with real card (small amount), then refund.

  • 7. Additional configuration: Go to Settings → Website → Checkout, enable Express Checkout (Apple Pay, Google Pay). Configure Payment Terms, Delivery Methods.


Security and Compliance

Key points

  • PCI DSS Compliance: Odoo does not store credit card information. Card data is sent directly to gateway via iframe or redirect, reducing PCI responsibility.

  • SSL/TLS Encryption: HTTPS required for checkout page. Data encrypted end-to-end from browser to gateway.

  • Tokenization: Card information converted to token (e.g., tok_1234abcd). Odoo only stores token, not actual card number.

  • 3D Secure (3DS): Supports 3DS 2.0 for additional authentication. Reduces chargebacks, increases payment acceptance rate.

  • Fraud Detection: Integrates with Stripe Radar, PayPal Fraud Protection. Automatically blocks suspicious transactions based on IP, address, behavior.

  • Data Privacy: GDPR, CCPA compliant. Customers can delete saved card information. Transaction logs encrypted and access-restricted.


Transaction Management

Key points

  • Payment Dashboard: Go to Accounting → Payments to view all transactions. Filter by status (Posted, Pending, Cancelled), gateway, date.

  • Transaction Details: Click payment to view details: Transaction ID, Gateway Response, Amount, Currency, Customer, Order.

  • Refund Process: Open payment, click Refund. Choose Full Refund or Partial Refund, enter reason. Odoo sends refund request to gateway, updates invoice.

  • Reconciliation: Transactions auto-reconcile with invoices. If discrepancies, go to Accounting → Reconciliation to adjust.

  • Reporting: Go to Accounting → Reporting → Payment Analysis. View reports by gateway, method, time. Export Excel for analysis.

  • Failed Payments: Go to Sales → Orders, filter Payment Status: Failed. Contact customer to retry or choose another method.


Conversion Optimization

Key points

  • Express Checkout: Enable Apple Pay, Google Pay for 1-click payment. Increases conversion rate 20-30%.

  • Guest Checkout: Allow payment without account registration. Reduces friction, increases order completion rate.

  • Saved Cards: Save cards for repeat customers. Faster payment, increases repeat purchases.

  • Multiple Payment Options: Provide 3-5 popular payment methods. Customers have more choices.

  • Clear Error Messages: Display clear errors when payment fails (card expired, insufficient funds). Guide customers on how to fix.

  • Mobile Optimization: Ensure smooth checkout flow on mobile. 60% of ecommerce transactions from mobile.

  • Trust Signals: Display SSL, PCI DSS, payment gateway logos. Increases customer trust.


Troubleshooting

Common Errors

ErrorCauseSolution
Payment declinedInsufficient funds, expired card, or blockedAsk customer to check card, try another card, or contact bank
Gateway timeoutGateway not responding within timeout periodCheck internet connection, gateway status page. Retry after a few minutes
Invalid API keyWrong or expired API keyCheck API key in Payment Provider settings. Create new key from gateway dashboard
Webhook not receivedWrong webhook URL or blocked by firewallCheck Webhook URL, whitelist gateway IPs, test webhook from gateway dashboard
3D Secure failedCustomer did not complete 3DS authenticationGuide customer to check SMS/banking app, retry or disable 3DS (not recommended)
Duplicate transactionCustomer clicked Pay multiple timesEnable idempotency key in gateway config. Check and refund duplicate transactions

FAQ

Key points

  • Can I use multiple payment gateways? Yes, Odoo supports multiple gateways. Customers choose gateway at checkout. Can hide/show gateways by country.

  • How are transaction fees calculated? Fees charged by gateway, not Odoo. Usually 2.5-3% + fixed fee. Check pricing of each gateway.

  • Can I offer installment payments? Yes, if gateway supports (PayPal Pay Later, Stripe Installments, Klarna). Configure in Payment Provider.

  • How to test payments? Enable Test Mode in Payment Provider, use gateway test cards. Stripe: 4242 4242 4242 4242, PayPal: sandbox account.

  • How long do refunds take? Refunds processed instantly on Odoo and gateway. Money returns to customer account in 5-10 business days (depends on bank).

  • Can I accept cash payments? Yes, enable Cash on Delivery (COD) in Payment Providers. Customer pays on delivery.

  • How to secure card information? Odoo does not store card information. Data sent directly to gateway via iframe/redirect. Ensure website has SSL.

  • Can I auto-send invoices? Yes, configure in Sales → Settings → Invoicing. Auto-create and send invoice on successful payment.