Odoo Module ยท Nepal TDS / Withholding Tax

Nepal โ€“ TDS
(Withholding Tax)

Automate the TDS obligations of the Nepalese Income Tax Act in Odoo: a configurable withholding-tax rate table, TDS computed on every vendor bill, a balanced TDS journal entry on posting, a printable TDS certificate, and a period TDS return ready to file with the FBR.

Localization Depends: l10n_np, account Auto-installs with l10n_np Author: pcsoft LGPL-3
โœ”

TDS Certificate

Payer (PAN/VAT)
ABC Traders Pvt. Ltd.70123456
Payee (PAN/VAT)
Consultancy Co.12345678
Bill ยท Rate
BILL/2026/09/0001Service Fees ยท 15%
TDS withheldRs 15,000
Vendor Bill
TDS RateService Fees 15%
TDS AmountRs 15,000
0starter TDS rates
0TDS certificate
0bill โ†’ FBR return
0hardcoded rates
๐Ÿ“ŠRate tableConfigurable, FBR-aligned
๐ŸงพBill TDSAuto-computed on vendor bills
๐Ÿ““TDS entryBalanced journal entry on posting
๐Ÿ›ก๏ธExempt partnersOne-tick TDS exemption
๐Ÿ“ŒCertificatePrintable per bill
๐Ÿ“ˆTDS returnPeriod report for the FBR
How it works

From a bill to the FBR, in four steps

The whole TDS lifecycle is wired into the bill you already create. Nothing extra to key in โ€” the entry, certificate and return follow automatically.

1

Pick a TDS rate

Choose a TDS rate on the vendor bill. The TDS amount is computed as total payable ร— rate.

2

Post the bill

On posting, a separate TDS entry is created: debit Accounts Payable, credit TDS Payable.

3

Print the certificate

Issue the TDS certificate to the payee, with both PAN/VAT numbers and the amount.

4

File the return

Run the TDS return for the quarter โ€” every TDS entry listed with a grand total.

Features

Everything TDS, in one module

Built on top of l10n_np (Nepal โ€“ Accounting), so it slots straight into a Nepal-localised Odoo book.

๐Ÿ“Š

Configurable TDS rate table

Ten starter rates by category (service fees, rent, interest, insurance, dividend, commission, air ticket, labour). Reference data you edit โ€” not hardcoded โ€” so you can follow the current FBR schedule.

๐Ÿงพ

TDS on vendor bills

Pick a rate on any vendor bill or refund. The TDS amount is computed automatically as total amount payable ร— rate, and stays zero when the partner is TDS-exempt.

๐Ÿ““

Separate TDS entry on posting

Posting a TDS bill creates its own journal entry โ€” debit Accounts Payable, credit a TDS Payable liability โ€” so the billโ€™s totals and tax lines are never disturbed.

๐Ÿ›ก๏ธ

TDS-exempt partners

Mark a partner as TDS-exempt (e.g. a valid exemption certificate) and note the reference. No TDS is withheld on their bills.

๐Ÿ“Œ

Printable TDS certificate

A clean certificate per bill showing payer and payee PAN/VAT numbers, the bill, the rate, the TDS amount and a certificate number.

๐Ÿ“ˆ

TDS return (period report)

A wizard lists every TDS entry in a period (default: the current quarter) with a grand total โ€” ready to file with the FBR.

The accounting

The TDS entry, explained

For a vendor bill with a TDS rate, posting creates a separate TDS journal entry (linked to the bill via the TDS Entry field). It reduces what you owe the vendor and records your liability to the FBR. For a vendor refund the entry is reversed.

TDS journal entry (on posting)
Debit
Accounts Payable (partner)
TDS amount
Credit
TDS Payable (company)
TDS amount

Why a separate entry?

The TDS is recorded as its own entry โ€” not as lines on the bill โ€” so the billโ€™s totals (amount_untaxed / amount_tax / amount_total) are untouched. The TDS base is the total amount payable on the bill (tax-inclusive). The TDS Payable account is the liability you carry until you remit it to the FBR.

Starter rates

The bundled TDS rate table

Ten starter rates load on install. They are defaults for an accountant to review against the current FBR schedule โ€” adjust or add any rate in Accounting โ†’ Nepal TDS โ†’ TDS Rates.

RateCategoryRate
Service Feesservice15%
Rent โ€“ Residentialrent10%
Rent โ€“ Commercialrent15%
Interest (Bank, to Resident)interest5%
Insurance Premiuminsurance15%
Dividenddividend10%
Commission / Brokeragecommission15%
Air Ticket (Non-Resident)air ticket15%
Labour / Contract Worklabour15%
Other (Custom)other0%
Certificate

A TDS certificate, ready to print

One click on the bill (or from the payment) prints a certificate the payee can keep โ€” showing both PAN/VAT numbers, the bill, the rate and the amount withheld.

โœ”

TDS Certificate

Certificate No. TDS-2026-0007 ยท Issued 08 Sep 2026

Payer
ABC Traders Pvt. Ltd.
PAN/VAT 70123456
Payee
Consultancy Co.
PAN/VAT 12345678
Bill No.
BILL/2026/09/0001
TDS Rate
Service Fees ยท 15%
TDS withheldRs 15,000
Get started

Install & configure

Installation

  1. Unzip the moduleDrop the l10n_np_tds folder into your Odoo addons path.
  2. InstallRun the command below โ€” or just install l10n_np, which auto-installs it.
odoo-bin -i l10n_np_tds

Configuration

  1. TDS Payable accountSet the TDS Payable Account on the company (Settings โ†’ Nepal Localization).
  2. TDS ratesReview the starter rates in Accounting โ†’ Nepal TDS โ†’ TDS Rates against the FBR schedule.
  3. Exempt partnersTick Exempt from TDS on partners that hold a valid exemption certificate.
FAQ

Frequently asked

Does the TDS entry change the billโ€™s totals?

No. The TDS is a separate journal entry, not lines on the bill, so the billโ€™s amount_untaxed, amount_tax and amount_total are untouched.

What is the TDS base?

The total amount payable on the bill (tax-inclusive). TDS amount = total payable ร— rate.

Can I skip TDS for a partner?

Yes. Mark the partner Exempt from TDS (and note the exemption reference) and no TDS is withheld on their bills.

Does it file the return to the FBR automatically?

No. The TDS return is a report to file manually on the FBR citizen portal. Automatic portal submission is a planned later module.

Which Odoo versions are supported?

The mainline download is for Odoo 19. A version-17 port lives on the odoo-17 branch of the GitHub repo.

Ready to automate Nepal TDS?

Download the module and put your withholding-tax obligations on autopilot.

โƒ Download l10n_np_tdsfor Odoo 19 ยท LGPL-3

Out of scope

  • FBR portal submission โ€” the TDS return is a report to file manually; automatic submission to the FBR citizen portal is a later module.
  • Statutory rate table โ€” the bundled rates are starter defaults for an accountant to review, not a complete statutory schedule.

Module

l10n_np_tds โ€” Nepal TDS (Withholding Tax). Companion to l10n_np (Nepal โ€“ Accounting).

Author: pcsoft ยท License: LGPL-3 ยท GitHub