Skip to content
TAQNIX
Odoo ModulesWordPress PluginsWordPress ThemesShopify ThemesApp TemplatesScripts & UtilitiesBlogSell on TAQNIX

Petty Cash & Expense Vouchers for Odoo 19 Community documentation

A guide to petty cash: the funds, the vouchers, the approval, the payment and the replenishment, the voucher and the cash book.

Documents version 1.0.0Updated Oct 23, 2026

Start here

In plain words: A taxi, a box of paper, a courier: small expenses paid in cash from a drawer. Without a system the drawer never balances, the receipts get lost and nobody knows how much is left. Petty Cash & Expense Vouchers runs the fund in Odoo Community: a voucher per expense with its receipts, an approval limit, payment from the fund with the accounting entry, replenishment up to the float, and a cash book for any period.
The expense vouchers, a voucher waiting for approval, and the cash book.
The expense vouchers, a voucher waiting for approval, and the cash book.
Tip: The fund is an imprest: a fixed float that you top up. The balance is always the real balance of the cash account.

What you get

FeatureWhat it does
FundsA fund sits on a cash journal, with a custodian, a float, an alert level and an approval limit.
Expense vouchersSeveral lines (account, description, amount, analytic account), the payee, the receipt number and the receipts attached.
Approval limitA voucher up to the limit is approved when it is submitted; a larger one waits for a manager.
PaymentPay from the fund: the entry is posted on the cash journal. A fund that does not hold enough cash refuses.
ReplenishTop the fund up to its float from a bank account, with the entry.
Balance and alertThe live balance of each fund, how much to replenish, and a Low flag.
Printable voucherA PDF voucher with the signature boxes.
Cash bookReceipts, payments and a running balance for any period, with the opening and closing balance.
ReverseA manager can reverse a payment: the cash comes back to the fund.
ArabicEverything is translated and works right to left.

Requirements

ItemDetails
Odoo19.0 (Community or Enterprise)
Apps neededInvoicing (account)
LicenseOPL-1 (Odoo Proprietary License v1.0)

Install

  1. Unzip the package. Inside is taqnix_petty_cash.zip; unzip it to get the folder taqnix_petty_cash.
  2. Copy the folder into one of the addons_path folders of your Odoo server and restart Odoo.
  3. Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
  4. Remove the “Apps” filter, search Petty Cash & Expense Vouchers and press Install.
# or from the command line
./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_petty_cash --stop-after-init

Create a fund

In plain words: In Accounting → Accounting → Petty cash → Funds click New. Choose a cash journal (create one in Accounting → Configuration → Journals if needed), the custodian, the float, the alert level and the approval limit. Then Replenish to put the first cash in.
The funds with their balance.
The funds with their balance.
A fund.
A fund.
FieldMeaning
Cash journalThe journal of the drawer. One journal belongs to one fund.
FloatThe amount the fund is topped up to.
Alert belowThe fund is flagged Low under this balance.
Approval limitVouchers above it need a manager. A limit of 0 means every voucher does.

Replenish

In plain words: Replenish on the fund proposes the amount that brings it back to the float, and the bank account the money comes from. The entry (debit the cash account, credit the bank) is posted at once. A top-up above the float is refused.

Record an expense

In plain words: In Petty cash → Expense vouchers click New. Choose the fund, write who was paid and why, add a line for each expense with its account and amount, attach the receipt in the chatter (the Receipts button counts them) and click Submit.
The vouchers of the funds.
The vouchers of the funds.

Approval

In plain words: A voucher within the approval limit is approved when it is submitted. A larger one goes to To approve: a petty cash manager clicks Approve or Refuse (with the reason).
A voucher above the limit waits for a manager.
A voucher above the limit waits for a manager.

Pay from the fund

In plain words: On an approved voucher click Pay from the fund. The entry is posted on the cash journal (debit the expense accounts, credit the cash account) and the voucher is Paid. If the fund holds less cash than the voucher, the payment is refused and you replenish first.
A paid voucher, with its entry.
A paid voucher, with its entry.
Tip: Paid by mistake? A manager clicks Reverse the payment: the entry is reversed and the cash is back in the fund.
In plain words: Print gives the voucher with the lines, the total and the signature boxes (received by, approved by, custodian). Cash book on the fund asks for a period and prints the receipts, the payments and the running balance, with the opening and the closing balance.
The voucher.
The voucher.
The cash book of a month.
The cash book of a month.

Who can do what

WhoCan
CustodiansCreate and submit vouchers, pay approved ones, print, read the funds.
Petty cash managersAlso approve, refuse and reverse, replenish, and configure the funds.
Other usersNo access.

Arabic and right to left

A voucher in an Arabic interface.
A voucher in an Arabic interface.

Limits

LimitDetail
Company currencyThe vouchers are in the currency of the company.
No taxesA voucher posts the amounts as they are, without tax lines.
One approval levelA single limit per fund: above it, a manager.
Cash countsA cash count against the balance is done on the cash journal as usual.

For developers

In plain words: Skip this chapter if you only use the module.
v = env['taqnix.petty.voucher'].create({'fund_id': fund.id, 'payee': 'City Taxi',
    'line_ids': [(0, 0, {'account_id': travel.id, 'name': 'Taxi', 'amount': 46.0})]})
v.action_submit()   # approved at once if within the limit
v.action_pay()      # posts the entry on the fund journal
fund.invalidate_recordset(); fund.balance

Troubleshooting

ProblemWhat to do
The cash journal is not offeredCreate a journal of type Cash first.
Not enough cash in the fundReplenish the fund, then pay.
Replenish is refusedIt would take the fund above its float: lower the amount.
I cannot approveYour user needs the group Petty cash: Manager.

Updating and removing

Replace the folder with the new version, restart Odoo and run -u taqnix_petty_cash. Your funds, vouchers and entries are kept.

Support

Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.