Tabby
Copy page
Copy page as Markdown for LLMs
Open in ChatGPT
Ask questions about this page
Open in Claude
Ask questions about this page
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:
-
Active Tabby Service
Tabby must be activated on your Amazon Payment Services account. Contact your account manager if you need activation. -
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. -
Required Parameters
Ensure thatphone_number
andorder_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
Redirect customers to our secure payment page with Tabby support
Through Payment Links
Generate payment links with Tabby support for no-code solutions
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:
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:
- Sandbox
- Production
https://sbcheckout.payfort.com/FortAPI/paymentPage
https://checkout.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.
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.
Through Payment Links
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
andorder_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.