...
This API will compute and fetch the tax details. Tax details can optionally be stored in MiniOMS RMS against a unique reference no based on the request parameter “store”.
Tax Computation Logic
The user uploads the applicable tax rate rule (e.g. GST_APPAREL, GST_FOOTWEAR, GST_5, GST_8) using the UI for all HSNs
Caller invokes the APIs with line items (with HSN codes and tax rule)
If Tax Rule is given, that is consumed directly
Else, The system finds the applicable tax rate using the following logic
Find the rule for matching 8 digit HSN code.
If not found, then find rule for matching 6 digit HSN code
From the selling price and state data compute
Base price
Taxes
Tax breakup
Request Params
store
Parameter Name | Data Type | Description | Mandatory |
| Boolean | This parameter specifies if the tax details need to be stored or not. This parameter is true if tax details need to be stored. | yes |
...
"fromZip": "560102",
"referenceNoorderCode": "order1234",
"shipmentCode": "s101",
"toStatetoBillingState": "Gujarat",
"toTin"toBillingZip": "394518",
"toShippingState": "19AADCP7081J1ZZGujarat",
"toZiptoBillingZip": "394518",
"toTin": "19AADCP7081J1ZZ",
"lineItems": [
{
"actualSellingPricePerUnit": 100.00,
...
Parameter Name | Data Type | Description | Mandatory |
| String | Country Code of Seller | yes |
| String | State of Seller | yes |
| String | Seller GSTIN | yes |
| String | Zip/Pin code of Seller | yes |
| String | Unique Id to identify the order/shipment against which tax is Identifier for the order whose tax details are being calculated | yes |
| String | Identifier for the shipment whose tax details are being calculated | yes |
| String | Shipping State of Customer | yes |
| String | Shipping Zip/Pin code of Customer | yes |
| String | Billing State of Customer GSTIN | noyes |
| String | Billing Zip/Pin code of Customer | yes |
| String | Customer GSTIN | no |
| Object[] | Order level extra attributes to be stored | no |
| String | Name of attribute | yes |
| String | Value of attribute | yes |
| Object[] | Line Items for which tax details needs to be calculated | yes |
| Double | Selling price of the item per unit | yes |
| String | HSN code for the product | yes |
| Long | Unique Id to identify the line item | yes |
| Integer | Quantity of the product | yes |
| String | SKU of the product | yes |
| String | Order Item Code in your system | no |
| String | Channel Sku of item | no |
| String | Tax Rule for the product. If passed, this will be used for tax calculation. Otherwise tax rule will be fetched from the HSN-Tax Rule mapping uploaded on UI | no |
| Object[] | LineItem level extra attributes to be stored | no |
| String | Name of attribute | yes |
| String | Value of attribute | yes |
...
]
}
]
}
FAQs
For which countries is tax computation supported by RMS?
Right now, tax computation is supported for India and UAE. For India, tax computation is supported for shipments being transported within India and outside India as well.
If the request parameter “store“ is being passed as true and the data is being stored, where can I see this stored data?
You can see the stored data in the RMS Reports section in RMS UI.
Since both billing and shipping states and zips are being passed in the request payload, how does RMS decide whether IGST is to be applied or CGST/SGST is to be applied?
If the “toTin“ field has some value that is not “NA“ or ““(empty string), then it is considered as a B2B transaction and the billing state/zip would be considered for tax computation. Otherwise, it would be considered as B2C transaction.