npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

bangla-money-format

v1.2.5

Published

🇧🇩 Complete Bengali/Bangla money & number formatting library for JavaScript. Convert numbers to Bengali text (ā§­ā§Ģ→āĻĒāρāϚāĻžāĻ¤ā§āϤāϰ āϟāĻžāĻ•āĻž), format Bangladesh Taka currency with proper comma placement (ā§§ā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļâ†’ā§ŗā§§ā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ). Perfect for React, Vue, Angular, Node.js a

Downloads

43

Maintainers

420nizam420nizam

Keywords

banglabengalimoneyformatnumbercurrencytakatraditionalscaleconverteraccuratecompoundlinguisticāĻŦāĻžāĻ‚āϞāĻžāĻŦāĻžāĻ‚āϞāĻž-āϟāĻžāĻ•āĻžāϟāĻžāĻ•āĻž-āĻĢāϰāĻŽā§āϝāĻžāϟāϏāĻ‚āĻ–ā§āϝāĻž-āϰ⧂āĻĒāĻžāĻ¨ā§āϤāϰbangladeshbengali-numberbengali-currencybangla-moneybangla-numberbangla-currencybangladesh-takabengali-textnumber-to-bengalinumber-to-banglabengali-formattingbangla-formattingfinancialfinanceaccountingcalculationmathematicslocalizationi18ninternationalizationsouth-asiatext-conversiondigit-conversioncrorelakhthousandmillionbilliontrillionāĻ…āĻ°ā§āĻŦ⧁āĻĻāĻ–āĻ°ā§āĻŦāύāĻŋāϞāĻĒāĻĻā§āĻŽāĻļāĻ™ā§āĻ–āϕ⧋āϟāĻŋāϞāĻžāĻ–āĻšāĻžāϜāĻžāϰcompound-numberstraditional-scalemodern-scalebengali-scriptbangla-scriptunicode-bengalibdt-currencybangladesh-currencymonetary-formattingprice-formattinginvoice-formattingreceipt-formattingecommercefintechbankingpaymentbangla-money-converterbengali-money-convertertaka-converterbangladesh-money-formatbengali-currency-formatterbangla-number-formattermoney-format-bangladeshcurrency-format-bengalinpm-bangla-moneyjavascript-bangla-moneynode-bangla-moneyreact-bangla-moneyvue-bangla-moneyangular-bangla-moneyjavascript-librarynumber-formattercurrency-converterbengali-npmbangladesh-npmbangla-jsbengali-jsindian-numberingsouth-asian-currencyfinancial-formattingpos-systeminvoice-generatorreceipt-generatoraccounting-softwarepoint-of-sale

Readme

Bangla Money Format

npm version License: MIT Downloads GitHub stars

A comprehensive Bengali/Bangla money and number formatting library with accurate compound numbers, traditional scales, English conversion, and modern short forms. Perfect for financial applications, e-commerce platforms, banking systems, and any application requiring Bengali number formatting.

Features

  • đŸ”ĸ Accurate Bengali Number Formatting: Convert numbers to Bengali text with proper compound number grammar
  • 💰 Money Formatting: Format currency with Bengali digits and text
  • đŸ›ī¸ Traditional Scale Support: Enhanced traditional Bengali number scales with proper terms
  • 🌍 English Conversion: Convert Bengali text to English equivalents
  • ⚡ Short Forms: Modern K, M, B, T notation support
  • 🔄 Dual Language: Support for both Bengali and English output
  • 💡 Highly Configurable: Extensive options for customization
  • 📏 Large Numbers: Support for numbers up to 10^20
  • ✅ Linguistically Accurate: Proper Bengali compound numbers with correct traditional forms
  • đŸŽ¯ ES6 & CommonJS: Both import and require supported

Installation

npm install bangla-money-format
yarn add bangla-money-format
pnpm add bangla-money-format

Quick Start

Using CommonJS (require)

const { toText, toBanglaMoney } = require("bangla-money-format");

// Basic usage
console.log(toText(1000000));
// Output: āĻĻāĻļ āϞāĻžāĻ– āϟāĻžāĻ•āĻž

console.log(toBanglaMoney(1000000));
// Output: ā§ŗā§§ā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ

console.log(toText(1500, { useShortForm: true }));
// 1.5K āϟāĻžāĻ•āĻž

