NAV Navbar
Logo

Before Starting the Integration section in the API:

Step 1: Access your test account
You have to make sure that you get access to a test account, it’s a full test environment allow you to simulate and process simulation transactions. You can contact support@payfort.com to get your test account.

Step 2: make sure that you are using the correct integration type
Before building the integration, you need to make sure that you are selecting and using the proper parameters in the API calls as per the required integration type.

All the mandatory parameters mentioned in every section in the API documentation.

Step 3: Create the transaction request
Process a valid API request depends on transaction parameters included, you need to check the documentation and read every parameter possible values in order to reduce the errors in processing the transaction.

Step 4: Process the transaction response
After each payment processed, PayFort returns the transaction’s response on the URL configured in your account under Technical Settings channel configuration.

You can find more details in the API documentation section Direct Transaction Feedback.

You need to validate the response parameters returned on this URL by calculating the signature for the response parameters using the SHA Response Phrase configured in your account under Security Settings.

Step 5: Test and Go Live
You can use our testing cards to test your integration and simulate your test cases.

PayFort requires to test your integration before going live to verify the integration and make sure it’s implemented properly.

3-D Secure services

3-D Secure services is an extra authentication service to authenticate the transaction by sending an OTP to the card holder from the issuer bank then the card holder have to authenticate the transaction by entering this OTP on the 3DS page. There are two types of 3-D Secure Services:

  1. Check 3-D Secure & Flex 3-D Secure Services:

        Check 3-D Secure Service: This service provides cardholders a decreased risk of other people being able to use their payment cards fraudulently on the Merchant’s site.
        Flex 3-D Secure Service: This service gives you the flexibility to downgrade the 3-D Secure authentication in the transaction processing, based on a set of rules of your choice.

  2. External MPI & Expose 3-D Secure services:

        External MPI Service: This service allows the Fort to accept Purchase/ Authorization transactions in which the 3ds check was done externally using an external MPI.
        Expose 3-D Secure Service: This service allows the Merchant to use the 3-D Secure service in standalone request without the transactionpurchase/Authorization flow; the user 3-D Secure Authentication can be done separately to get the user Authentication data and then the merchant can perform the charge request “Authorization/Purchase” in another request.

Check 3-D Secure & Flex 3-D Secure Services

Check 3-D Secure Service

This service provides cardholders a decreased risk of other people being able to use their payment cards fraudulently on the Merchant’s site.

Include the following parameter in the Request you will send to PayFort:

ATTRIBUTES Description
check_3ds
Alpha
Optional
max: 2
This parameter allows the Merchant to deactivate the 3-D Secure service per transaction. This parameter can be used with both Authorization and Purchase transactions.
Possible/ expected values: NO

Flex 3-D Secure Service

This service gives you the flexibility to downgrade the 3-D Secure authentication in the transaction processing, based on a set of rules of your choice. You can active/ deactivate this service under the “Flex Management” tab on your FORT Back-office.

How it Works?

Click on the “Flex Management” tab on the main menu of your FORT Back-office. The following tabs should be displayed:
Service configuration: to allow the merchant to activate/ deactivate the flex service after accept the terms and conditions.
List management: allow the merchant to add multiple lists with different list types (email, IP, BIN, custom field and country) through “Add New List”.
Rules Management: to set the required rules for flex Management by merchant choice.
Audit log: triggered all the actions done by the merchant in configurations the Flex service.

Include the following parameter in the Request you will send to PayFort:

ATTRIBUTES Description
flex_value
Alphanumeric
Optional
max: 255
This parameter reflects the custom field value you had configure in the Back-office. *Only English values are applicable.
Example: Sale50
Special characters: _ / \ - . # $ % & @ *

External MPI & Expose 3-D Secure services

External MPI 3-D Secure Service

This service allows the Fort to accept Purchase/ Authorization transactions in which the 3ds check was done externally using an external MPI.

External MPI 3-D Secure URLs

Test Environment URL:

https://sbpaymentservices.PayFort.com/FortAPI/paymentApi

Production Environment URL:

https://paymentservices.PayFort.com/FortAPI/paymentApi

Parameters Submission Type

REST POST request using JSON.

External MPI 3-D Secure - Request

Include the following parameters in the Request you will send to PayFort:

