User Guide — Collected COD Module
COD means Cash on Delivery. It's the money the courier physically collects from the recipient when delivering the package.
What is the COD module?
COD means Cash on Delivery. It’s the money the courier physically collects from the recipient when delivering the package.
The Collected COD module shows you:
- ✅ How much money has been collected in a time period
- ✅ Per currency (USD, MXN, COP, etc.)
- ✅ Per sender (customer who ships)
- ✅ Per courier who collected
Important: If an order appears in this report, it means it has already been delivered and the money has already been collected. There’s no “pending collection” status here — to see what’s pending, the courier sees it in their mobile app.
How do I enable the module?
The module is in Beta. It comes off by default and must be enabled by the organization owner:
- Go to the Organization menu and open System
- Look for the “COD Module (Beta)” section
- Turn on the switch
- Save the changes
Once enabled, the “Collected COD” option will appear in the side menu and couriers will see a new section in their mobile app.
⚠️ Only the Super-admin and Admin roles can enable or disable this module.
Accessing the COD panel
In the side menu, click “Collected COD” (💵 icon). The main panel will open.
You’ll see a yellow banner at the top indicating the module is in Beta. You can close it and it won’t appear again in your browser.
What do I see on the panel?
Total cards (KPIs)
One card for each currency in which money has been collected. Each card shows:
- 💰 Total collected in that currency
- 📦 Number of orders that made up that total
For example, if your business charges in MXN and USD, you’ll see two cards, one per currency. Different currencies are never added together.
Orders table
List of every order delivered with COD in the selected period. Columns:
| Column | Meaning |
|---|---|
| ID | Order tracking number |
| Delivery date | Day and time it was delivered |
| Sender | Customer who sent the package |
| Recipient | Person who received and paid |
| Courier | Who delivered to the address (empty on counter deliveries) |
| Currency | USD, MXN, etc. |
| COD amount | Amount that had to be collected |
| Declared collected | Amount actually collected, with its label when it differs |
| Payment method | Cash, transfer, card, no charge, or not reported |
| Collecting agency | The office that received the money, on counter shipments |
| Received the money | The counter person who received the amount |
When the amount collected differs from what was expected, the row carries a label: Incomplete collection (less was collected), Overcollection (more was collected), or Not recorded — this last one appears on counter orders delivered without anyone capturing the payment, and the report never shows the expected amount as if it had been collected. The office and person data is fixed at the time of collection: renaming the office or deactivating the person afterward doesn’t change it.
“Export” button
Downloads the entire current table into a file compatible with Excel and Google Sheets. Respects any filters you have applied.
Filters
Click the “Filters” button (🔽 icon) to open the options:
Date range
- From and To — the period you want to check
- Shows the current month by default
- Maximum allowed: 1 year per query
If you select a very long range, the system will warn you.
Customer / Sender (Admin only)
If you’re an Admin, Manager, Accountant, or Super-admin, you can filter by a specific sender. Useful for reviewing the COD collected for a particular customer.
If you’re a Customer, you only see your own orders — this filter doesn’t appear for you.
Courier
Filter by the courier who collected the money on home deliveries. Useful for reviewing how much each courier collected. Money received at counters isn’t attributed to any courier.
Collecting agency and Received the money
If your organization operates offices, you can filter by the office that received the money and by the person who received it at the counter. These filters don’t appear in organizations without offices.
Apply / Reset
- Apply: runs the filter
- Reset: goes back to the default range (current month, no filters)
What does each role see?
| Role | What they see |
|---|---|
| Super-admin / Admin / Manager / Accountant | All COD orders from all senders |
| Customer | Only the COD orders of the packages they sent |
| Courier | Doesn’t access this panel — their view is in the mobile app |
Why doesn’t “Payment status” appear in the table?
It’s a deliberate decision to avoid confusion:
An order’s payment status refers to whether the sending customer paid the business for the shipping service, NOT whether the COD money has already been handed over to the sender.
Since it confused operators (“Pending” seemed to say the COD hadn’t been collected, when it had actually already been delivered), it was decided to hide that column in this report.
The simple rule: if an order appears in this report, the COD has already been physically collected.
When the COD Settlements module launches (coming soon), you’ll be able to see there whether you’ve already paid the sender the collected money.
Courier view (mobile app)
Couriers see their own COD summary from the mobile app, in a dedicated tab. There they see:
- 💵 Pending collection — money from assigned orders not yet delivered
- 📅 Today — collected on the current day
- 📆 This week and This month
- 🗓️ All-time — the entire history
- 🔍 Custom range — they can choose specific dates
All grouped by currency, just like in the web panel.
Exporting to Excel
- Apply whatever filters you want (dates, customer, courier)
- Click “Export” (⬇️ icon)
- A file downloads with the date range in the name
- Open it with Excel, Google Sheets, or any spreadsheet app
The file correctly preserves accents and special characters when opened in Excel.
Limit per download: up to 50,000 rows. If your range exceeds that, the 50,000 most recent are exported. For larger volumes, split into shorter periods.
To avoid overloading the system, there’s a limit of 10 downloads per minute per user.
Frequently asked questions
Why don’t I see “Collected COD” in the menu?
Possible reasons:
- The module isn’t enabled in your organization. Ask the Admin to go to Organization → System and turn on the switch.
- You don’t have permission to view the report. Ask the Admin to check your role.
Why doesn’t an order I know was delivered today show up?
The order must meet two conditions:
- Be in “Delivered” status (the flow’s terminal status)
- Have a COD amount greater than zero
If the order didn’t have COD assigned when it was created, it won’t appear here. Orders in intermediate statuses (in transit, assigned, etc.) don’t appear either.
My orders never come in with a COD amount, what’s missing?
The service level they’re created with must allow collection. It’s a separate setting from this module: in Rates → Service Levels, when editing the service, there’s a “Allow cash on delivery (COD)” switch that’s off by default. While it’s off, the amount field doesn’t even appear when creating the order, so there will never be anything to report here.
Enabling this module doesn’t enable collection by itself: this panel is the report of money already collected, and the permission to collect lives in each service.
The totals I see don’t match the courier’s in the app
They shouldn’t differ — both views use exactly the same formula and the same data source. If you see a difference, check:
- That both are using the same date range and same time zone
- That both are filtering by the same courier
If they still don’t match, report it to the support team.
Can I see an order’s detail?
In the current version of the panel there’s no direct link to the detail. You can copy the ID and search for it in the Orders list from the main menu.
What does the “N/A” currency mean?
These are very old orders created without an explicit currency assigned. The system groups them separately so they don’t mix with modern ones. Ideally there should be few of them, and only in historical data.
Support
Found an amount that doesn’t match, or strange behavior? Since the module is in Beta, report the case to the support team with:
- The date range you’re checking
- The filter applied (customer / courier)
- The amount you expected vs. what you see
- A screenshot if possible
This helps us stabilize the module before it leaves Beta.
Still have questions?
Our support team replies within 24h by email or WhatsApp.