Skip to main content

Tabby

Tabby is a buy-now, pay-later payment method that allows customers to split their payments into installments. The first payment is charged at the time of purchase, while the remaining payments are automatically charged on scheduled dates, based on the installment plan selected by the customer on the Tabby payment page.

You will be paid fully upfront, while installments will happen between the customer and Tabby. Tabby transactions are processed in multiple currencies and support direct capture payments exclusively.

Prerequisites

Before integrating Tabby, ensure you have completed the following requirements:

  1. Active Tabby Service
    Tabby must be activated on your Amazon Payment Services account. Contact your account manager if you need activation.

  2. Tabby Account Setup
    You need an active account with Tabby to receive funds from your customers. Obtain the merchant_code and authorization key generated by Tabby.

  3. Required Parameters
    Ensure that phone_number and order_description parameters are always included in your request.

You must implement Tabby on-site messaging and use official Tabby logos on your product pages and checkout flow. This is a mandatory requirement for all Tabby integrations.

Integration Methods

Choose the integration method that best fits your business needs and technical requirements:

Through Hosted Checkout

Hosted Checkout provides a secure way to accept Tabby payments by redirecting customers to Amazon Payment Services' payment page.

How Hosted Checkout Works

The Tabby hosted checkout process follows these steps:

1

Payment Request

Create Payment Request

Send a POST request to the hosted checkout endpoint with the required parameters. The request must be sent from the frontend as an HTTPS POST form with payment_option set to TABBY.

Use the appropriate endpoint based on your environment:

https://sbcheckout.payfort.com/FortAPI/paymentPage

Tabby is not supported on multi-select feature.

Sample Request

<form method="post" action="https://sbcheckout.payfort.com/FortAPI/paymentPage" 
id="paymentForm" name="paymentForm">
<input type="hidden" name="command" value="PURCHASE">
<input type="hidden" name="access_code" value="s4lwuuoY5upZlZY5D6dr">
<input type="hidden" name="merchant_identifier" value="WeVJHPYm">
<input type="hidden" name="merchant_reference" value="TABBY-12345-2024">
<input type="hidden" name="amount" value="2000">
<input type="hidden" name="currency" value="AED">
<input type="hidden" name="language" value="en">
<input type="hidden" name="payment_option" value="TABBY">
<input type="hidden" name="customer_email" value="otp.success@tabby.ai">
<input type="hidden" name="phone_number" value="500000001">
<input type="hidden" name="order_description" value="Test order">
<input type="hidden" name="return_url" value="https://yoursite.com/payment-result">
<input type="hidden" name="signature" value="calculated_signature_here">
<input type="submit" value="Pay Now" class="pay-button">
</form>

Make sure merchant reference value is unique value per request.

Multiply your transaction amount by the currency decimal code per ISO code 3 before sending the amount parameter. For AED (2 decimal places), multiply by 100. Example: For 20.00 AED, send 2000 in your request.

Refer to our Signature Calculation Guide for detailed implementation instructions and code examples.

Airlines, Travel and Insurance Parameters

If you're processing Tabby transactions for airlines, travel, or insurance bookings, you must include the order_metadata parameter with detailed transaction information:

<form method="post" action="https://sbcheckout.payfort.com/FortAPI/paymentPage" 
id="travelForm" name="travelForm">
<input type="hidden" name="command" value="PURCHASE">
<input type="hidden" name="access_code" value="s4lwuuoY5upZlZY5D6dr">
<input type="hidden" name="merchant_identifier" value="WeVJHPYm">
<input type="hidden" name="merchant_reference" value="TRAVEL-12345-2024">
<input type="hidden" name="amount" value="100">
<input type="hidden" name="currency" value="SAR">
<input type="hidden" name="language" value="en">
<input type="hidden" name="payment_option" value="TABBY">
<input type="hidden" name="customer_email" value="otp.success@tabby.ai">
<input type="hidden" name="phone_number" value="500000001">
<input type="hidden" name="order_description" value="Flight booking">
<input type="hidden" name="order_metadata" value="{
'flight_reservation_details': {
'pnr': 'TR9088999',
'itinerary': [{
'departure_city': 'Riyadh',

Include the order_metadata parameter only when processing Tabby transactions for airlines, travel, and insurance bookings. This parameter is not required for regular e-commerce transactions.

2

Payment Response

Handle Payment Response

After payment processing, customers are redirected back to your return_url with the transaction results.

Sample Response

{
"command": "PURCHASE",
"access_code": "s4lwuuoY5upZlZY5D6dr",
"merchant_identifier": "WeVJHPYm",
"merchant_reference": "TABBY-12345-2024",
"amount": "2000",
"currency": "AED",
"language": "en",
"payment_option": "TABBY",
"customer_email": "otp.success@tabby.ai",
"phone_number": "****0001",
"order_description": "Test order",
"fort_id": "169996200024372758",
"response_message": "Success",
"response_code": "14000",
"status": "14",
"eci": "ECOMMERCE",
"customer_ip": "1.1.1.1",

Tabby does not support Authorization command.

For detailed parameter specifications, refer to our Hosted Checkout API Reference.

Tabby payment links follow standard Payment Links integration, However, specific requirements must be met for Tabby to be available as a payment option:

  • Tabby service activation: Tabby must be active on your Amazon Payment Services merchant account
  • Required parameters: phone_number and order_description parameters must be included in the payment link request
  • Currency support: Transaction currency must be set to supported currencies (AED, SAR) for Tabby to appear in the payment options

Go-live

Test your integration using one of our testing cards.
Make sure to visit our go-live checklist to go live with your integration.

You can visualize Tabby experience by checking our prototype.

Support

Need assistance with Tabby implementation? Contact our technical support team at merchantsupport-ps@amazon.com.

Was this page helpful?

Thanks for your feedback!