ATTRIBUTES Description
command
Alpha
Mandatory
max: 20
Command.
Possible/ expected values: AUTHORIZATION, PURCHASE
access_code
Alphanumeric
Mandatory
max: 20
Merchant account Access Code.
Example: zx0IPmPy5jp1vAz8Kpg7
merchant_identifier
Alphanumeric
Mandatory
max: 20
FORT Merchant Account identifier.
Example: CycHZxVj
merchant_reference
Alphanumeric
Mandatory
max: 40
The Merchant’s unique reference for a specific request.
Example: XYZ9239-yu898
Special characters: _ - .
amount
Numeric
Mandatory
Max: 10
The transaction’s amount. *Each currency has predefined allowed decimal points that should be taken into consideration when sending the amount.
Example: 10000
currency
Alpha
Mandatory
Max: 3
The currency of the transaction’s amount in ISO code 3.
Example: AED
language
Alpha
Mandatory
Max: 2
The checkout page and messages language.
Possible/ expected values: en/ ar
customer_email
Alphanumeric
Mandatory
Max: 254
The customer’s email.
Example: customer@domain.com
Special characters: _ - . @ +
eci
Alpha
Optional
Max: 16
Ecommerce indicator.
Possible/ expected values:
- ECOMMERCE
- MOTO
expiry_date
Numeric
Mandatory
Max: 4
The card’s expiry date.
Example: 2105
card_number
Numeric
Mandatory
Max: 19
The clear credit card’s number. *Only the MEEZA payment option takes 19 digits card number. *AMEX payment option takes 15 digits card number. *Otherwise, they take 16 digits card number.
Example: 4005550000000001
card_security_code
Numeric
Max: 4
A security code for the card. * Only AMEX accepts card security code of 4 digits.
Example: 123
signature
Alphanumeric
Mandatory
max: 200
A string hashed using the Secure Hash Algorithm. (Please refer to section Signature for more details).
Example: 7cad05f0212ed933c9a5d5dffa31661acf2c827a
3ds_xid
Alphanumeric
Optional
Max: 28
Unique transaction Identification number to identify the 3DS transaction.
Example: 6kQGHEiZDU0H4+mUWF7zELHAcqM=
3ds_enrolled
Alpha
Optional
Max: 1
Parameter that hold if the card is enrolled or not.
Possible/ expected values:
- Y (Yes)
- N (No)
3ds_status
Alpha
Optional
Max: 1
The status of the 3ds check just like 3-DSEnrolled but this parameter is available after a check is completed.
Possible/ expected values:
- Y
- N
- U
- A
3ds_eci
Numeric
Optional
Max: 2
The eCommerce indicator returned from the MPI.
Possible/ expected values:
- 05
- 06
ver_token
Alphanumeric
Optional
Max: 28
Verification token generated by the issuer to prove that the cardholders has been authenticated.
Example: gIGCg4SFhoeIiYqLjI2Oj5CRkpM=
card_holder_name
Alpha
Optional
max: 50
The card holder name.
Example: John Smith
Special characters: ' - .
token_name
Alphanumeric
Optional
Max: 100
The Token received from the Tokenization process.
Example: Op9Vmp
Special characters: . @ - _
payment_option
Alpha
Optional
Max: 10
Payment option.
Possible/ expected values:
- MASTERCARD
- VISA
- AMEX
- MADA (for Purchase operations and eci Ecommerce only) Click here to download MADA Branding Document
- MEEZA (for Purchase operations and ECOMMERCE eci only)
order_description
Alphanumeric
Optional
Max: 150
It holds the description of the order.
Example: iPhone 6-S
Special characters: ' / . _ - # : $ Space
customer_ip
Alphanumeric
Optional
max: 45
It holds the customer’s IP address. *It’s Mandatory, if the fraud service is active. *We support IPv4 and IPv6 as shown in the example below.
Example:
IPv4 → 192.178.1.10
IPv6 → 2001:0db8:3042:0002:5a55:caff:fef6:bdbf
Special characters: . :
customer_name
Alpha
Optional
Max: 40
The customer’s name.
Example: John Smith
Special characters: _ \ / - . ' Space
phone_number
Numeric
Optional
Max: 19
The customer’s phone number.
Example: 00962797219966
Special characters: + - ( ) Space
settlement_reference
Alphanumeric
Optional
max: 34
The Merchant submits this value to the FORT. The value is then passed to the Acquiring bank and displayed to the merchant in the Acquirer settlement file.
Example: XYZ9239-yu898
Special characters: - _ .
merchant_extra
Alphanumeric
Optional
Max: 999
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra1
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra2
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra3
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra4
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra5
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
return_url
Alphanumeric
Optional
Max: 400
The URL of the Merchant’s page to be displayed to the customer when the order is processed.
Example: http://www.merchant.com
Special characters: $ ! = ? # & - _ / : .

