Refund Transaction

Refund transaction API is used to raise the refund transaction with PG. It supports partial as well as full refund. While doing create transaction, refund configurations need to be provided i.e. PARTIAL or FULL. In case of full refund, no duplicate refund transaction request will be allowed unless previously created refund transaction has failed. Generally, post settlement of the transaction, this API can be used to request for refund of partial amount or full amount. In case of AUTH-CAPTURE transaction, total amount that can be refunded should be equal to less than total captured amount.

Transaction Idempotency

If appUtr is present in the API request, then the refund transaction will be made idempotent. If another refund transaction is requested with the duplicate appUtr, then API will reject the refund transaction.

HTTP Status and Response Status Matrix

HTTP
Status
Response StatusResponse Message
200REFUNDEDSuccess
200FAILEDThis will be populated by processor
200ALREADY_REFUNDEDWe see a refund has already been processed.
200CREATED/PROCESSINGRefund transaction is created with processor and a response is awaited
200PROCESSINGRefund transaction is created with processor and is in processing state at gateway
400VALIDATION_ERRORIn case of VALIDATION_ERROR, field specific validation details will be returned.
400REJECTEDNo transaction found to refund. Please provide valid transactionUtr
400REJECTEDRefund transaction not allowed as original transaction still not processed or already refunded
400REJECTEDApp UTR provided is already used
400REJECTEDRefund transaction not allowed for invalid refund config
400REJECTEDRefund transaction window expired
400REJECTEDRefund amount cannot exceed the original transaction amount
400ERROR_FROM_PGThis will be populated by processor
404ERROR_FROM_PGThis will be populated by processor
404TRANSACTION_NOT_FOUNDThis will be populated by processor
500ERROR_FROM_PGThis will be populated by processor
500ERROR_FROM_PGError in processing gateway response
500INTERNALPROCESSING ERRORSomething went wrong at our end, try again after some time
502ERROR_CONNECTING_PGGateway connectivity unavailable
503ERROR_CONNECTING_PGGateway connectivity unavailable
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
required
length ≤ 45
^(txn|cptr|rfnd)[_0-9A-Za-z]+$

Unique transaction reference (UTR) number generated by checkout for original transaction/ capture transaction/refund transaction.

string
required
length ≤ 20
^[0-9]+$

Amount to be refunded. Amount is always considered in the smallest currency sub-unit i.e. to do a transaction of 100 USD, provide 10000 as value. In the case of three decimal currencies, such as KWD, BHD and OMR, pass the value as 100000.

string
required
length ≤ 3
^[A-Z]{3}$

Currency in which transaction is to be done. It should follow ISO 4217 describing three-letter codes for currency. e.g. USD, EUR, AED, INR etc.

string
required
length ≤ 250
^[A-Za-z0-9#_,/().&:\\-]+$

Description of the transaction.

notes
object

Notes of the transaction. O – These will be provided back in response of status check API.

app
object
required
string
length ≤ 18
^[0-9A-Za-z]+$

Order Id of the transaction. This Id will be carried forwarded with PG if supported. It may be presented in the bank records/statements.

Headers
string
Responses

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json