Skip to main content
Safepay supports four Raast payment initiation modes. Each differs in how much you know about the customer up front and how quickly they must act. Use the matrix below to decide which one fits your experience.
TypeWhen to useNeed debtor info?Need amount upfront?Customer action window
RTP NowInstant disbursements (cashback, refunds, rewards).Yes - provide IBAN or Raast ID.Yes.Minutes; customer acts immediately.
RTP LaterInvoices with delayed approval.Yes - provide IBAN or Raast ID.Yes.Hours or days; configurable expiry.
Dynamic QRPoint-of-sale or checkout flows with known amount.No - Safepay shares payer details in the webhook.Yes.Customer scans and pays immediately.
Static QRReusable QR displayed on signage or invoices.No.No - payer enters the amount.Open-ended; multiple payments allowed.
All payment types emit webhook notifications. Integrate webhooks alongside any polling to update customer-facing UIs promptly.

Lifecycle summary

  • RTP Now - create payment -> customer approves in their banking app -> Safepay notifies you -> present confirmation or retry.
  • RTP Later - same as RTP Now but allows customers more time; offer a manual refresh option in your UI.
  • Dynamic QR - generate per order; Safepay returns payer identifiers once settled.
  • Static QR - generate once; reconcile incoming payments by comparing amount and optional memo fields.

API mapping

TypeEndpointRequired fieldPrimary webhook events
RTP NowPOST /v1/aggregators/{{aggregator_id}}/paymentstype: RTP_NOWpayment.created, payment.completed, payment.settled
RTP LaterPOST /v1/aggregators/{{aggregator_id}}/paymentstype: RTP_LATERpayment.created, payment.pending_authorization, payment.settled
Dynamic QRPOST /v1/aggregators/{{aggregator_id}}/qrstype: DYNAMICpayment.created, payment.completed, payment.settled
Static QRPOST /v1/aggregators/{{aggregator_id}}/qrstype: STATICpayment.created, payment.completed, payment.settled

Implementation guides

See also