External MPI 3-D Secure - Response

The following parameters will be returned in PayFort’s Response:

ATTRIBUTES Description
command
Alpha
Mandatory
max: 20
Command.
Possible/ expected values: AUTHORIZATION, PURCHASE
access_code
Alphanumeric
Mandatory
max: 20
Merchant account Access Code.
Example: zx0IPmPy5jp1vAz8Kpg7
merchant_identifier
Alphanumeric
Mandatory
max: 20
FORT Merchant Account identifier.
Example: CycHZxVj
merchant_reference
Alphanumeric
Mandatory
max: 40
The Merchant’s unique reference for a specific request.
Example: XYZ9239-yu898
Special characters: _ - .
amount
Numeric
Mandatory
Max: 10
The transaction’s amount. *Each currency has predefined allowed decimal points that should be taken into consideration when sending the amount.
Example: 10000
currency
Alpha
Mandatory
Max: 3
The currency of the transaction’s amount in ISO code 3.
Example: AED
language
Alpha
Mandatory
Max: 2
The checkout page and messages language.
Possible/ expected values: en/ ar
customer_email
Alphanumeric
Mandatory
Max: 254
The customer’s email.
Example: customer@domain.com
Special characters: _ - . @ +
eci
Alpha
Optional
Max: 16
Ecommerce indicator.
Possible/ expected values:
- ECOMMERCE
- MOTO
expiry_date
Numeric
Mandatory
Max: 4
The card’s expiry date.
Example: 2105
card_number
Numeric
Mandatory
Max: 19
The clear credit card’s number. *Only the MEEZA payment option takes 19 digits card number. *AMEX payment option takes 15 digits card number. *Otherwise, they take 16 digits card number.
Example: 4005550000000001
signature
Alphanumeric
Mandatory
max: 200
A string hashed using the Secure Hash Algorithm. (Please refer to section Signature for more details).
Example: 7cad05f0212ed933c9a5d5dffa31661acf2c827a
card_holder_name
Alpha
Optional
max: 50
The card holder name.
Example: John Smith
Special characters: ' - .
token_name
Alphanumeric
Optional
Max: 100
The Token received from the Tokenization process.
Example: Op9Vmp
Special characters: . @ - _
fort_id
Numeric
Max: 20
The order’s unique reference returned by our system.
Example: 149295435400084008
payment_option
Alpha
Optional
Max: 10
Payment option.
Possible/ expected values:
- MASTERCARD
- VISA
- AMEX
- MADA (for Purchase operations and eci Ecommerce only) Click here to download MADA Branding Document
- MEEZA (for Purchase operations and ECOMMERCE eci only)
order_description
Alphanumeric
Optional
Max: 150
It holds the description of the order.
Example: iPhone 6-S
Special characters: ' / . _ - # : $ Space
customer_ip
Alphanumeric
Optional
max: 45
It holds the customer’s IP address. *It’s Mandatory, if the fraud service is active. *We support IPv4 and IPv6 as shown in the example below.
Example:
IPv4 → 192.178.1.10
IPv6 → 2001:0db8:3042:0002:5a55:caff:fef6:bdbf
Special characters: . :
customer_name
Alpha
Optional
Max: 40
The customer’s name.
Example: John Smith
Special characters: _ \ / - . ' Space
phone_number
Numeric
Optional
Max: 19
The customer’s phone number.
Example: 00962797219966
Special characters: + - ( ) Space
settlement_reference
Alphanumeric
Optional
max: 34
The Merchant submits this value to the FORT. The value is then passed to the Acquiring bank and displayed to the merchant in the Acquirer settlement file.
Example: XYZ9239-yu898
Special characters: - _ .
merchant_extra
Alphanumeric
Optional
Max: 999
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra1
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra2
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra3
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra4
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
merchant_extra5
Alphanumeric
Optional
Max: 250
Extra data sent by merchant. Will be received and sent back as received. Will not be displayed in any report.
Example: JohnSmith
Special characters: . ; / _ - , ' @
return_url
Alphanumeric
Optional
Max: 400
The URL of the Merchant’s page to be displayed to the customer when the order is processed.
Example: http://www.merchant.com
Special characters: $ ! = ? # & - _ / : .
response_message
Alphanumeric
Max: 150
Message description of the response code. It returns according to the request language.
Possible/ expected values: Please refer to section messages
response_code
Numeric
Max: 5
Response Code carries the value of our system’s response. *The code consists of five digits, the first 2 digits represent the response status, and the last 3 digits represent the response messages.
Example: 20064
status
Numeric
Max: 2
A two-digit numeric value that indicates the status of the transaction.
Possible/ expected values: Please refer to section statuses
3ds_url
Alphanumeric
Max: 300
The URL where the Merchant redirects a customer whose card is 3-D Secure for authentication.
Example: http://www.3dsecure.com

