Compute TCS
/api/v1/tcs/computeComputes Tax Collected at Source (TCS) for LRS (Liberalised Remittance Scheme) cross-border orders.
When to use:
- Amount exceeds TCS slab threshold — The transaction amount is greater than the configured slab threshold (e.g., ₹10,00,000) for the current financial year.
- Customer declares TCS voluntarily (
is_tcs_declared: true) — The customer has intentionally declared TCS even when the current transaction amount is below the slab threshold. This is applicable when the customer has already exceeded the slab threshold across multiple transactions in the current financial year.
Note: This API is only applicable for orders with flow_type: LRS. It will return an error for non-LRS purpose code orders.
Bearer token. Get token →Header Parameters
| Field | Details |
|---|---|
Request-Timestampstringdate-time | ISO 8601 UTC timestamp of the request. Used for idempotency and audit. |
Request-IDstring | Use a global unique identifier [GUID] for the request. Constraints Minimum length: 1 characterMaximum length: 50 characters |
Request Bodyrequired
| Field | Details |
|---|---|
order_idstringrequired | The order ID for which TCS needs to be computed. Must be a valid cross-border order belonging to the merchant. |
amountobjectrequired2 nested fields | The amount on which TCS should be calculated. |
is_tcs_declaredboolean | Set to true when the customer voluntarily declares TCS. When true, the full amount is taxed at the applicable TCS rate, bypassing the threshold deduction. Defaults to false. Constraints Default value: false |
Response
| Field | Details |
|---|---|
tcs_applicableboolean | Whether TCS is applicable for this transaction. |
tcs_ratestring | The TCS rate applied (percentage). |
original_amountobject2 nested fields | The original amount passed in the request. |
valueintegerint64 | Amount in paisa. |
currencystring | Currency code. |
computed_amountobject2 nested fields | The total amount including TCS (original + TCS). Same as original when TCS is not applicable. |
slab_idstring | Identifier of the matched TCS slab. |
is_flat_rateboolean | Whether the slab uses a flat rate or threshold-based rate. |
flat_ratestring | The flat rate value (present only if is_flat_rate is true). |
financial_yearstring | The current financial year (Indian FY April–March). |
breakdownobject2 nested fields | Detailed breakdown of the TCS computation. |
Status Codes
200 | TCS computation result. |
400 | Validation error. |
401 | Authentication failed — missing, expired, or invalid Bearer token. |
404 | Order not found. |
500 | An unexpected error occurred on the server. |
curl --request POST \
--url https://pluraluat.v2.pinepg.in/api/v1/tcs/compute \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--header 'Request-ID: a1b2c3d4-e5f6-7890-abcd-ef1234567890' \
--header 'Request-Timestamp: 2024-10-01T10:30:00Z' \
--data '{
"order_id": "v1-260514071718-aa-XqVzeA",
"amount": {
"value": 100000,
"currency": "INR"
},
"is_tcs_declared": true
}'{
"tcs_applicable": true,
"tcs_rate": "20.00",
"original_amount": {
"value": 100000,
"currency": "INR"
},
"computed_amount": {
"value": 120000,
"currency": "INR"
},
"slab_id": "slab-lrs-2026-27",
"is_flat_rate": false,
"financial_year": "2026-27",
"breakdown": {
"amount": {
"value": 100000,
"currency": "INR"
},
"tcs": {
"value": 20000,
"currency": "INR"
}
}
}