POS Self Order Stripe
Integrate Stripe payment into self-order system. Accept international payments, high security, smooth payment experience for customers.
Overview
POS Self Order Stripe module integrates Stripe payment gateway into self-service ordering system, allowing customers to pay online securely with international cards.
Stripe is the world's leading payment platform, supporting 135+ currencies, trusted by millions of businesses from startups to large corporations.
Key Features
Key points
• International payments - Accept Visa, Mastercard, Amex, JCB and 135+ currencies
• Maximum security - PCI Level 1 compliant, end-to-end encryption, 3D Secure
• One-tap payment - Support Apple Pay, Google Pay, Link
• Self-service ordering - Customers scan QR, order and pay on phone
• Fast payment processing - Payment confirmation in seconds
• Dispute management - Handle chargebacks and refunds directly from Stripe Dashboard
• Detailed reporting - Track transactions, fees, and revenue in real-time
• Automatic webhooks - Update payment status in real-time to Odoo
Target Users
Key points
• International restaurants - Serve foreign customers, accept international cards
• Hotels & Resorts - Customers self-order services and pay online
• Premium cafes & bars - Modern, contactless payment experience
• F&B chains - Unified online payment management for multiple branches
• Export businesses - Accept multi-currency payments
Setup Instructions
Steps
1. Register Stripe account at https://stripe.com
2. Complete business verification (KYC) on Stripe
3. Get Publishable Key and Secret Key from Stripe Dashboard
4. Install POS Self Order Stripe module in Odoo
5. Go to Point of Sale → Configuration → Payment Methods
6. Create new payment method, select "Stripe"
7. Enter Publishable Key and Secret Key
8. Select environment (Test or Live)
9. Enable "Use in Self Order" and "Enable 3D Secure"
10. Configure webhook URL in Stripe Dashboard
11. Test payment with Stripe test cards
How to Use for Customers
Steps
1. Scan QR code on table with phone
2. Browse menu and add items to cart
3. Click "Pay" and select Stripe
4. Enter card details or select Apple Pay/Google Pay
5. Authenticate 3D Secure if required
6. Receive successful payment confirmation
7. Track order status on phone
How to Use for Staff
Steps
1. Open POS session
2. Self Order orders with Stripe payment automatically appear
3. Check payment status (Paid)
4. Process and serve customers
5. Close session, Stripe revenue automatically reconciled
Scenario 1: Foreign tourist
American customer at restaurant, no VND cash. Scan QR, order and pay with Visa USD. Stripe automatically converts to VND, restaurant receives VND.
Scenario 2: Contactless payment
During pandemic, customer wants to minimize contact. Scan QR, order, pay with Apple Pay one-tap. No need to touch POS machine or hand card to staff.
Scenario 3: Process refund
Customer ordered wrong item and requests refund. Staff goes to Stripe Dashboard, finds transaction and refunds. Money automatically returns to customer card in 5-10 days.
Scenario 4: Payment dispute
Customer claims did not receive food and requests chargeback. Stripe notifies dispute, restaurant provides evidence (food photos, delivery confirmation) to defend.
Scenario 5: Multi-currency payment
Restaurant chain has branches in multiple countries. Customer in Singapore pays SGD, customer in Vietnam pays VND, all through same Stripe account.
Important Terminology
Key points
• Stripe - World's leading online payment platform
• Publishable Key - Public key used in frontend, safe to public
• Secret Key - Secret key used in backend, must not be public
• 3D Secure - Additional security layer, requires OTP authentication when paying
• Apple Pay / Google Pay - Digital wallets, one-tap payment
• Chargeback - Payment dispute, customer requests bank to refund
• Refund - Refund initiated by restaurant
• Webhook - Mechanism for Stripe to notify Odoo of payment results
• PCI DSS Level 1 - Highest security standard for card payments
Tips for Effective Use
Key points
• Enable 3D Secure - Reduce fraud risk, protect business from chargebacks
• Use Stripe Radar - AI tool for automatic fraud detection
• Configure email receipts - Send electronic invoices to customers via Stripe
• Monitor Dashboard daily - Check transactions, fees, and disputes
• Test thoroughly before live - Use Stripe test cards to test all scenarios
• Prepare KYC documents - Complete verification to avoid fund holds
• Read fee policy carefully - Understand transaction fees, chargeback fees, currency conversion fees
• Backup webhooks - Configure multiple webhook endpoints to ensure no missed notifications
System Requirements
Key points
• Point of Sale module installed
• POS Self Order module installed
• Stripe account registered and KYC verified
• Publishable Key and Secret Key from Stripe
• SSL certificate for website (HTTPS required)
• Webhook endpoint accessible from internet
Troubleshooting: Payment declined
Key points
• Check card has sufficient limit
• Ensure card has online payment activated
• Ask customer to contact bank if blocked
• Check if Stripe Radar blocked transaction
• View error details in Stripe Dashboard
Troubleshooting: Webhook not working
Key points
• Check webhook URL configured correctly in Stripe
• Ensure endpoint accessible from internet (not localhost)
• Check SSL certificate is valid
• View webhook logs in Stripe Dashboard
• Test webhook with Stripe CLI
Troubleshooting: Orders not appearing in POS
Key points
• Check webhook received payment notification
• Ensure POS session is open
• View error logs in Odoo
• Check payment method has "Use in Self Order" enabled
• Try creating order manually to test
Troubleshooting: Account funds on hold
Key points
• Complete KYC verification in Stripe Dashboard
• Provide additional documents if Stripe requests
• Contact Stripe Support to know reason
• Ensure compliance with Stripe policies
Frequently Asked Questions
Key points
• Does Stripe work in Vietnam? - Yes, Stripe supports Vietnam since 2023, receive VND
• What are Stripe transaction fees? - 3.4% + 10,000 VND for Vietnamese cards, 3.9% + 10,000 VND for international cards
• How long to receive money? - 2-7 business days depending on country and bank
• Can partial refunds be processed? - Yes, Stripe supports partial refunds
• Is there a transaction amount limit? - Depends on account verification, usually no limit
• Is card data secure? - Yes, Stripe PCI Level 1, card information not stored in Odoo
• Can multiple currencies be accepted? - Yes, Stripe supports 135+ currencies
Business Benefits
Key points
• Accept international payments, expand customer market
• Increase 40% conversion rate with smooth payment
• Reduce 90% fraud risk with Stripe Radar
• Save time on payment processing and reconciliation
• Improve customer experience with modern payment
• Detailed transaction data for business analysis
• 24/7 support from Stripe for all payment issues