PayTabs SDK makes the integration with the PayTabs payment gateway very easy by providing a ready-made payment screen that handles the card entry, and billing & shipping information and completes the missing details.
This article is dedicated to walking you through how to manage this SDK configuration options.
You will get to know each parameter type and its usage of it so that you can easily configure the SDK to suit your business needs.
Property | Data Type | Required | Usage |
---|---|---|---|
profileID | String | ✔ | The merchant Profile ID, which you can get from your PayTavs dashboard. For more information, please check our How to get your account information from PT2 Dashboard? solution article. |
serverKey | String | ✔ | The merchant profile's server key which used for authentication purposes. You can get it from your dashboard. To know more about how, please check our How to get my Authentication/Integration/API Keys? solution article. |
clientKey | String | ✔ | The merchant profile's client key which used for authentication purposes. You can get it from your dashboard. To know more about how, please check our How to get my Authentication/Integration/API Keys? solution article. |
transactionType | String | ✔ | the identification of the type of transaction. To know more about these types, please check our What is the "tran_type" (transaction type)? solution article. Noting that only "Sale" and "Auth" types are supported in this SDK. |
TransactionClass | String | ✔ | the identification of the category/class this transaction will follow, such as eCommerce, Recurring, etc. To know more about these types, please check our What is the "tran_class" (transaction class)? solution article. Noting that only "ecom" is supported in this SDK. |
cartID | String | ✔ | Indicates the cart/order id at the merchant end to easily relate the transaction to |
currency | String (ISO Alpha-3 Format) | ✔ | Indicates the transaction currency, which the customer will be charged with. Noting that this currency must be configured first on your PayTabs account to accept payment with. |
amount | Numeric String | ✔ | Indicates the amount of this transaction the customer is about to be charged. |
cartDescription | String | ✔ | Indicates the cart/order description at the merchant end to easily relate the transaction to. |
languageCode | String | ❌ | Indicates the payment page displaying language. if not passed, the default language will be displayed. |
forceShippingInfo | Boolean | ❌ | Indicates whether to force the customer to provide the shipping information or not. |
showBillingInfo | Boolean | ❌ | Indicates whether to hide billing information or not from the payment form screen.
Noting that the customer details are still required and must be passed, in case any of the details are missing or passed with invalid values; this option will be ignored, and the cardholder will be required to enter any of the missing details on the payment page if he is using one of our APMs. Otherwise, the transaction will fail. |
showShippingInfo | Boolean | ❌ | Indicates whether to show the shipping information or not from the payment form screen. |
billingDetails | PaymentSdkBillingDetails | ✔ | Indicates the customer details for this payment, such as his name, email, ..etc. Noting that the countryCode used here must be in ISO alpha-2 format. |
shippingDetails | PaymentSdkShippingDetails | ❌ | Indicates the shipping details for this payment, such as his address, city, ..etc. Noting that the countryCode used here must be in ISO alpha-2 format. |
merchantCountryCode | String (ISO Alpha-2 Format) | ✔ | Indicates the merchant account's country. It must be related to the profile used in the integration. |
tokeniseType | Enum | ❌ | This option is used only when you want to tokenize the transaction for any further recurring transactions. This indicates whether the tokenization is optional or mandatory or if no tokenization will be done at all. It will be one of these values (none - merchantMandatory - userMandatory - userOptinoal). The default type is none. This field is required for creating tokenized (recurring) transactions. |
tokenFormat | Enum | ❌ | This indicates the type of tokenization used. It will be one of these values (none - hex32 - alphaNum20 - digit22 - digit16 - alphaNum32). The default format is hex32. This field is required for creating tokenized (recurring) transactions. |
token | String | ❌ | The customer's saved card token is to be passed within the transaction. This field is required for creating tokenized (recurring) transactions. |
transactionReference | String | ❌ | The unique key for the transaction generated by the PayTabs. This field is required for creating tokenized (recurring) transactions. |
screenTitle | String | ❌ | The title that'll be shown on the payment form screen under the logo. |
merchantName | String | ❌ | The name of the merchant will be shown to the customer on the SamsungPay wallet screen. This field is required for creating transactions to be paid in SamsungPay. |
hideCardScanner | Boolean | ❌ | Indicates whether to show the camera card scanner button from the payment form screen or not. |
linkBillingNameWithCard | Boolean | ❌ | Indicates whether to add the billing name to be the same as the cardholder's name or not. |
alternativePaymentMethods | Enum | ❌ | Used to add another payment method in the payment form screen (such as StcPay, OmanNet, .. etc) or not. For more information, please check the related section on this from here. |
setPaymentExpiry | Integer | ❌ | Option to set expiry timeout in seconds for the card payment screen. Set to zero to deactivate the timeout feature, and less than 60 seconds will not affect. If the merchant presses the "PAY NOW" button the timeout will stop and the customer will proceed without expiration. |
setCardDiscount | list Of PaymentSdkCardDiscount object | ❌ | Using this option, you will be able to apply a discount to a specific bank card/s by specifying the card prefix from 4 to 10 digits |
⌂ To get familiar with the whole process and the other steps, kindly navigate to our "The Native Android SDK Integration Manual" solution article.
⇦ And to navigate to the previous step in the integration process "Step 1 - Setup and activate the integration method" kindly click here.
⇦ And to get familiar with the rest of the steps regarding the current step "Step 2 - Configure the integration method" click here.
⇨ Or you can navigate to the next step in the integration process "Step 3 - Initiating the payment" kindly click here.