PayPal PayFast

Introduction

Paypal PayFast can be utilized as a checkout option on a payment page with two brand options PAYPAL_PAYFAST and VENMO_PAYFAST. After configuring your environment, loading the Paypal PayFast button via COPYandPAY payment widget is just like loading any other brand, i.e. in step 2, PAYPAL_PAYFAST or VENMO_PAYFAST (The "Payment Orchestration Platform" handles the decryption of the PayFast token). Once the Paypal or Venmo Pay button will be used by the consumer, the payment sheet will appear on the device or browser. VENMO_PAYFAST do support QR code integration, where the consumer will need to scan the generated QR instead of payment sheet.

As soon as the consumer starts to interact with the payment sheet, several events will be triggered. All callback functions offered by the PayFast SDK are wrapped into the COPYandPAY API. No interaction with the PayFast SDK is required.

For steering the PayFast payment sheet or for updating data on the PayFast payment sheet after the consumer started to interact with it, several options are available.


Configuration


PayFast brands on the payment page

Loading the PayFast button via COPYandPAY payment widget is just like loading any other brand, i.e. in step 2, PAYPAL_PAYFAST or VENMO_PAYFAST must be specified as a brand.

See an example below.

Note that PayFast brands only appears when a client token to load SDK is fetched successfully from backend.

PayFast options

As with other options, you can modify the PayFast payment sheet behavior by using wpwlOptions.

Parameter Mandatory Description Default value Examples
styling No

Determines the style configuration for the PayPal PayFast button

undefined {color: "white"};
fundingSources No Determines the funding source for the PayPal PayFast button. Should be an array. undefined ["PAYPAL"]
venmo.createPaymentOptions No

Create options as listed on Venmo Create. Do not include client or riskCorrelationId — these are system-generated.

N/A
{
    venmo: {
        createPaymentOptions: {
            allowDesktop: true,
            mobileWebFallBack: true,
            allowDesktopWebLogin: true,
            paymentMethodUsage: 'multi_use'
        }
    }
}