npm.io
0.2.0 • Published 2d agoCLI

india-saas-cost

Licence
MIT
Version
0.2.0
Deps
0
Size
11 kB
Vulns
0
Weekly
0

india-saas-cost

What SaaS really costs an Indian buyer, past the sticker — as two honest numbers, because the two hidden layers hit different buyers:

  • Forex markup (~3.5%) on dollar-billed tools. Real and unavoidable — an Indian card converts above the mid-market rate, and this is not reclaimable.
  • 18% GSTconditional. A GST-registered business reclaims it as input credit (foreign B2B is reverse-charged, so the vendor bills no GST), so its net cost excludes GST. Only an unregistered buyer bears the +18%. Some Indian vendors already include GST in the sticker.

So this returns net (registered business, forex only) and gross (can't reclaim GST). Zero dependencies. Methodology matches FindThatSoftware.

Install

npm install india-saas-cost

Usage

import { indiaAllInCost } from "india-saas-cost";

// A $20/mo tool, USD→INR mid-market rate 88
indiaAllInCost({ price: 20, currency: "USD", rate: 88 });
// {
//   net: 1822,        // ₹ for a registered business (forex only, GST reclaimed)
//   gross: 2149,      // ₹ if you can't reclaim GST (net + 18%)
//   netAnnual: 21864,
//   grossAnnual: 25788,
//   naive: 1760,      // mid-market, before markup and GST
//   foreign: true,
//   forexPremiumPct: 3.5,
//   gstPct: 18
// }

// A rupee-billed tool: no forex. net = sticker (GST reclaimed), gross = +18%
indiaAllInCost({ price: 1000, currency: "INR" }); // { net: 1000, gross: 1180, ... }

// Per-seat pricing multiplies with team size
indiaAllInCost({ price: 12, currency: "USD", rate: 88, perSeat: true, seats: 5 });

CLI

npx india-saas-cost 20 --usd --rate 88
# India cost (registered business): ₹1,822/mo  (₹21,864/yr)
#   ₹2,149/mo if you can't reclaim GST
#   sticker converts to ₹1,760 mid-market, +3.5% forex (not reclaimable)

API

indiaAllInCost({ price, currency?, rate?, forexMarkup?, gstRate?, perSeat?, seats? })

Option Default Notes
price Sticker price (required)
currency "INR" e.g. "USD"
rate INR per 1 unit of currency (required for non-INR)
forexMarkup 0.035 Card forex markup, as a fraction
gstRate 0.18 GST, as a fraction
perSeat false Price is per user
seats 1 Team size (with perSeat)

Returns { net, gross, netAnnual, grossAnnual, naive, foreign, forexPremiumPct, gstPct }.

Notes

  • Which number is "yours"? If you're GST-registered (most businesses), net — you reclaim GST as input credit. If you can't reclaim it (unregistered, or the price is GST-exclusive and you're a consumer), gross.
  • Figures are indicative estimates, not billing figures. Your card's markup, plan and negotiated rate will vary.
  • Need actual numbers for a specific tool? Look it up on FindThatSoftware.

License

MIT FindThatSoftware

Keywords