Expose 3-D Secure Service

This service allows the Merchant to use the 3-D Secure service in standalone request without the transaction purchase/Authorization flow; the user 3-D Secure Authentication can be done separately to get the user Authentication data and then the merchant can perform the charge request “Authorization/Purchase” in another request.

3-D Secure Enrollment Service Command URLs

Test Environment URL:

https://sbpaymentservices.PayFort.com/FortAPI/paymentApi

Production Environment URL:

https://paymentservices.PayFort.com/FortAPI/paymentApi

Parameters Submission Type

REST POST request using JSON.

3-D Secure Enrollment Service Command - Request

Include the following parameters in the Request you will send to PayFort:

ATTRIBUTES Description
service_command
Alpha
Mandatory
max: 20
Command.
Possible/ expected values: 3DS_ENROLLMENT
Special characters: _
access_code
Alphanumeric
Mandatory
max: 20
Merchant account Access Code.
Example: zx0IPmPy5jp1vAz8Kpg7
merchant_identifier
Alphanumeric
Mandatory
max: 20
FORT Merchant Account identifier.
Example: CycHZxVj
merchant_reference
Alphanumeric
Mandatory
max: 40
The Merchant’s unique reference for a specific request.
Example: XYZ9239-yu898
Special characters: _ - .
amount
Numeric
Mandatory
Max: 10
The transaction’s amount. *Each currency has predefined allowed decimal points that should be taken into consideration when sending the amount.
Example: 10000
currency
Alpha
Mandatory
Max: 3
The currency of the transaction’s amount in ISO code 3.
Example: AED
language
Alpha
Mandatory
Max: 2
The checkout page and messages language.
Possible/ expected values: en/ ar
expiry_date
Numeric
Mandatory
Max: 4
The card’s expiry date.
Example: 2105
card_number
Numeric
Mandatory
Max: 19
The clear credit card’s number.
Example: 4005550000000001
merchant_3ds_url
Alphanumeric
Mandatory
max: 300
The URL where the Merchant will be redirected to see the returned 3ds parameters.
Example: https://www.merchant.com
Special characters: - & ? = _ . : / #
signature
Alphanumeric
Mandatory
max: 200
A string hashed using the Secure Hash Algorithm. (Please refer to section Signature for more details).
Example: 7cad05f0212ed933c9a5d5dffa31661acf2c827a

3-D Secure Enrollment Request Example!

3-D Secure Enrollment Service Command - Response

The following parameters will be returned in PayFort’s Response:

