Skip to main content

Benefit

Benefit is Bahrain's national payment network that supports all locally issued 16-digit debit cards. Customers are redirected to the Benefit page to complete their payment before being returned to the merchant's confirmation page.

Benefit transactions are processed in Bahraini Dinar (BHD) only and support direct capture payments exclusively.

Prerequisites

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

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

  2. Integration Method
    Choose your preferred integration approach - Benefit is available through Hosted Checkout and Payment Links.

  3. Currency Support
    Benefit transactions must be processed in Bahraini Dinar (BHD) only.

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 Benefit payments by redirecting customers to Amazon Payment Services' payment page.

How Hosted Checkout Works

The Benefit 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 benefit.

Use the appropriate endpoint based on your environment:

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

Benefit is supported with the multi-select feature. If you wish to display it on the hosted page, no additional technical efforts are required.

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="ORD-12345-2024">
<input type="hidden" name="amount" value="2000">
<input type="hidden" name="currency" value="BHD">
<input type="hidden" name="language" value="en">
<input type="hidden" name="payment_option" value="benefit">
<input type="hidden" name="customer_email" value="test@amazon.com">
<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 BHD (3 decimal places), multiply by 1000. VISA requires amounts to be rounded to end in zero. For example, 3.475 BHD becomes 3480 in your request. Example: For 2.000 BHD, send 2000 in your request.

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

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": "ORD-12345-2024",
"amount": "2000",
"currency": "BHD",
"language": "en",
"payment_option": "benefit",
"customer_email": "test@amazon.com",
"fort_id": "149295435400084008",
"response_message": "Success",
"response_code": "14000",
"status": "14",
"signature": "calculated_response_signature"
}

Benefit transactions only support direct capture (PURCHASE Command). Authorization is not supported.

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

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

  • Benefit service activation: Benefit must be active on your Amazon Payment Services merchant account
  • Currency requirement: Transaction currency must be set to BHD (Bahraini Dinar) for Benefit to appear in the payment options

Check Transaction Status

To check the transaction status, refer to the Check Transaction Status section.

Handling the Response

If you have a webhook configured, check the Webhooks section to understand how we send transaction responses to your system.

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 Benefit experience by checking our prototype.

Support

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

Was this page helpful?

Thanks for your feedback!