bd-income-tax
Calculate Bangladesh individual income tax in Python or from the command line. It covers the tax bands, the six taxpayer categories, the investment rebate and the minimum tax, and it formats amounts in lakh style or with Bangla digits.
No dependencies. Python 3.9+.
pip install bd-income-tax
Command line
$ bd-income-tax 850000 --investment 100000
Category General Taxpayer
Total income ৳8,50,000
Tax-free income ৳3,75,000
Taxable income ৳4,75,000
10% 3,75,001 – 6,75,000 ৳30,000
15% 6,75,001 – 10,75,000 ৳26,250
Gross tax ৳56,250
Investment rebate -৳15,000
Tax payable ৳41,250
Effective rate 4.85%
Net income ৳8,08,750
Options:
| Option | Meaning |
|---|---|
-c, --category |
general (default), female, senior, disabled, freedom-fighter, third-gender |
-i, --investment |
Eligible investment for the rebate. You can repeat it. |
--bn |
Show amounts in Bangla digits (৳৮,৫০,০০০) |
--json |
Print the full breakdown as JSON |
Several income amounts are added together: bd-income-tax 600000 250000.
Python
from bd_income_tax import calculate, format_bdt
result = calculate(
income={"salary": 800_000, "house_rent": 50_000},
investment={"sanchaypatra": 60_000, "dps": 40_000},
category="female",
)
result.tax_payable # 33750
result.breakdown.bands # tax charged in each band
result.rebate.amount # 15000
result.to_dict() # JSON-ready
format_bdt(result.net_income, symbol=True) # '৳8,16,250'
Other helpers:
calculate_tax(income, category): gross tax by band, before rebatecalculate_rebate(income, investment): the investment rebateformat_bdt,format_bangla,to_bangla_digits: lakh/crore and Bangla number formattingfuture_value(principal, monthly_deposit, annual_rate_pct, months)andemi(principal, annual_rate_pct, months): DPS and loan maths
Rules used
These rules apply to assessment years 2026-27 and 2027-28. They match the bd-income-tax-calculator web app.
Tax-free income by category
| Category | Tax-free income |
|---|---|
| General | ৳3,75,000 |
| Female | ৳4,25,000 |
| Senior citizen (65+) | ৳4,25,000 |
| Disabled person | ৳5,00,000 |
| Third gender | ৳5,00,000 |
| Gazetted war-wounded freedom fighter | ৳5,25,000 |
Tax bands, applied to income above the tax-free amount:
| Band | Rate |
|---|---|
| Next ৳3,00,000 | 10% |
| Next ৳4,00,000 | 15% |
| Next ৳5,00,000 | 20% |
| Next ৳20,00,000 | 25% |
| Above that | 30% |
Investment rebate: the lowest of 3% of total income, 15% of eligible investment, or ৳10,00,000.
Minimum tax: anyone whose income is above their tax-free amount pays at least ৳5,000.
Not covered: the wealth surcharge, which depends on net-wealth details.
Tax law changes with every Finance Act. Use this package as an estimate and check the latest NBR rules before you file.
License
MIT
Metadata
Release files for bd-income-tax 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| bd_income_tax-0.1.0.tar.gz | 9.7 kB | Without provenance | Details for bd_income_tax-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| bd_income_tax-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for bd_income_tax-0.1.0-py3-none-any.whl |
Total release size: 21.2 kB
Release files / bd_income_tax-0.1.0.tar.gz
| Download URL | bd_income_tax-0.1.0.tar.gz |
|---|---|
| Size | 9.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
357ef0d899037e879fe2cb4d27a4c37bff1f162a712776f92b87e0f46b2a0678
|
|
BLAKE2b-256 checksum How to use checksums |
4b10c7c17e8ffafffa5c47bb4d5c80bd0c73b63959a39c152df5b42f30fea3d9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / bd_income_tax-0.1.0-py3-none-any.whl
| Download URL | bd_income_tax-0.1.0-py3-none-any.whl |
|---|---|
| Size | 11.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d89b7fddeb9636136db8b22ef83d3aa17299e6169808d70ca96bfe0f713e21e7
|
|
BLAKE2b-256 checksum How to use checksums |
f772f677ac966d2314c26ca8476d6022e6f7bfe3c7164ab2a6074933e4517328
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for bd-income-tax 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.