Skip to content
Zohaib edited this page Mar 15, 2023 · 3 revisions

This page describes the ExpressPay Flutter SDK SALE Adapter.

Overview

Payment Platform supports two main operation type: Single Message System (SMS) and Dual Message System (DMS).

  • SMS is represented by SALE transaction. It is used for authorization and capture at a time. This operation is commonly used for immediate payments.
  • DMS is represented by AUTH and CAPTURE transactions. AUTH is used for authorization only, without capture. This operation used to hold the funds on card account (for example to check card validity).

SALE request is used to make both SALE and AUTH transactions.

If you want to make AUTH transaction, you need to use parameter auth with value Y.

If you want to send a payment for the specific sub-account (channel), you need to use channel_id, that specified in your Payment Platform account settings.

SALE

  1. The SALE Adapter operation method:
/**
 * @param auth indicates that transaction must be only authenticated, but not captured (AUTH or SALE).
 * @param callback the [ExpressPaySaleCallback].
 */
void execute({
    required ExpresspaySaleOrder order,
    required ExpresspayCard card,
    required ExpresspayPayer payer,
    ExpresspaySaleOption? saleOption,
    required bool isAuth,
    required SaleResponseCallback? onResponse,
    required Function(dynamic)? onFailure,
    required Function(Map)? onResponseJSON,
})

If your account supports 3D-Secure, transaction result will be sent to your Notification URL.

1.1 The SaleResponseCallback callback methods:

Callback Description
Function(ExpresspaySaleSuccess) success result callback.
Function(ExpresspaySaleDecline) decline result callback with the decline reason.
Function(ExpresspaySaleRecurring) recurring result callback with the recurring parameters.
Function(ExpresspaySaleRedirect) redirect result callback with the web redirect parameters.
Function(ExpresspaySale3DS) 3DS result callback with the secure 3DS redirect parameters.
Function(ExpresspayError) error result callback with the ExpresspayError class

1.2 The onFailure(dynamic) callback:

Callback Description
Function(dynamic) result with any type or error it may be Map, String or Object

1.3 The onResponseJSON(Map) callback:

Callback Description
onResponseJSON(Map) result with Map contains the actual response received from Platform

ExpressPay

The ExpressPay Flutter SDK - https://expresspay.sa

Clone this wiki locally