Tax Determination
How Neriyam picks the right tax components and rates on every transaction — with country-aware seeding.
Tax Determination#
Neriyam's tax engine is built for global use. The same three-tier model works whether you operate in India, the UK, the US, Canada, Australia, Germany, or anywhere else. When your organization is created, Neriyam looks at the country you picked and seeds a full set of tax components, tax groups, and applicability rules tailored to that jurisdiction.
This page explains the model and the country-specific seed data. For the admin UI, see Settings › Tax Setup.
The three tiers#
All tax setup lives in Settings › Tax Setup, organised as three stacked tabs:
- Tax Components — the individual levies on a tax invoice (e.g. CGST, VAT, State Tax, MwSt)
- Tax Groups — named bundles of components at specific rates (e.g. "GST 18%", "VAT Standard", "California Sales Tax")
- Tax Rates — map item tax codes (HSN/SAC for India, commodity or product type elsewhere) to a tax group, with effective-from dates
A tax component is a single line on a tax invoice. A tax group is the bracket users think about ("GST 18%") that internally expands into the right components based on applicability rules. A tax rate ties an item's tax code to a tax group for a period of time.
Auto-seeding by country#
When a new organization is created, Neriyam reads the country from Company Profile and pre-populates Tax Components and Tax Groups so admins do not have to start from scratch. Currently supported seed sets:
India (IN) — GST#
Tax components:
- CGST — Central GST levied by the Central Government
- SGST — State GST levied by State Governments
- UTGST — Union Territory GST in UTs
- IGST — Integrated GST on inter-state supply
- CESS — Compensation Cess on luxury and demerit goods
Tax groups:
| Code | Name | Rate |
|---|---|---|
GST0 | GST Exempt / Nil Rated | 0% |
GST5 | GST 5% | 5% |
GST12 | GST 12% | 12% |
GST18 | GST 18% (most common slab) | 18% |
GST28 | GST 28% (luxury) | 28% |
EXEMPT | Exempt from GST | — |
Each rated group has component lines for every applicability — for example, GST 18% expands to CGST 9% + SGST 9% (intra-state), CGST 9% + UTGST 9% (intra-UT), or IGST 18% (inter-state).
United Kingdom (GB) — VAT#
Tax components:
- VAT — UK Value Added Tax administered by HMRC
Tax groups:
| Code | Name | Rate |
|---|---|---|
VAT_STD | VAT Standard Rate | 20% |
VAT_RED | VAT Reduced Rate (e.g. domestic fuel, children's car seats) | 5% |
VAT_ZERO | VAT Zero Rate (food, books, children's clothing) | 0% |
EXEMPT | VAT Exempt (insurance, finance, education) | — |
United States (US) — State sales tax#
Tax components:
- STATE_TAX — Sales tax at the state level
- COUNTY_TAX — Additional county sales tax
- CITY_TAX — Additional city sales tax
Tax groups (one per major state, plus a no-tax option):
| Code | State | Base rate |
|---|---|---|
TAX_CA | California | 7.25% |
TAX_TX | Texas | 6.25% |
TAX_NY | New York | 8% |
TAX_FL | Florida | 6% |
TAX_IL | Illinois | 6.25% |
TAX_PA | Pennsylvania | 6% |
TAX_OH | Ohio | 5.75% |
TAX_WA | Washington | 6.50% |
TAX_0 | No Sales Tax (Oregon, Montana, Delaware, New Hampshire) | 0% |
EXEMPT | Tax Exempt (resale, non-profit) | — |
Local jurisdictions can layer additional county/city tax on top — admins extend the seed as needed.
Canada (CA) — GST / PST / HST#
Tax components:
- GST — Federal Goods and Services Tax (5%)
- PST — Provincial Sales Tax (varies)
- HST — Harmonised Sales Tax in participating provinces
Tax groups (one per province):
| Code | Province | Rate |
|---|---|---|
HST_ON | Ontario (HST) | 13% |
HST_NS | Nova Scotia (HST) | 15% |
HST_NB | New Brunswick (HST) | 15% |
HST_NL | Newfoundland and Labrador (HST) | 15% |
HST_PE | Prince Edward Island (HST) | 15% |
GST_BC | British Columbia (GST + PST) | 12% |
GST_SK | Saskatchewan (GST + PST) | 11% |
GST_MB | Manitoba (GST + RST) | 12% |
GST_QC | Quebec (GST + QST) | 14.975% |
GST_AB | Alberta (GST only) | 5% |
GST_NT | Territories (GST only — NWT, Yukon, Nunavut) | 5% |
EXEMPT | Tax Exempt (basic groceries, prescription drugs) | — |
Australia (AU) — GST#
Tax components:
- GST — Australian GST administered by the ATO
Tax groups:
| Code | Name | Rate |
|---|---|---|
GST_STD | GST Standard | 10% |
GST_FREE | GST-Free (food, health, exports) | 0% |
EXEMPT | Input Taxed / Exempt (finance, residential rent) | — |
Germany (DE) — Mehrwertsteuer#
Tax components:
- MWST — German VAT administered by Bundeszentralamt für Steuern
Tax groups:
| Code | Name | Rate |
|---|---|---|
MWST_STD | MwSt Standard | 19% |
MWST_RED | MwSt Reduced (food, books, public transport) | 7% |
EXEMPT | Steuerbefreit (medical, educational, insurance) | — |
Other countries#
For any country not in the list above, Neriyam seeds a default placeholder structure:
- One generic TAX component
- Three groups:
TAX_STD(Standard Tax — 0%, edit to your rate),TAX_ZERO(Zero Rated),EXEMPT(Exempt)
Admins fill in the rates and add components / groups appropriate to the local tax system.
The seed is a starting point — every component, group, and applicability line is editable in Settings › Tax Setup. You can rename, add more, deactivate the ones you do not need, or replace the whole structure.
Tax codes on items#
Every item carries a tax code on its master record. The field stores a tax-classification identifier; what the identifier looks like depends on the country:
- India — HSN (Harmonised System of Nomenclature) for products, SAC (Services Accounting Code) for services
- EU / UK — typically a commodity code or your own internal classification
- US — typically a product taxability category, often defined per jurisdiction
- Other — your own coding convention
Neriyam looks the tax code up in the Tax Rates table to find which tax group applies, which tells it which components and rates to use.
Tax determination on transactions#
When tax is calculated for a line on a PO or SO, Neriyam:
- Reads the item's tax code
- Finds the matching Tax Rate with today's date in its effective window
- Pulls the linked Tax Group
- Filters the group's component lines by the document's place of supply
- Applies the rates to the taxable amount
Step 4 is where country differences kick in.
India — applicability splits by location#
Indian GST splits the rate across components based on where the supplier and customer are located:
- Intra-state — both parties in the same state → CGST + SGST
- Intra-UT — within a Union Territory → CGST + UTGST
- Inter-state — different states or exports → IGST
Place of supply comes from the GSTIN's state versus the document's shipping/delivery state. The tax-group component lines have an Applicability field (INTRA_STATE, INTRA_UT, INTER_STATE, or ALL); Neriyam picks the lines whose applicability matches the place-of-supply.
Single-rate countries — UK, Germany, Australia#
For VAT-style regimes a single rate applies regardless of geography (within the country). All component lines use applicability ALL. A UK VAT 20% group has one component line: VAT 20%, applicability ALL.
US sales tax#
Each state has its own group; admins typically associate each customer/location with the correct state group. County and city additions are layered on top by adding extra component lines or extra groups. Component applicability is generally ALL.
Canada#
A single province group handles either HST (one combined rate) or a federal GST + provincial component. Admins pick the right group on the transaction based on the province of supply.
Per-line tax on SO; per-header tax on PO#
This is the same pattern globally regardless of country.
A purchase order has a single delivery location at the header. Place-of-supply is decided once for the whole PO, and every line uses the same applicability slice. Each line still has its own tax code and rate, but the applicability is shared.
A sales order is more flexible — each line can ship to a different shipping location (warehouse). Place-of-supply is decided per line. One Indian SO can therefore legitimately produce CGST+SGST on some lines and IGST on others, if the lines ship to different states.
Reverse charge#
In several tax regimes (Indian GST, EU VAT cross-border B2B), the obligation to pay tax shifts from the supplier to the buyer — known as Reverse Charge (RCM).
Both PO and SO have a header-level Is Reverse Charge flag. When on, the document is flagged for RCM and the tax summary indicates who actually pays. Neriyam still records the tax amount on the document for reporting purposes.
Tax summary on a document#
At the bottom of every PO and SO, Neriyam shows a tax summary that groups tax amounts by component. The format depends on the country and place of supply.
India — intra-state SO:
CGST 9% ₹ 1,800.00
SGST 9% ₹ 1,800.00
──────────
Total Tax ₹ 3,600.00
India — inter-state SO:
IGST 18% ₹ 3,600.00
──────────
Total Tax ₹ 3,600.00
UK SO:
VAT 20% £ 4,000.00
──────────
Total Tax £ 4,000.00
US (California) SO:
State Tax 7.25% $ 725.00
──────────
Total Tax $ 725.00
Each example is a separate document. The summary on any given document shows tax for that document's country and place of supply only — it does not stack regions. The summary is computed automatically from the line items; you do not edit it directly.
Related#
- Sales orders — see tax in action on a customer document
- Settings › Tax Setup — admin walk-through of components, groups, and rates
- Items — where each item's tax code is set
Last updated