Pay-in Status & Events (India UPI)
/v1/h2h/payin-instances/:transactionIdpayin:createGet the current status of a UPI pay-in. You can also use the shared
GET /v1/transactions/:id endpoint, which returns the same
rail, railLabel, and currency fields.
Path parameters
| Field | Type | Required | Description |
|---|---|---|---|
transactionId | string | Yes | transactionId from the create response |
Example
cURL
curl -X GET https://api.transacty.ai/v1/h2h/payin-instances/{transactionId} \
-H "X-Transacty-Key: $TRANSACTY_KEY" \
-H "X-Transacty-Timestamp: $TS" \
-H "X-Transacty-Signature: $SIG" \
-H "Content-Type: application/json"Response fields
| Field | Type | Description |
|---|---|---|
transactionId | string | Public transaction id |
status | string | pending, success, or failed |
amount | string | Requested amount (unit matches currencySymbol at create) |
currency | string | Pay-in side currency from create (e.g. INR or USDT) |
settlementCurrency | string | Merchant settlement currency — always USDT on success |
rail | string | india |
railLabel | string | Human label for badges |
tradeEventId | number | Current UPI lifecycle event (see table) |
When polling the portal/transaction detail, the same lifecycle value is available at
metadata.payinSnapshot.tradeEventId.
UPI trade events
Use these for progress indicators on a transaction detail view:
| Event id | Meaning | Suggested status |
|---|---|---|
1 | Trade initiated | Processing |
2 | Waiting for payment / UPI ready | Awaiting payment |
3 | Buyer confirmed, verifying | Verifying |
4 or 6 | Completed | Success |
5 | Disputed | Under review (stays pending until resolved) |
9 | Expired | Failed |
A wrong UTR may enter dispute (event 5). Operations may correct and complete it
as event 4 without the merchant resubmitting. Do not treat event 5 as a final
failure — keep the transaction pending in your UI until it resolves.
India completes on events 4 or 6. Europe (a different product) uses eventId
5 to indicate pay-in success. Do not share success logic between the two rails.
See Europe → Pay-in Status & Events.