console.log(toText(1500.75));
// āĻāĻ• āĻšāĻžāϜāĻžāϰ āĻĒāĻžāρāϚ āĻļāϤ āϟāĻžāĻ•āĻž āϏāĻ¤ā§āϤāϰ āĻĒāĻžāρāϚ āĻĒāϝāĻŧāϏāĻž

console.log(toText(1500.75, { textInEnglish: true }));
// one thousand five hundred taka seventy five paisa

Using ES6 Modules (import)

import { toText, toBanglaMoney } from "bangla-money-format";

// Basic usage
console.log(toText(1000000));
// Output: āĻĻāĻļ āϞāĻžāĻ– āϟāĻžāĻ•āĻž

console.log(toBanglaMoney(1000000));
// Output: ā§ŗā§§ā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ

console.log(toText(1500, { useShortForm: true }));
// 1.5K āϟāĻžāĻ•āĻž

console.log(toText(1500.75));
// āĻāĻ• āĻšāĻžāϜāĻžāϰ āĻĒāĻžāρāϚ āĻļāϤ āϟāĻžāĻ•āĻž āϏāĻ¤ā§āϤāϰ āĻĒāĻžāρāϚ āĻĒāϝāĻŧāϏāĻž

console.log(toText(1500.75, { textInEnglish: true }));
// one thousand five hundred taka seventy five paisa

Examples

// Bengali compound numbers (accurate)
console.log(toText(75));
// Output: āĻĒāρāϚāĻžāĻ¤ā§āϤāϰ āϟāĻžāĻ•āĻž

console.log(toText(555));
// Output: āĻĒāĻžāρāϚ āĻļāϤ āĻĒāĻžā§āϚāĻžāĻ¨ā§āύ āϟāĻžāĻ•āĻž

// English output
console.log(toText(1000000, { textInEnglish: true }));
// Output: ten lakh taka

// Short form
console.log(toText(1500000, { useShortForm: true }));
// Output: 1.5M āϟāĻžāĻ•āĻž

// Traditional scale
console.log(toText(1000000000, { useTraditionalScale: true }));
// Output: āĻāĻ•āĻļāϤ āϕ⧋āϟāĻŋ āϟāĻžāĻ•āĻž

Use Cases

Financial Applications

  • Banking Software: Account statements, transaction records
  • Invoice Generation: Professional invoices with Bengali amounts
  • Accounting Systems: Financial reports and calculations
  • Payroll Management: Salary slips and payment processing

E-commerce & Retail

  • Online Shopping: Product pricing in Bengali
  • Point of Sale (POS): Receipt generation
  • Inventory Management: Stock valuation
  • Price Display: Multi-language price formatting

Government & Education

  • Tax Calculation: Income tax and VAT calculations
  • Educational Software: Mathematics and finance teaching
  • Government Forms: Official document generation
  • Census Data: Population and economic statistics

Regional Applications

  • Bangladesh: BDT currency formatting
  • West Bengal: INR with Bengali text
  • Bengali Communities: Worldwide Bengali diaspora applications

API Reference

toText(number, options)

Converts a number to Bengali text representation with money formatting.

Parameters

  • number (Number): The number to convert
  • options (Object): Configuration options

Options

| Option | Type | Default | Description | | ----------------------- | ------- | ---------- | --------------------------------------- | | showCurrency | Boolean | true | Show currency symbol (ā§ŗ) | | currency | String | "ā§ŗ" | Currency symbol to use | | showTakaWord | Boolean | true | Include "āϟāĻžāĻ•āĻž" in the text | | useTraditionalScale | Boolean | false | Use traditional Bengali scales | | textInEnglish | Boolean | false | Convert Bengali text to English | | useShortForm | Boolean | false | Use K, M, B, T notation | | showEnglishEquivalent | Boolean | false | Show English equivalents in parentheses | | showFraction | Boolean | true | Include fraction part | | fractionPrecision | Number | 2 | Decimal places for fractions | | fractionUnit | String | "āĻĒāϝāĻŧāϏāĻž" | Unit for fraction part | | negativeFormat | String | "minus" | How to display negative numbers | | template | String | "{text}" | Output template for toText function |

toBanglaMoney(number, options)

