Manage the Transaction Type
PayTabs provides you with the backend packages that make the integrating with PayTabs payment gateway very easy by providing ready-made classes that handle the payment process.
This article is dedicated to walking you through how to manage how to initiate a payment request with a specific transaction type. The following transaction type keys can be sent within the sendTransaction
function as shown below:
Through out the article we will use the transaction types clarified in our What is the "tran_type" (transaction type)? solution article.
Method Specification
That the sendTransaction method is Mandatory, not passing it would throw an exception.
Description | Responsible of sending the the transaction type and class. |
---|---|
Since | 1.0.0 |
Required | ✔ |
Signature |
|
Sample |
|
Method Parameters:
Tran Type
Name | $tran_type | ||||
---|---|---|---|---|---|
Type | enum | ||||
Enum values |
| ||||
Description | The identification of the type of the transaction. | ||||
Default | - | ||||
Validation Rule | Accept | ||||
Required | ✔ |
Tran Class
Name | $tran_class | ||||
---|---|---|---|---|---|
Type | enum | ||||
Enum values |
| ||||
Description | The identification of the class of the transaction. | ||||
Default |
| ||||
Validation Rule | Accept | ||||
Required | ✘ |
Expected payment flow behaviour:
- As a merchant you would initiate a payment request per the above Specifications, which include a sample code.
- Then, you will call the method create_pay_page() and return the result to redirect the customer to the payment page.
try {
$paymentPage = paypage::sendTransaction('sale','ecom')
->sendCart("Order_101", 1000.00, 'Order Description')
->create_pay_page();
return $paymentPage;
} catch (\Exception $e) {
// Handle errors appropriately
return back()->with('error', 'Payment initiation failed: ' . $e->getMessage());
} - After this, your customer would proceed normally with payment by choosing the preferred payment method (if available), and providing his card information.
- Then, he will be redirected to his issuer bank 3DS/OTP page to authenticate the used card
- Finally, he would be redirect to a success/error page accordingly. By this time, you will be able to see his transaction on your merchant dashboard, whether it's accepted/authorized or not.