In order to process a non real-time Card Debit, a payer record must firstly be created for the paying customer via API on your own payment page or the Payrix Hosted Payment Page (HPP) / Payrix electronic Direct Debit Request (eDDR).
Note - If you are using your own payment page, ensure it is compliant with our eDDR requirements checklist.
Note - If you are using the Payrix HPP to process a real-time card payment AND save payment details for future payments, ensure the ‘savepayer’ property field within the API body request is set to true.
Once payment details have been collected, via API we offer the ability to schedule single or multiple future payments.
We recommend the software hold the schedule and manage the schedule as this allows much more control and flexibility when any changes in the debit amount or frequency are required. Simply send Payrix the API call ‘POST Schedule a single payment’ on the morning the debit is required.
The flow diagram below guides you through creating a new payer and adding their bank account details. The GET Search for transaction status changes and POST Acknowledge transaction status change endpoints allow you to retrieve any transaction status chances. You can acknowledge these changes as received so they stop being returned in the results set.
Each of the API calls below can be located in their relevant sections in Payrix's API documentation.
If you are utilising the Payrix HPP or Payrix eDDR, the Payrix page automatically takes care of the first 2 steps. Once the customer has completed the Payrix HPP or Payrix eDDR, you can schedule a debit via API.
Q: How to determine the result of the transaction for a Bank Account Debit
Scheduled Card Debit - (2 Business day setttlement)
Call our GET Search for transaction status changes around 9AM AEST daily which will pull a set of all transactions for your business that have had a change of transaction status.
When a transaction is initially processed in the debit run, the transaction status will be a ‘C' (Cleared - Card Debit)
On the 2nd business day, the result will be returned by the bank which will change the status to ‘S' (Settled) or 'R’ (Rejected - Transaction failed)
If a transaction is rejected with a decline reason supplied by the issuer we will return this response. Refer to Transaction Sub-Status Code.
If a transaction is rejected, some decline responses by the card issuer return a generic reason, so it’s not always possible to know exactly why the payment was declined. If all of the information seems correct, it is best to have your customer contact their card issuer and ask for more information. For privacy and security, financial institutions are only obligated to discuss the specifics of a declined payment with their card holder.
Following the above API, use our POST Acknowledge transaction status change to acknowledge the transactions and remove them from the data set when you next call the Get New Status Search above.
If the transaction status changes again after you have removed it from the data set, it will be returned in the GET Search for transaction status changes to notify you of the change in status.
e.g. Search for specific types of transactions (single or list)
PDB = Payer Debit Bank
PDC = Payer Debit Card