Panville — Multi-Branch Shell Fuel Stations Trading System
This is the documentation site for Panville — the Odoo 18 deployment of the shell18 custom module. Panville is a single SEC-registered legal entity operating six Shell fuel stations across Northern Luzon, Philippines.
What does the module do?
shell18 automates the import of CVGo POS (Point of Sale) data and converts it into Odoo accounting entries — sales orders, invoices, delivery receipts, and payments.
| Step | Description |
|---|---|
| Upload | Upload CVGo XML ZIP files exported from Shell's CVGo system |
| Validate | Parse and extract transaction data (fuel sales, shop sales, discounts, payments) |
| Post | Create Odoo Sales Orders, Invoices, Deliveries, and Payments automatically |
| Reconcile | Compare CVGo totals against Odoo totals to ensure accuracy |
| Pay | Register payments for outstanding invoices |
Branches
Panville's six branches are configured as child companies under the Panville parent in Odoo 18's native multi-branch tree:
| Branch | Code |
|---|---|
| TPLE-Rosario | ROS |
| Baguio-Abanao | ABA |
| Baguio-Baguilian | BGL |
| Baguio-Marcos Highway | MAR |
| Balili-La Trinidad | LTR |
| Pangasinan-San Fabian | SF |
Bank accounts and the chart of accounts are shared at the Panville (parent) level. Each branch has its own journals, sale-order sequence, and CVGo MOP accounts. See Multi-Branch Setup for the full architecture.
Key concepts
- CVGo: Shell's Point of Sale system at fuel stations. Exports daily data as XML files in ZIP format.
- MOP (Mode of Payment): Payment methods used at the station (Cash, Shell Fleet Card, GCash, BDO Credit Card, etc.). MOP accounts are scoped per-branch.
- POS Period / Shift: A cashier's working period. Each shift has its own set of transactions.
- BIR Receipt Type: Philippine BIR classification —
FUEL(fuel sales) orSHOP(convenience store sales). - VAT-Inclusive Pricing: All CVGo prices already include 12% VAT. The system extracts VAT rather than adding it. See Taxes.
Conventions
- Code blocks are runnable as-is unless marked otherwise
- SQL queries are read-only unless they include
UPDATE/DELETE/INSERT— destructive operations always carry a warning - Menu paths use the format Shell18 > Section > Item
- Branch operations assume the user has switched to the relevant branch in Odoo's company switcher (top-right)
Repository
- Module source:
/Users/jsalinga/odoo/odoo18/custom/shell18/shell18/ - Docs source:
/Users/jsalinga/odoo/odoo18/custom/shell18/shell18-docs/
To contribute: edit Markdown files under docs/ and submit changes alongside the Odoo module updates they describe.