Switching your integration from SALE to PURCHASE
This guide explains how to update your N-Genius Online integration from the SALE transaction type to the PURCHASE transaction type.
The SALE transaction type in the N-Genius Online gateway uses a two-step processing model in which the payment is first authorised and then immediately captured (sent for settlement). While this approach offers flexibility, it introduces additional processing steps and can increase operational complexity.
To simplify payment processing and provide a more predictable settlement experience, N-Genius Online recommends using the PURCHASE transaction type. This model performs authorisation and capture as a single end-to-end operation, reducing processing friction and aligning with industry-standard practices for immediate payment completion.
Does the PURCHASE transaction type apply to me?
You should consider switching your integration to use the PURCHASE transaction type if any of the following conditions apply:
- You have integrated with the Hosted Payment Page (HPP)
- You have integrated using the Direct API
- You have integrated using the Hosted Session (WebSDK) or any Network International mobile SDK
- You are currently using the
SALEtransaction processing model
However, you should not switch at this time if any of the following conditions apply:
- Your business requires the
AUTHfollowed by separateCAPTUREprocessing model (for example, where the final amount is confirmed later — hotels, car rentals, transport services, etc.) - You process payments exclusively using Pay-by-Link or Virtual Terminal interfaces
How do I know if I am using the SALE processing model?
To determine whether your integration uses the SALE processing model, review the API request used to create an order. Your request payload will contain an action field similar to the example below:
{
"action": "SALE",
"amount": { "currencyCode": "AED", "value": 100 }
} Your request may include additional fields, but the key indicator is:
"action": "SALE"This instructs N-Genius Online to process the payment using the SALE workflow.
If your integration uses "action": "AUTH" or "action": "PURCHASE", no changes are required.
I am using SALE — how do I switch to PURCHASE?
If your integration currently uses the SALE processing model and meets the criteria above, two updates are required:
- Update the order creation API request
- Update your logic for retrieving the payment outcome
1. Update the order creation request to use PURCHASE
Replace the value of the action field with PURCHASE:
{
"action": "PURCHASE",
"amount": { "currencyCode": "AED", "value": 100 }
}All other fields in your request should remain unchanged.
2. Update your outcome handling logic
The method used to obtain the payment outcome depends on your integration type:
- Hosted Payment Page (HPP): Outcome via webhook notification or order status query
- Direct API: Outcome returned in the payment response
If your system currently uses the SALE model, it will typically check for the order status:
CAPTUREDWhen using the PURCHASE transaction type, the equivalent successful status is:
PURCHASEDUpdate your integration logic to handle this status accordingly.
Testing
It is strongly recommended that you implement and validate these changes in the N-Genius Online sandbox (UAT) environment before deploying to production. This helps ensure a smooth transition and minimises potential disruption to your payment processing operations.
Updated 13 days ago