ATTRIBUTES Description
query_command
Alpha
max: 50
Query operations command.
Possible/ expected values: 3DS_ENROLLMENT
access_code
Alphanumeric
max: 20
Merchant account Access Code.
Example: zx0IPmPy5jp1vAz8Kpg7
merchant_identifier
Alphanumeric
max: 20
FORT Merchant Account identifier.
Example: CycHZxVj
merchant_reference
Alphanumeric
max: 40
The Merchant’s unique reference for a specific request.
Example: XYZ9239-yu898
amount
Numeric
Max: 10
The transaction’s amount. *Each currency has predefined allowed decimal points that should be taken into consideration when sending the amount.
Example: 10000
currency
Alpha
Max: 3
The currency of the transaction’s amount in ISO code 3.
Example: AED
language
Alpha
Max: 2
The checkout page and messages language.
Possible/ expected values: en/ ar
expiry_date
Numeric
Max: 4
The card’s expiry date.
Example: 2105
card_number
Numeric
> Max: 19
The masked credit card’s number.
Example: 400555******0001
merchant_3ds_url
Alphanumeric
max: 300
The URL where the Merchant will be redirected to see the returned 3ds parameters.
Example: https://www.merchant.com
Special characters: - & ? = _ . : / #
3ds_enrolled
Alpha
Max: 1
Parameter that hold if the card is enrolled or not.
Possible/ expected values:
- Y (Yes)
- N (No)
- U (Unspecified failure)
threeds_id
Alphanumeric
Max: 100
The 3ds operations unique reference.
Example: 153606397100001061
signature
Alphanumeric
max: 200
A string hashed using the Secure Hash Algorithm. (Please refer to section Signature for more details).
Example: 7cad05f0212ed933c9a5d5dffa31661acf2c827a
3ds_xid
Alphanumeric
max: 28
Unique transaction Identification number to identify the 3DS transaction.
Example: 6kQGHEiZDU0H4+mUWF7zELHAcqM=
response_message
Alphanumeric
max: 150
Message description of the response code. It returns according to the request language.
Example: Insufficient Funds
response_code
Numeric
Max: 5
Response Code carries the value of our system’s response. *The code consists of five digits, the first 2 digits represent the response status, and the last 3 digits represent the response messages.
Example: 44000
status
Numeric
max: 2
A two-digit numeric value that indicates the status of the transaction
Possible/ expected values: (Please refer to section statuses).

3-D Secure Enrollment Response Example!

• After you get back a 3Ds Enrollment response that includes the parameter “3ds_enrolled” of value “Y”; follow the below steps for the 3Ds Authentication request:

  1. In case you are on “MIGS” processor; Copy the returned 3ds_url in a new browser. Then, select all the returned parameters to be send in the next request “3Ds Authentication”.
  2. In case you are on “Cybersource”/ “MPGS” processor; two parameters will returns in the “3Ds Enrollment”; as below:
        • MD
        •PaRes
    And you have to copy them in the “3Ds Authentication” request; as you will see in the 3Ds Authentication request example.

3-D Secure Authentication Service Command

3-D Secure Authentication Service Command URLs

Test Environment URL:

https://sbpaymentservices.PayFort.com/FortAPI/paymentApi

Production Environment URL:

https://paymentservices.PayFort.com/FortAPI/paymentApi

Parameters Submission Type

REST POST request using JSON.

3-D Secure Authentication Service Command - Request

Include the following parameters in the Request you will send to PayFort:

ATTRIBUTES Description
service_command
Alpha
Mandatory
max: 20
Command.
Possible/ expected values: 3DS_AUTHENTICATION
Special characters: _
access_code
Alphanumeric
Mandatory
max: 20
Access Code.
Example: zx0IPmPy5jp1vAz8Kpg7
merchant_identifier
Alphanumeric
Mandatory
max: 20
The ID of the Merchant.
Example: CycHZxVj
merchant_reference
Alphanumeric
Mandatory
max: 40
The Merchant’s unique number. *Please, use the same merchant reference you used in the “generate report” request.
Example: XYZ9239-yu898
language
Alpha
Mandatory
Max: 2
The checkout page and messages language.
Possible/ expected values: en/ ar
third_party_body
Alphanumeric
Mandatory
Max: 6000
Combinations of 3ds parameters from the 3ds_enrollment.
Example: Check the examples below
Special characters: + \ / : . _ = ? % # & -
signature
Alphanumeric
Mandatory
max: 200
A string hashed using the Secure Hash Algorithm. (Please refer to section Signature for more details).
Example: 7cad05f0212ed933c9a5d5dffa31661acf2c827a

3-D Secure Authentication Request on MIGS processor Example!

3-D Secure Authentication Request on Cybersource/ MPGS Processors Example!

3-D Secure Authentication Service Command - Response

The following parameters will be returned in PayFort’s Response:

