Alternative Payment Method (APM) Payment Flow
Step Description
Step | Description |
---|---|
1.1. | The payer checkout from the merchant website or application, the checkout request will send to merchant client frontend. |
1.2. | Then the checkout request will pass from the client frontend to the client backend. |
2. | The client backend will call the PACO /prepaymentUI API request to initiate the payment to PACO core. |
3.1. | PACO core will response to PACO payment page with redirect URL. |
3.2. | PACO payment page will post the redirect URL to the client frontend. |
4. | The client frontend will redirect to the payment page and the payer will see PACO payment page with payment option. (If the payment option have only one and it is APM, system will skip step 5 and direct process to 6.) |
5. | The payer will select APM payment option and channel. |
6. | PACO core will call the /nonUI API with payment information to proceed the payment. |
7.1. | PACO core call to 2C2P PGW Token API. |
7.2. | 2C2P PGW response token to PACO core. |
8.1. | PACO core call to 2C2P PGW Do Payment API by using the token from step 7.1. with APM channel code (Ref to: Payment Types & Payment Channel & Agent (PACO)). |
8.2. | 2C2P PGW will request for APM payment URL to the APM provider. |
8.3. | The APM provider will response to 2C2P PGW with a APM payment URL. |
8.4. | 2C2P PGW will response the APM payment URL to PACO core. |
9a. | PACO core update payment step from EG: EP Generate to PF: Payment Forwarded. |
9b. | PACO core update payment step from EG: EP Generate to PF: Payment Forwarded and ST: Settled. |
10.1a. | PACO core will response the APM payment URL to PACO payment page. |
10.1b. | PACO core will response the generate pay slip status to PACO payment page. |
10.2a. | PACO payment page will response the APM payment URL to client frontend. |
10.2b. | PACO payment page will the generate pay slip status to client frontend. |
11a. | The client frontend will open the APM payment URL and navigated payer to the APM web or application. |
11b. | The client frontend will contact to bank to pay. |
12. | The payer will log in to the APM web or application and proceed the payment. |
13.1. | After payment finish payment on the APM web or application, the APM provider will send the payment result to 2C2P PGW system. |
13.2. | 2C2P PGW will pass the payment result to PACO core. |
13.3a. | If the BE response code from 2C2P PGW is 0000 and VoidAble flag is 'Y', PACO core will update payment status in the PACO system and set PACO payment step to PA: Payment Approved. |
13.3b. | If the BE response code from 2C2P PGW is 0000 and VoidAble flag is 'N', PACO core will update payment status in the PACO system and set PACO payment step to PA: Payment Approved and then set payment step to ST: Settled. |
13.4. | PACO core will send the acknowledge response back (Simple 200 Ok) to 2C2P PGW. |
14. | PACO core will send the merchant notification with payment result to the client backend. |
15. | The client backend will update the payment status on the client side. |
16a. | The client backend send the direct acknowledge for merchant notification back to PACO core. |
16b. | The client backend send the direct acknowledge with HTTP status 200 (OK) for merchant notification back to PACO core. |
17. | PACO core will update the acknowledge status from client backend in database. |
18. | After the payer finished payment on the agent application, if payer click "Return to merchant", the redirect request will send to the agent application. |
19a. | If client set client success URL into the success URL field on PACO payment API request, the agent application will send the frontend notification with payment result to PACO payment page. |
19b. | If client set "-" into the success URL field on PACO payment API request, the agent application will send the frontend notification with payment result to PACO payment page. Then PACO payment page will show the payment result page. |
20. | PACO payment page will pass the frontend notification with payment result to the client frontend. |
Updated 9 days ago