| name | erpclaw-pos |
| version | 1.0.0 |
| description | Point of Sale -- 28 actions across 4 domains. POS profiles, register sessions, cart-based transactions, split payments, receipts, hold/resume, returns, discounts, and end-of-day reporting with cash reconciliation. |
| author | AvanSaber |
| homepage | https://github.com/avansaber/erpclaw-addons |
| source | https://github.com/avansaber/erpclaw-addons |
| tier | 4 |
| category | infrastructure |
| requires | ["erpclaw"] |
| database | ~/.openclaw/erpclaw/data.sqlite |
| user-invocable | true |
| tags | ["erpclaw","pos","point-of-sale","register","transactions","payments","receipts","cash-reconciliation","retail","cart","barcode"] |
| scripts | ["scripts/db_query.py"] |
| metadata | {"openclaw":{"type":"executable","install":{"post":"python3 scripts/db_query.py --action pos-status"},"requires":{"bins":["python3"],"env":[],"optionalEnv":["ERPCLAW_DB_PATH"]},"os":["darwin","linux"]}} |
ERPClaw POS
Point of Sale module for in-store and counter sales. Manages register sessions,
cart-based transactions, split payments, hold/resume, returns, discounts,
and end-of-day reconciliation. submit-transaction auto-creates sales invoice,
payment entry, and stock ledger updates via cross-skill integration.
Skill Activation Triggers
Activate when user mentions: POS, point of sale, register, cash register, checkout,
ring up, transaction, receipt, cashier, terminal, barcode scan, hold transaction.
Setup
python3 {baseDir}/init_db.py
python3 {baseDir}/scripts/db_query.py --action pos-add-pos-profile --name "Main Register" --company-id {id}
Quick Start
--action pos-add-pos-profile --name "Main Register" --company-id {id}
--action pos-open-session --pos-profile-id {id} --opening-amount 200 --cashier-name "Jane"
--action pos-add-transaction --pos-session-id {id}
--action pos-add-transaction-item --pos-transaction-id {id} --item-id {id} --qty 2
--action pos-add-payment --pos-transaction-id {id} --payment-method cash --amount 50
--action pos-submit-transaction --id {id}
--action pos-close-session --id {id} --closing-amount 250
All 28 Actions
POS Profiles (4 actions)
| Action | Description |
|---|
pos-add-pos-profile | Create POS terminal profile |
pos-get-pos-profile | Get profile details |
pos-update-pos-profile | Update profile settings |
pos-list-pos-profiles | List POS profiles |
Sessions (5 actions)
| Action | Description |
|---|
pos-open-session | Open register session |
pos-close-session | Close session with reconciliation |
pos-get-session | Get session details |
pos-list-sessions | List sessions |
pos-session-summary | Session summary with totals |
Transactions (11 actions)
| Action | Description |
|---|
pos-add-transaction | Start new transaction |
pos-get-transaction | Get transaction details |
pos-list-transactions | List transactions |
pos-add-transaction-item | Add item to cart |
pos-remove-transaction-item | Remove item from cart |
pos-add-payment | Add payment to transaction |
pos-apply-discount | Apply discount |
pos-submit-transaction | Submit (creates invoice + payment + stock) |
pos-void-transaction | Void transaction |
pos-hold-transaction | Hold transaction for later |
pos-resume-transaction | Resume held transaction |
Returns & Reports (8 actions)
| Action | Description |
|---|
pos-return-transaction | Process return (creates credit note) |
pos-lookup-item | Lookup item by barcode/name |
pos-generate-receipt | Generate receipt |
pos-daily-report | Daily sales report |
pos-hourly-sales | Hourly sales breakdown |
pos-top-items | Top selling items |
pos-cashier-performance | Cashier performance metrics |
pos-cash-reconciliation | Cash reconciliation with variance |
Cross-Skill Integration
- erpclaw-selling: submit-transaction creates sales_invoice
- erpclaw-payments: submit-transaction creates payment_entry
- erpclaw-inventory: lookup-item reads item/item_barcode; submit updates stock
- item_barcode table: Fast barcode scanning
Technical Details (Tier 3)
Tables: pos_profile, pos_session, pos_transaction, pos_transaction_item, pos_payment. Data: Money=TEXT(Decimal), IDs=TEXT(UUID4).