POS Customer Wallet Payment
Digital wallet for Odoo Point of Sale: recharge customer balances from backend or POS, pay orders fully or partially with a dedicated Wallet payment method, track credit and debit transactions, post accounting entries automatically, and notify customers by email.
Overview
This module adds a complete customer digital wallet for Odoo POS. Cashiers see wallet balances on the customer list, recharge wallets from the product screen, pay orders with a dedicated Wallet payment method (full or partial), and review transaction history without leaving POS. Backend users can manually recharge wallets, audit all credit and debit movements on customer forms and POS sessions, and configure wallet journals, recharge products, and optional email alerts.
Dependencies: Point of Sale, Accounting, and Mail must be installed. POS users need Point of Sale / User access. Backend manual recharge requires Invoicing / Accounting access.
Key Features
Recharge from POS & Backend
Top up wallets from the POS Wallet button or via Contacts → Action → Recharge Wallet. Balance is shown on each customer in the POS customer list.
Wallet Payment Method
Auto-created Wallet payment method on the payment screen. Pay fully or partially from balance; combine with Cash or Bank for the remainder. Amount is capped by available balance.
Transaction History
View credits and debits in POS via History, on the customer Wallet tab in backend, and from POS session smart buttons.
Automatic Accounting
Journal entries on wallet credit and debit. Recharge product income account is synced from the wallet journal liability account when you save the POS config.
Email Notifications
Optional Email Notification sends Your wallet balance has been updated when balance changes. Requires customer email address.
Session Closing Summary
Closing register shows Wallet Payments total separately. Wallet payments are not counted as cash or bank; recharge lines paid by cash/bank appear in normal payment totals.
Configuration
Complete these steps before opening a POS session with wallet enabled.
Step 1 Accounting setup
- Wallet liability account: Create or choose a liability account (e.g. Customer Wallet Liability).
- Wallet journal: Go to Accounting → Configuration → Journals → New. Type: Bank or Cash. Set Default Account to your wallet liability account. You will select this journal as Wallet Journal on the POS config.
- Recharge product: Create a Service product with Available in POS enabled. Its income account is set automatically from the wallet journal when you save the POS config.
- Customer receivable: Ensure paying customers have a receivable account (company default or on the contact). Required for wallet debit entries when customers pay with wallet.
Step 2 Point of Sale configuration
Go to Point of Sale → Configuration → Point of Sale, open your shop, and find the Customer Wallet section (also under Settings → Point of Sale when a config is selected).
- Customer Wallet: Enable the master toggle.
- Wallet Journal (required): Select the journal whose default account is the wallet liability account.
- Wallet Recharge Product (required): Select the service product added to POS orders when recharging a customer.
- Wallet Product (optional): Reference product for reporting only; not added to orders automatically.
- Email Notification (optional): Send email when wallet balance changes.
Click Save. The module auto-creates a Wallet payment method and attaches it to this POS. POS will refuse to open if Wallet Journal or Wallet Recharge Product is missing.
Step 3 Payment method vs wallet journal (important)
- Wallet Journal (on POS config): Used for accounting entries when crediting or debiting the wallet liability account.
- Wallet payment method (auto-created, named Wallet): Appears on the POS payment screen. Its Journal field stays empty on purpose do not set a journal on this payment method.
- At checkout, cashiers click the Wallet payment method button, not the wallet journal.
Step 4 Install / upgrade module
After installing or upgrading bits_pos_wallet, close any open POS session and open a new one. Hard-refresh the browser (Ctrl+Shift+R) if wallet buttons do not appear.
How to Use POS
Recharge wallet (counter top-up)
- Open POS session and select a customer on the order.
- Click Wallet on the product screen control buttons.
- Enter amount in Recharge Wallet popup and click Add to Order.
- Go to Pay and pay with Cash or Bank not Wallet.
- After order sync, customer wallet is credited and balance updates on the customer list.
Pay with wallet
- Select customer (balance shown as Wallet: ⦠on customer list).
- Add products and click Pay.
- Click the Wallet payment method.
- Amount is prefilled as
min(remaining due, wallet balance). Adjust if needed. - Validate order. Combine with Cash/Bank if wallet balance is less than order total.
View wallet history in POS
- Select a customer on the order.
- Click History on the product screen control buttons.
- Review latest transactions (date, type, amount, balance after).
POS rules enforced
- Customer is required for recharge, history, and wallet payment.
- Cannot pay with wallet if balance is zero.
- Cannot pay more than available wallet balance.
- Wallet balance RPC requires server connection (not available offline).
How to Use Backend
View customer wallet balance
- Contacts → open customer.
- Smart button Wallet Balance shows current balance.
- Wallet tab lists all credit and debit transactions (read-only).
Manual recharge (backend top-up)
- Contacts → select customer → Action → Recharge Wallet.
- Enter Amount and select Payment Journal (cash/bank where money was received).
- Click Confirm. Credit transaction and journal entry are posted immediately.
Requires Invoicing / Accounting user access.
Audit wallet transactions on POS session
- Point of Sale → Orders → Sessions → open a session.
- Stat button Wallet Transactions opens movements linked to that session.
Our Services
Odoo Implementation
Expert Odoo deployment tailored to your workflow.
- System Setup
- Data Import
- Process Mapping
Odoo Support
Round-the-clock support and rapid issue resolution.
- Bug Fixing
- Performance Tuning
Odoo Customization
Custom modules and integrations for your needs.
- Custom Modules
- UI/UX Design
- API Integration
Odoo Migration
Upgrade or migrate from legacy systems without data loss.
- Version Upgrade
- Data Migration
- Zero Downtime
Odoo Training
Training from beginner to advanced level.
- User Training
- Admin Training
- Developer Training
Developer On Demand
Skilled Odoo developers when you need them.
- Flexible Hours
- Expert Developers
- Quick Onboarding
Get Support
Need help or customization? Contact us:
Contact Support| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) • Point of Sale (point_of_sale) • Inventory (stock) |
| Lines of code | 1329 |
| Technical Name |
bits_pos_wallet |
| License | LGPL-3 |
| Website | https://www.bitszee.com |
Please log in to comment on this module