Formats a number as Bengali currency without text conversion.

Parameters

  • number (Number): The number to format as currency
  • options (Object): Configuration options (same as toText)

toBanglaMoney Examples

const { toBanglaMoney } = require("bangla-money-format");

// Basic usage - only currency formatting
console.log(toBanglaMoney(1000));
// ā§ŗā§§,ā§Ļā§Ļā§Ļ

console.log(toBanglaMoney(50000));
// ā§ŗā§Ģā§Ļ,ā§Ļā§Ļā§Ļ

console.log(toBanglaMoney(1000000));
// ā§ŗā§§ā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ

console.log(toBanglaMoney(25000000));
// ⧺⧍,ā§Ģā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ

// Large numbers
console.log(toBanglaMoney(1000000000));
// ā§ŗā§§,ā§Ļā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ

// Decimal numbers
console.log(toBanglaMoney(1500.75));
// ā§ŗā§§,ā§Ģā§Ļā§Ļ

// Negative numbers
console.log(toBanglaMoney(-5000));
// -ā§ŗā§Ģ,ā§Ļā§Ļā§Ļ

// Custom currency symbol
console.log(toBanglaMoney(1000, { currency: "BDT" }));
// BDTā§§,ā§Ļā§Ļā§Ļ

// No currency symbol
console.log(toBanglaMoney(1000, { showCurrency: false }));
// ā§§,ā§Ļā§Ļā§Ļ

// Different negative format
console.log(toBanglaMoney(-1000, { negativeFormat: "parenthesis" }));
// (ā§ŗā§§,ā§Ļā§Ļā§Ļ)

Usage Examples

Basic Number Formatting

const { toText } = require("bangla-money-format");

// Compound numbers (accurate Bengali)
console.log(toText(75));
// āĻĒāρāϚāĻžāĻ¤ā§āϤāϰ āϟāĻžāĻ•āĻž

console.log(toText(55));
// āĻĒāĻžā§āϚāĻžāĻ¨ā§āύ āϟāĻžāĻ•āĻž

console.log(toText(99));
// āύāĻŋāϰāĻžāύāĻŦā§āĻŦāχ āϟāĻžāĻ•āĻž

// Small numbers
console.log(toText(1500));
// āĻāĻ• āĻšāĻžāϜāĻžāϰ āĻĒāĻžāρāϚ āĻļāϤ āϟāĻžāĻ•āĻž

// Large numbers
console.log(toText(1000000));
// āĻĻāĻļ āϞāĻžāĻ– āϟāĻžāĻ•āĻž

console.log(toText(10000000));
// āĻāĻ• āϕ⧋āϟāĻŋ āϟāĻžāĻ•āĻž

Traditional vs Modern Scale

// Modern scale (default)
console.log(toText(1000000000));
// āĻāĻ• āĻļāϤ āϕ⧋āϟāĻŋ āϟāĻžāĻ•āĻž

// Traditional scale with improved terms
console.log(toText(1000000000, { useTraditionalScale: true }));
// āĻāĻ•āĻļāϤ āϕ⧋āϟāĻŋ āϟāĻžāĻ•āĻž

console.log(toText(1000000000000, { useTraditionalScale: true }));
// āĻāĻ• āϞāĻ•ā§āώ āϕ⧋āϟāĻŋ āϟāĻžāĻ•āĻž

// With English equivalents
console.log(
  toText(1000000000000, {
    useTraditionalScale: true,
    showEnglishEquivalent: true,
  })
);
// āĻāĻ• āϞāĻ•ā§āώ āϕ⧋āϟāĻŋ (āĻāĻ• āĻŸā§āϰāĻŋāϞāĻŋāϝāĻŧāύ) āϟāĻžāĻ•āĻž

Improved Traditional Scale System

Version 1.2.0 introduces enhanced traditional Bengali scale terms:

| Scale | Value | Traditional Term | English Equivalent | | ------ | ----- | ---------------- | ------------------ | | āĻ…āĻ°ā§āĻŦ⧁āĻĻ | 10⁚ | āĻāĻ•āĻļāϤ āϕ⧋āϟāĻŋ | One Billion | | āĻ–āĻ°ā§āĻŦ | 10š⁰ | āĻāĻ• āĻšāĻžāϜāĻžāϰ āϕ⧋āϟāĻŋ | Ten Billion | | āύāĻŋāϞ | 10šš | āĻĻāĻļ āĻšāĻžāϜāĻžāϰ āϕ⧋āϟāĻŋ | Hundred Billion | | āĻĒāĻĻā§āĻŽ | 10š² | āĻāĻ• āϞāĻ•ā§āώ āϕ⧋āϟāĻŋ | One Trillion | | āĻļāĻ™ā§āĻ– | 10ÂšÂŗ | āĻĻāĻļ āϞāĻ•ā§āώ āϕ⧋āϟāĻŋ | Ten Trillion |

Bengali to English Conversion

// Convert Bengali text to English
console.log(
  toText(75000000000, {
    useTraditionalScale: true,
    textInEnglish: true,
  })
);
// ā§ŗā§­ā§Ģ,ā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļ (seventy five ten billion taka)
// ā§ŗā§§,ā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļā§Ļ (āĻāĻ• āĻ…āĻ°ā§āĻŦ⧁āĻĻ āϟāĻžāĻ•āĻž)

English Text Conversion

// Bengali text (default)
console.log(toText(125000));
// āĻāĻ• āϞāĻžāĻ– āĻŦāĻŋāĻļ āĻĒāĻžāρāϚ āĻšāĻžāϜāĻžāϰ āϟāĻžāĻ•āĻž

// English text
console.log(toText(125000, { textInEnglish: true }));
// one lakh twenty five thousand taka

// Traditional with English equivalents
console.log(
  toText(1000000000, {
    useTraditionalScale: true,
    showEnglishEquivalent: true,
  })
);
// āĻāĻ• āĻ…āĻ°ā§āĻŦ⧁āĻĻ (āĻāĻ• āĻŦāĻŋāϞāĻŋāϝāĻŧāύ) āϟāĻžāĻ•āĻž

Short Form Notation

// Bengali short form
console.log(toText(1500, { useShortForm: true }));
// 1.5K āϟāĻžāĻ•āĻž

console.log(toText(1500000, { useShortForm: true }));
// 1.5M āϟāĻžāĻ•āĻž

console.log(toText(1500000000, { useShortForm: true }));
// 1.5B āϟāĻžāĻ•āĻž

// English short form
console.log(toText(1500000, { useShortForm: true, textInEnglish: true }));
// 1.5M taka

Negative Numbers

console.log(toText(-5000, { negativeFormat: "word" }));
// āĻ‹āĻŖ āĻĒāĻžāρāϚ āĻšāĻžāϜāĻžāϰ āϟāĻžāĻ•āĻž

console.log(
  toText(-5000, {
    negativeFormat: "word",
    textInEnglish: true,
  })
);
// negative five thousand taka

Fractions

console.log(toText(1500.75));
// āĻāĻ• āĻšāĻžāϜāĻžāϰ āĻĒāĻžāρāϚ āĻļāϤ āϟāĻžāĻ•āĻž āϏāĻ¤ā§āϤāϰ āĻĒāĻžāρāϚ āĻĒāϝāĻŧāϏāĻž

console.log(toText(1500.75, { textInEnglish: true }));
// one thousand five hundred taka seventy five paisa

Custom Templates

// Text only
console.log(toText(1000000, { template: "{text}" }));
// āĻĻāĻļ āϞāĻžāĻ– āϟāĻžāĻ•āĻž

// Amount only with toBanglaMoney
console.log(toBanglaMoney(1000000));
// ā§ŗā§§ā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ

// Custom format using template
console.log(
  toText(1000000, {
    template: "Amount: {currency}{amount} | Text: {text}",
  })
);
// Amount: ā§ŗā§§ā§Ļ,ā§Ļā§Ļ,ā§Ļā§Ļā§Ļ | Text: āĻĻāĻļ āϞāĻžāĻ– āϟāĻžāĻ•āĻž

Traditional Bengali Number System

This library supports the traditional Bengali number system with proper scales:

