Process payment result
After the customer completes the payment process, the AppotaPay system notifies the result to the partner's system through 2 forms
- It is necessary to carefully check the status, amount & signature field parameters
- It is recommended to call the api to check the transaction status to ensure the most accurate updated results
- IPN is only returned when the transaction is successful
Redirect
Method: GET
Params in query
partnerCode=
TEST&apiKey=oMhJpkz7K6HDcR6S&amount=50000& currency=VND&orderId=5f61d06311019&bankCode=SHB&paymentMethod=ATM&paymentType=WEB&appotapayTransId=AP200910016654B&errorCode=0&message=Thành+công&transactionTs=1600246241&extraData=test+test&signature=9487dd169d2178b249d1503d2f2d7f01d1210517f6ae3a2703760cb218c838f3
IPN (Instant Payment Notification)
Server AppotaPay send payment result to notifyUrl
Header
{
    "Content-Type": "applicaton/json"
}
Method: POST
HTTP Request:
| Params | Data type | Description | 
|---|---|---|
| errorCode | Integer | Error code | 
| message | String | Error code detail | 
| partnerCode | String | Your Partner code | 
| apiKey | String | API KEY | 
| amount | Integer | Payment amount | 
| currency | String | Currency code (default: VND) | 
| orderId | String | Order ID | 
| bankCode | String | Bank Code | 
| paymentMethod | String | Payment method | 
| paymentType | String | Payment type (default: WEB) | 
| appotapayTransId | String | AppotaPay transaction ID | 
| transactionTs | Integer | Payment time | 
| extraData | String | Extra data | 
| signature | String | Signature check data  signature =   data:  | 
Example Request:
{
    "errorCode":0,
    "message":"Thành công",
    "partnerCode": "TEST",
    "apiKey": "oMhJpkz7K6HDcR6S",
    "amount":50000,
    "currency":"VND",
    "orderId":"5f5b46cb73fd0",
    "bankCode":"SHB",
    "paymentMethod":"ATM",
    "paymentType":"WEB",
    "appotapayTransId":"AP200910014125B",
    "transactionTs":1599817433,
    "extraData":"test test",
    "signature":"d6ff2d38c2b1167c6d17b9dbb1380347b24c1bf912dc442dbd018b2e1ed74f3d"
}
HTTP Response:
HTTP Code: 200
Body:{"status": "ok"}
Transaction Status
use errorCode param for checking transaction status
| Error Code | Status | 
|---|---|
| = 0 | Transaction successfully | 
| != 0 | Transaction failed or pending | 
Checking data
Use signature param to check response data from AppotaPay.