Pine LabsDOCS

Compute TCS

POST/api/v1/tcs/compute

Computes 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.

Requires Bearer token. Get token →

Header Parameters

FieldDetails
Request-Timestamp
stringdate-time

ISO 8601 UTC timestamp of the request. Used for idempotency and audit.

Request-ID
string

Use a global unique identifier [GUID] for the request.

Constraints
Minimum length: 1 characterMaximum length: 50 characters

Request Bodyrequired

FieldDetails
order_id
stringrequired

The order ID for which TCS needs to be computed. Must be a valid cross-border order belonging to the merchant.

amount
objectrequired2 nested fields

The amount on which TCS should be calculated.

is_tcs_declared
boolean

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

FieldDetails
tcs_applicable
boolean

Whether TCS is applicable for this transaction.

tcs_rate
string

The TCS rate applied (percentage).

original_amount
object2 nested fields

The original amount passed in the request.

value
integerint64

Amount in paisa.

currency
string

Currency code.

computed_amount
object2 nested fields

The total amount including TCS (original + TCS). Same as original when TCS is not applicable.

slab_id
string

Identifier of the matched TCS slab.

is_flat_rate
boolean

Whether the slab uses a flat rate or threshold-based rate.

flat_rate
string

The flat rate value (present only if is_flat_rate is true).

financial_year
string

The current financial year (Indian FY April–March).

breakdown
object2 nested fields

Detailed breakdown of the TCS computation.

Status Codes

200TCS computation result.
400Validation error.
401Authentication failed — missing, expired, or invalid Bearer token.
404Order not found.
500An unexpected error occurred on the server.
Run
Request
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"
    }
  }
}