| Scale | Bengali | English Equivalent | Value | | ------ | ------- | ------------------ | ----- | | āĻšāĻžāϜāĻžāϰ | āĻšāĻžāϜāĻžāϰ | Thousand | 10Âŗ | | āϞāĻžāĻ– | āϞāĻžāĻ– | Lakh | 10âĩ | | āϕ⧋āϟāĻŋ | āϕ⧋āϟāĻŋ | Crore | 10⁡ | | āĻ…āĻ°ā§āĻŦ⧁āĻĻ | āĻ…āĻ°ā§āĻŦ⧁āĻĻ | Billion | 10⁚ | | āĻ–āĻ°ā§āĻŦ | āĻ–āĻ°ā§āĻŦ | Ten Billion | 10š⁰ | | āύāĻŋāϞ | āύāĻŋāϞ | Hundred Billion | 10šš | | āĻĒāĻĻā§āĻŽ | āĻĒāĻĻā§āĻŽ | Trillion | 10š² | | āĻļāĻ™ā§āĻ– | āĻļāĻ™ā§āĻ– | Ten Trillion | 10ÂšÂŗ |

Short Form Reference

| Number | Bengali Short | English Short | | ----------------- | ------------- | ------------- | | 1,500 | 1.5K | 1.5K | | 15,000 | 15K | 15K | | 1,500,000 | 1.5M | 1.5M | | 15,000,000 | 1.5Cr | 15M | | 1,500,000,000 | 1.5B | 1.5B | | 1,500,000,000,000 | 1.5T | 1.5T |

Advanced Configuration

const customOptions = {
  showCurrency: true,
  currency: "ā§ŗ",
  showTakaWord: true,
  useTraditionalScale: false,
  textInEnglish: false,
  useShortForm: false,
  showEnglishEquivalent: false,
  showFraction: true,
  fractionPrecision: 2,
  fractionUnit: "āĻĒāϝāĻŧāϏāĻž",
  negativeFormat: "minus", // "minus", "word", "parenthesis"
  template: "{currency}{amount} ({text})",
};

console.log(toText(1234567.89, customOptions));

Compatibility

  • ✅ Node.js: 12.0.0+
  • ✅ Browser: All modern browsers
  • ✅ React: Full support
  • ✅ Vue.js: Full support
  • ✅ Angular: Full support
  • ✅ TypeScript: Type definitions included
  • ✅ ES6/CommonJS: Both module systems supported

Regional Support

  • 🇧🇩 Bangladesh: BDT (ā§ŗ) currency formatting
  • đŸ‡ŽđŸ‡ŗ West Bengal, India: INR (₹) with Bengali text
  • 🌐 Global Bengali Communities: Worldwide diaspora support

Performance

  • ⚡ Fast: Optimized for speed
  • 🔄 Lightweight: Minimal dependencies
  • 💾 Memory Efficient: Low memory footprint
  • 🧮 Accurate: Precise BigInt calculations

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Issues

If you find any issues or have feature requests, please create an issue on GitHub.

Keywords

Bengali/Bangla: āĻŦāĻžāĻ‚āϞāĻž āϟāĻžāĻ•āĻž āĻĢāϰāĻŽā§āϝāĻžāϟ, āĻŦāĻžāĻ‚āϞāĻž āϏāĻ‚āĻ–ā§āϝāĻž āϰ⧂āĻĒāĻžāĻ¨ā§āϤāϰ, āĻŦāĻžāĻ‚āϞāĻžāĻĻ⧇āĻļā§€ āϟāĻžāĻ•āĻž, āĻŦāĻžāĻ‚āϞāĻž āĻ…āĻ™ā§āĻ•, āϕ⧋āϟāĻŋ āϞāĻžāĻ– āĻšāĻžāϜāĻžāϰ, āĻ…āĻ°ā§āĻŦ⧁āĻĻ āĻ–āĻ°ā§āĻŦ āύāĻŋāϞ āĻĒāĻĻā§āĻŽ

English: bangla money format, bengali number converter, bangladesh taka formatter, bengali currency, bengali digits, crore lakh thousand, bengali math, number to bengali text, bangla calculator, bengali financial, south asian currency, bengali localization

Applications: invoice generator bengali, bengali accounting software, bangladesh banking, bengali ecommerce, bengali fintech, bengali payment gateway, bengali pos system, bengali receipt generator

Technical: nodejs bengali, javascript bengali, bengali npm package, bengali api, bengali sdk, bengali library, bengali utility, bengali formatting


Made with â¤ī¸ for the Bengali community