index
Payment Status API
Server-to-Server Communication
To verify if a payment has been completed at the partner's end, Nuclei will use the partner’s payment status API to fetch the transaction status.
API Contract
Environment | Endpoint |
---|---|
UAT | https://bank.uat.com/payment-service/partner/transaction/status |
Production (CUG) | https://bank.prod.com/payment-service/partner/transaction/status |
Headers
- X-Body-Signature: Checksum (HMAC-SHA256), generated using partner-secret-key
- partner-key:
<NUCLEI-SDK-KEY>
Request Body (Parameters)
-
Request Structure:
{
"payload": "<encrypted message body AES>"
} -
Message body example (Decoded
payload
):{
"transactionId": "N-HBA14RA-FUI9QWO-CAIVDEK" <string>,
"requestTime" : 20170911115412 <milliseconds, long>
}
Response Body (from Partner)
-
Response Structure:
{
"payload": "<encrypted message body AES>"
} -
Message body example (Decoded
payload
):{
"status": "SUCCESS" <string>,
"amount": “5” <string>,
"transactionId": "N-HBA14RA-FUI9QWO-CAIVDEK" <string, 40 characters>,
“partnerTransactionId": "ZREF0123456ABC" <string>,
"createdAt": “1504010130” <milliseconds value in string>,
"errorMessage": "NA" <string>,
"paymentMode": "<partner payment mode>" <string>,
"statusCode": “00”,
}
Status Codes and Descriptions
-
statusCode:
"00"
: Success"01"
: Error
-
status:
SUCCESS
: Payment successfulFAILURE
: Payment failedIN-PROGRESS
: Payment in progressNOT FOUND
: Transaction not found