RTP Integration Process
No integration changes are required to enable Payshap Request, also known as Request to Pay (RTP). When RTP is enabled for a given bank on your client, it will automatically replace the Instant EFT bank tile for that bank.
Each bank has different limits and fees that apply to RTP payments made from their accounts. Due to this, if a bank is enabled for RTP on your client, Stitch will only provide RTP as a payment rail if the payment request amount is less than the bank-imposed limit. Instant EFT will be used as a fallback for payments greater than this amount, where possible.
| Bank | Maximum |
|---|---|
| Absa | 3,000 |
| African Bank | 3,000 |
| Capitec | 500 |
| Discovery Bank | 50,000 |
| FNB | 10,000 |
| Investec | 3,000 |
| Nedbank | 50,000 |
| Standard Bank | 3,000 |
Example GraphQL mutation
As Pay by bank automatically encompasses RTP methods, no changes are required on Pay by bank API requests. Refer to the Pay by bank integration process docs for an overview of the fields in the mutation. An example request is supplied below:
Webhooks
RTP payment requests send webhooks on payment completion, cancellation and expiry. Refer to the Webhook docs for a guide to Stitch's webhook infrastructure, and to the payment Webhook type for details on the webhooks sent for RTP payments.
Refunds
RTP payments follow the same refund process as other payments in the Pay By Bank product suite. Refer to Pay By Bank Refunds for documentation on how to refund payments.
Testing RTP Scenarios
Our sandbox environment allows simulation of specific RTP scenarios that users may experience in production. To simulate these cases, enter one of the following account or mobile numbers when simulating the user journey to surface the corresponding scenario.
| Scenario | Account number | Mobile number |
|---|---|---|
| Successful MFA and payment | 999999999 | 0841233210 |
| MFA declined by user | 999999990 | 0841234567 |
| MFA timed out without approval | 999999991 | 0841234568 |
| User supplied invalid credentials | 999999992 | 0841234569 |
| User supplied credentials that are no longer active | 999999993 | 0841234570 |