Skip to main content

Financial Controls and Audit

Financial controls illustration

COD remittance and wallet settlement both create financial records. The purpose of the workflow is to make every cash or wallet settlement traceable from delivery completion to driver accounting.

What each action records

ActionCOD status after actionWallet impactHuman confirmation needed
Driver completes COD deliverycollectedNone for settlementNo, created by delivery completion
Dispatcher records cash remittanceremittedCredits the COD receiver wallet ledgerYes, cash must be received and counted
Driver/admin settles by walletsettled_by_walletDebits driver wallet by COD totalYes, settlement must be confirmed
Admin manual credit/debitNo COD status changeAdds or removes wallet balanceYes, requires finance/support reason

Audit trail

For each confirmed action, the system stores enough information to review the event later.

Cash remittance stores:

  • COD collection IDs.
  • Driver.
  • Amount remitted.
  • Remittance timestamp.
  • Actor who confirmed the remittance.
  • Optional reference and notes.

Wallet settlement stores:

  • COD collection IDs.
  • Driver.
  • Wallet transaction ID.
  • Amount settled.
  • Settlement timestamp.
  • Actor who confirmed the settlement.
  • Optional reference and notes.

Manual transaction stores:

  • Driver wallet.
  • Credit or debit type.
  • Amount.
  • Required reason.
  • Optional reference and notes.
  • Actor who created the correction.

Manual controls

Use these controls to keep reconciliation clean:

  • Require dispatchers to count cash before clicking Remit Selected.
  • Require references for weekly or shift-level remittance batches.
  • Use one driver per remittance batch where possible.
  • Do not mix cash remittance and wallet settlement for the same COD records.
  • Review driver accounting before large wallet settlements.
  • Use manual wallet transactions only for approved corrections.

Common scenarios

Driver hands over all cash

Use Dispatcher -> Remit Collections. Filter by driver and date, select the matching COD records, and click Remit Selected.

Result: COD records become remitted.

Driver keeps cash and pays from wallet

Use Settle by Wallet from dispatcher or from the driver's admin accounting tab.

Result: COD records become settled_by_wallet, and the driver wallet is debited by the COD total.

Driver wallet has earnings and COD pending

Wallet settlement uses the wallet's combined balance. It does not separate COD money from earnings. The debit amount is only the pending COD total, but it can reduce money that came from driver earnings or other wallet credits.

Cash count does not match selected COD

Do not confirm remittance. Recheck filters, dates, selected rows, and driver. If the difference is real, document it and use an approved support or finance process before creating manual adjustments.

COD was already settled

Do not try to remit it again. Check whether the status is remitted or settled_by_wallet.

Reconciliation checklist

  1. Review pending collected COD by driver.
  2. Match the selected total to the physical cash or wallet settlement decision.
  3. Confirm only one settlement path for each COD record.
  4. Add a reference when the settlement belongs to a finance batch.
  5. Reopen driver accounting after settlement and confirm the totals changed as expected.
  6. Use the wallet tab to inspect transaction details when there is a dispute.

Important behavior to remember

  • Wallet settlement deducts only the pending COD total, not the full wallet balance.
  • Wallet settlement requires enough wallet balance.
  • Cash remittance marks records as remitted.
  • Wallet settlement marks records as settled_by_wallet.
  • Manual wallet transactions do not change COD record status.
Ask Ondi AI