ATTRIBUTES Description
service_command
Alpha
max: 20
Command.
Possible/ expected values: 3DS_AUTHENTICATION
access_code
Alphanumeric
max: 20
Access Code.
Example: zx0IPmPy5jp1vAz8Kpg7
merchant_identifier
Alphanumeric
max: 20
The ID of the Merchant.
Example: CycHZxVj
merchant_reference
Alphanumeric
max: 40
The Merchant’s unique reference for a specific request.
Example: XYZ9239-yu898
language
Alpha
Max: 2
The checkout page and messages language.
Possible/ expected values: en/ ar
threeds_id
Alphanumeric
Max: 100
The 3ds operations unique reference.
Example: 153606397100001061
3ds_xid
Alphanumeric
Max: 28
Unique transaction Identification number to identify the 3DS transaction.
Example: 6kQGHEiZDU0H4+mUWF7zELHAcqM=
3ds_enrolled
Alpha
Max: 1
Parameter that hold if the card is enrolled or not.
Possible/ expected values:
- Y (Yes)
- N (No)
3ds_status
Alpha
Max: 1
The status of the 3ds check just like 3-DSEnrolled but this parameter is available after a check is completed.
Possible/ expected values:
- Y
- N
- U
- A
3ds_eci
Numeric
Max: 2
The eCommerce indicator returned from the MPI.
Possible/ expected values:
- 05
- 06
ver_type
Alphanumeric
Max: 3
The type of verification used for 3DS.
Possible/ expected values:
- 3DS
- SPA
ver_token
Alphanumeric
Max: 28
Verification token generated by the issuer to prove that the cardholders has been authenticated.
Example: gIGCg4SFhoeIiYqLjI2Oj5CRkpM=
signature
Alphanumeric
max: 200
A string hashed using the Secure Hash Algorithm. (Please refer to section Signature for more details).
Example: 7cad05f0212ed933c9a5d5dffa31661acf2c827a
response_message
Alphanumeric
max: 150
Message description of the response code. It returns according to the request language.
Example: Insufficient Funds
response_code
Numeric
Max: 5
Response Code carries the value of our system’s response. *The code consists of five digits, the first 2 digits represent the response status, and the last 3 digits represent the response messages.
Example: 44000
status
Numeric
max: 2
A two-digit numeric value that indicates the status of the transaction
Possible/ expected values: (Please refer to section statuses).

3Ds Authentication Response on MIGS Processor Example!

3-D Secure Authentication Response on Cybersource/ MPGS Processors Example!

FORT Transaction Feedback

Overview

The FORT transaction Feedback system provides Merchants with two types of configurable notifications:
1. Direct Transaction Feedback, PayFort will send Merchants HTTPs notifications that inform Merchants of the transaction’s final status whenever a transaction is processed.
2. Notification Transaction Feedback, PayFort will send Merchants HTTPs notifications that inform Merchants of the transaction’s final status whenever a transaction status is updated.

Registering Transaction Feedback URLs

1. Log in to your back-office account.
2. Select the active channel under Integration Settings > Technical Settings.
3. Enter your Direct Transaction Feedback URL and Notification Transaction Feedback URL.
4. Click “Save Changes” button.

Transaction Feedback implementation

The Transaction Feedback URL is required to send the Merchant the response parameters after processing the transaction on the Merchant’s server side.

For the Direct Transaction Feedback, it sends the immediate payments response in all cases , like if the user closed the browser before getting redirected to the Redirection URL due to a drop in the internet connection or he closed the browser during the Redirection , the Merchant will create an endpoint which accepts the notifications received from PayFort side as POST Method.

For the Notification Transaction Feedback , it’s required to provide the Merchant the transaction final status update whenever received , like if the Transaction was pending due to the unavailability for any party , the final update will be pushed to the Notification Feedback URL as POST Method.

Beyond whatever your Transaction Feedback URL does with the data received, it must also return a 2xx (like 200 , 201 , etc…) or 302 HTTP status code to update the FORT system that the notification was received. If your URL does not return 2xx or 302, the FORT will continue to retry the notification for 10 times with 10 seconds in between until it’s properly acknowledged.

Beyond whatever your Transaction Feedback URL does with the data received, it must also return a 2xx (like 200 , 201 , etc…) or 302 HTTP status code to update the FORT system that the notification was received. If your URL does not return 2xx or 302, the FORT will continue to retry the notification for 10, times with 10 seconds in between until it’s properly acknowledged.