Skip to content
Last updated

Recurring and Unscheduled Payments

Overview

Recurring Payments allow you to charge a customer on a regular basis without requiring them to be present for each payment. This is particularly useful for subscription services or any scenario where you need to bill customers periodically.

Unscheduled Payments allow you to charge customers on an ad-hoc basis without the need for the customer to be present. This is ideal for businesses that need to process payments at irregular intervals or for one-off purchases.

Both Recurring and Unscheduled Payments require an initial payment to be processed with the customer present (CIT). This initial payment captures and securely stores the customer's payment details for future use. Subsequent payments can then be processed without the customer being present (MIT).

Processing Recurring and Unscheduled Payments using the embedded SDK involves a similar approach as described in this page.

Requirements

Before you can process a Recurring or Unscheduled Payment, you must first set up an initial Payment Session with the customer present (CIT). This initial payment captures and securely stores the customer's payment details for future use. Subsequent payments can then be processed without the customer being present (MIT).

To set up such a Payment, you will need to follow the steps outlined in the Initiate Recurring Payments page or the Initiate Unscheduled Payments page, depending on your use case.

Once the Payment Session is created, you will have access to the clientSecret value, which is required to process the initial payment.

Configuring the Embedded SDK

To process a Recurring or Unscheduled payment using the embedded SDK, you need to initialize the SDK with the appropriate configuration options. These include:

  • The clientSecret obtained from the initial Payment Session
  • Setting the paymentType option to Recurring or Unscheduled, depending on your use case
  • The accountId option if you are processing the payment on behalf of a Sub-Account

Below is an example of how to configure the embedded SDK for processing Recurring or Unscheduled payments:

Process Recurring Payment Example
Ryft.init({
    publicKey,
    clientSecret,
    // accountId, // Uncomment if processing on behalf of a Sub-Account
    paymentType: 'Recurring',
});

Provided that the embedded SDK is correctly configured, the embedded payment form will be rendered, allowing the customer to complete the initial payment.