- Create, Hold, Confirm
Withdrawal method using (Create, Hold, Confirm)
Use this method if you want Xprizo to do the final check ie Xprizo checks that the transaction has been created on the platform by sending a callback and waiting for a valid response. Based on the response from the platform, Xprizo with either commit the transaction or void it.
Using this method, Xprizo will create a transaction and put it on hold. It will then send a callback to check that the platform has successfully updated the transaction on their side. If Xprizo gets a positive response then the transaction will be completed. If a negative response is received or there is no response for 24 hrs then the transaction will be voided.
The Process is as follows:
- Create a pending transaction on your system
- Create a payment transaction on Xprizo and wait for the response.
api/Transaction/SendPayment?action=2
- Xprizo will create a transaction marked as ‘Hold’ and return 200 (success)
- If you get the 200 (success) response then leave your transaction as pending
- If the transaction failed with any error 400,401,403,500 excluding a timeout mark the transaction as rejected (Xprizo automatically deleted failed transactions)
- Xprizo will a send callback to the platform (make sure you have the "Payment Webhook" setup in Xprizo)
api/Preference/SetPaymentWebhook
- You should now set the transaction on your platform as paid and respond to the callback with 200 (success) response.
- It is recommended to check the status of the transaction on Xprizo to ensure that is completed
api/Transaction/StatusByReference
- Xprizo will keep sending callbacks until the platform responds
- If your platform does not response for 24 hours
- The transaction is voided
- Funds released back to the merchant
- If the platform responds with a success
- The Hold is removed and the transaction is marked as active
- If the platform responds with an error
- The transaction is voided
- Funds released back to the merchant