Process a card sale transaction.
JSON
{
"error_no": "S00",
"success_url": true,
"error_code": "00",
"amount": "10.12",
"tax": "0",
"customfee": "0.2",
"msg": "APPROVED",
"desc": "APPROVAL TAS827",
"additional_info": null,
"clerk_id": null,
"clerk_name": null,
"clerk_label": null,
"additionalKeyOne": null,
"additionalKeyTwo": null,
"additionalValueOne": null,
"additionalValueTwo": null,
"approval_code": "TAS827",
"rrn": "611809502890",
"txnid": "10333392",
"created_date": "28/04/2026",
"created_time": "05:56:08",
"tran_no": 1,
"stan": 712091,
"batch_no": 211,
"is_partial_approve": 0,
"partial_amount": "000000001012",
"pan": "XXXX1111",
"card_type": null,
"phone_number": null,
"email_id": null,
"zip": null,
"card_holder_name": null,
"expiry_date": "12/36",
"address": null,
"epi": "2319916062",
"channel": "VT",
"orderdescription": null,
"invoicenumber": null,
"token": "64E357AB********F2C5F6D4",
"card_brand": "Visa",
"netamt": 10.31
}
Field Type Description error_nostring S00 indicates a successful transactionsuccess_urlboolean true when the transaction is approvederror_codestring Gateway error code. 00 = no error amountstring Charged amount in decimal format taxstring Tax amount applied customfeestring Custom fee applied to the transaction msgstring Result (e.g. APPROVED) descstring Detailed description including the approval code additional_infostring | null Reserved for additional metadata clerk_idstring | null Clerk identifier, if provided clerk_namestring | null Clerk name, if provided clerk_labelstring | null Clerk label, if provided additionalKeyOnestring | null Custom key field 1 additionalKeyTwostring | null Custom key field 2 additionalValueOnestring | null Custom value field 1 additionalValueTwostring | null Custom value field 2 approval_codestring Issuer-returned authorization code rrnstring Retrieval reference number for reconciliation txnidstring Unique transaction identifier created_datestring Transaction date in DD/MM/YYYY format created_timestring Transaction time in HH:MM:SS format tran_nointeger Sequential transaction number within the batch staninteger System trace audit number batch_nointeger Settlement batch identifier is_partial_approveinteger 1 if partially approved; 0 for full approvalpartial_amountstring Approved amount in zero-padded 12-digit format panstring Masked card number — last 4 digits shown (e.g. XXXX1111) card_typestring | null Card type, if returned by the issuer phone_numberstring | null Cardholder phone number, if provided email_idstring | null Cardholder email address, if provided zipstring | null Billing ZIP code, if provided card_holder_namestring | null Name on card, if provided expiry_datestring Card expiry in MM/YY format addressstring | null Billing address, if provided epistring Merchant terminal / EPI identifier channelstring Transaction channel (e.g. VT, ECOMM) orderdescriptionstring | null Item or order description, if provided invoicenumberstring | null Merchant-supplied invoice reference, if provided tokenstring Partially masked card token for future use card_brandstring Card network (e.g. Visa, Mastercard) netamtnumber Net amount charged including fees
JSON
{
"error_no": "E26",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "AUTHENTICATION FAILED"
}
Field Type Description error_nostring E26 indicates an authentication failuremesgstring Error message msgstring Error message descstring Detailed description of the error cause
JSON
{
"error_no": "E98",
"error_code": "96",
"success_url": false,
"txnid": "10333383",
"batch_no": 0,
"switch_error_code": "V0417",
"mesg": "Merchant Not Active",
"desc": "Error code :96",
"msg": "Merchant Not Active",
"isFlexSendOrNot": "V0417"
}
Field Type Description error_nostring E98 indicates a declined transactionerror_codestring Decline code (e.g. 96 = merchant not active) success_urlboolean Always false for declined transactions txnidstring Transaction identifier (assigned even on decline) batch_nointeger Settlement batch identifier. Returns 0 when the merchant is inactive switch_error_codestring Switch-level error code returned by the network mesgstring Error message msgstring Error message descstring Detailed error description isFlexSendOrNotstring Flex routing indicator; mirrors switch_error_code
error_noMeaning Typical cause S00Approved Transaction successful E26Processing error Authentication credentials are invalid E98Declined Merchant account is not active
Capture a previously authorized (pre-auth) transaction and move it to the open batch for settlement.
JSON
{
"error_no": "S00",
"success_url": true,
"error_code": "00",
"amount": "0.67",
"tax": "0",
"customfee": "14",
"msg": "APPROVED",
"desc": "APPROVAL TAS846",
"additional_info": null,
"clerk_id": null,
"clerk_name": null,
"clerk_label": null,
"additionalKeyOne": null,
"additionalKeyTwo": null,
"additionalValueOne": null,
"additionalValueTwo": null,
"approval_code": "TAS846",
"rrn": "611809502918",
"txnid": "10333404",
"created_date": "28/04/2026",
"created_time": "05:59:06",
"tran_no": 3,
"stan": 712108,
"batch_no": 211,
"is_partial_approve": 0,
"partial_amount": "000000000067",
"pan": "XXXX",
"card_type": null,
"phone_number": null,
"email_id": null,
"zip": null,
"card_holder_name": null,
"expiry_date": "/",
"address": null,
"epi": "2319916062",
"channel": "VT",
"orderdescription": null,
"invoicenumber": null,
"token": null,
"card_brand": null,
"netamt": 0.81
}
Field Type Description error_nostring S00 indicates a successful capturesuccess_urlboolean true when the capture is approvederror_codestring Gateway error code. 00 = no error amountstring Captured amount in decimal format taxstring Tax amount customfeestring Custom fee applied msgstring Result (e.g. APPROVED) descstring Detailed description including the approval code approval_codestring Issuer-returned authorization code rrnstring Retrieval reference number txnidstring Unique transaction identifier for the capture created_datestring Capture date in DD/MM/YYYY format created_timestring Capture time in HH:MM:SS format tran_nointeger Sequential transaction number within the batch staninteger System trace audit number batch_nointeger Settlement batch identifier is_partial_approveinteger 1 if partially approved; 0 for full capturepartial_amountstring Captured amount in zero-padded 12-digit format panstring Masked card number. Returns XXXX when full PAN is not stored expiry_datestring Card expiry. Returns "/" when not stored with the original auth epistring Merchant terminal / EPI identifier channelstring Transaction channel tokenstring | null Card token; null when not available for this capture type card_brandstring | null Card network; null when not available for this capture type netamtnumber Net captured amount including fees
JSON
{
"error_no": "E98",
"error_code": "V5",
"success_url": false,
"txnid": "10333407",
"batch_no": 211,
"switch_error_code": "V0622",
"mesg": "Capture/Ticket Transaction has already been performed",
"desc": "Error code :V5",
"msg": "Capture/Ticket Transaction has already been performed",
"isFlexSendOrNot": "V0622"
}
Field Type Description error_nostring E98 indicates a declined captureerror_codestring Decline code (e.g. V5 = already captured) success_urlboolean Always false for declined operations txnidstring Transaction identifier batch_nointeger Settlement batch identifier switch_error_codestring Switch-level error code mesgstring Error message msgstring Error message descstring Detailed error description isFlexSendOrNotstring Flex routing indicator; mirrors switch_error_code
JSON
{
"error_no": "E16",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "INVALID TRAN NO"
}
Field Type Description error_nostring E16 indicates the transaction number is invalidmesgstring Error message msgstring Error message descstring Detailed description of the error cause
error_noMeaning Typical cause S00Approved Capture successful E98Declined Capture already performed on this transaction E16Processing error Invalid or unrecognised transaction number (tran_no)
Void an unsettled transaction to prevent it from being settled.
JSON
{
"error_no": "S00",
"error_code": "00",
"amount": "10.00",
"tax": "0",
"customfee": "0",
"msg": "APPROVED",
"txnid": "10333425",
"desc": "APPROVAL TAS905",
"additional_info": null,
"epi": "2319916062",
"channel": "ECOMM",
"created_date": "28/04/2026",
"created_time": "06:02:37",
"rrn": "611810502972"
}
Field Type Description error_nostring S00 indicates the void was successfulerror_codestring Gateway error code. 00 = no error amountstring Amount of the voided transaction taxstring Tax amount on the voided transaction customfeestring Custom fee on the voided transaction msgstring Result (e.g. APPROVED) txnidstring Transaction identifier of the void descstring Detailed description including the approval code additional_infostring | null Reserved for additional metadata epistring Merchant terminal / EPI identifier channelstring Transaction channel created_datestring Void date in DD/MM/YYYY format created_timestring Void time in HH:MM:SS format rrnstring Retrieval reference number
JSON
{
"error_no": "E98",
"error_code": "12",
"success_url": false,
"txnid": "10333419",
"batch_no": 211,
"switch_error_code": "V0543",
"mesg": "Original transaction not found",
"desc": "Error code :12",
"msg": "Original transaction not found",
"isFlexSendOrNot": "V0543"
}
Field Type Description error_nostring E98 indicates a declined voiderror_codestring Decline code (e.g. 12 = original transaction not found) success_urlboolean Always false for declined operations txnidstring Transaction identifier batch_nointeger Settlement batch identifier switch_error_codestring Switch-level error code mesgstring Error message msgstring Error message descstring Detailed error description isFlexSendOrNotstring Flex routing indicator; mirrors switch_error_code
JSON
{
"error_no": "E17",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "INVALID RRN"
}
Field Type Description error_nostring E17 indicates the RRN is invalidmesgstring Error message msgstring Error message descstring Detailed description of the error cause
error_noMeaning Typical cause S00Approved Transaction voided successfully E98Declined Original transaction not found or already settled E17Processing error RRN (retrieval reference number) is invalid
Initiate a two-factor authentication (2FA) challenge for a sensitive operation such as a refund. The customer will receive a verification code by email or SMS.
JSON
{
"status": 1,
"error_code": "S00",
"error_desc": "Success",
"response": {
"uuid": "nP4Pq*******GVnoTBt",
"epi_id": "2203082193",
"action": "ecomm_refund",
"is_enable_2fa": 1,
"reference_no": "4515201248",
"emailId": "test********.com",
"phoneNumber": "******2164",
"operator mailId": "",
"operator phoneNo": "",
"expire_on": "2026-04-28 10:05:21",
"created_on": "2026-04-28 10:03:21"
}
}
Field Type Description statusinteger 1 on successerror_codestring S00 indicates the 2FA challenge was issued successfullyerror_descstring Success on successresponseobject 2FA challenge details (see below)
Field Type Description uuidstring Partially masked unique identifier for this 2FA session. Required when submitting the verification code epi_idstring Terminal EPI identifier associated with the action actionstring The action requiring 2FA verification (e.g. ecomm_refund) is_enable_2fainteger 1 if 2FA is enabled for this terminal/actionreference_nostring Reference number for this 2FA session emailIdstring Partially masked email address the verification code was sent to phoneNumberstring Partially masked phone number the verification code was sent to operator mailIdstring Operator email, if applicable operator phoneNostring Operator phone number, if applicable expire_onstring Timestamp when the 2FA code will expire in YYYY-MM-DD HH:MM:SS format created_onstring Timestamp when the 2FA challenge was created in YYYY-MM-DD HH:MM:SS format
JSON
{
"error_no": "E26",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "AUTHENTICATION FAILED"
}
Field Type Description error_nostring E26 indicates an authentication failuremesgstring Error message msgstring Error message descstring Detailed description of the error cause
error_code / error_noMeaning Typical cause S00Success 2FA challenge issued E26Processing error Authentication credentials are invalid
Issue a refund against a previously processed transaction.
JSON
{
"error_no": "S00",
"error_code": "00",
"amount": "100.00",
"tax": "",
"customfee": "",
"msg": "APPROVED",
"txnid": "10333452",
"desc": "APPROVAL TAS264",
"additional_info": null,
"epi": "2319916062",
"channel": "VT",
"created_date": "28/04/2026",
"created_time": "06:08:27",
"rrn": "611810500407"
}
Field Type Description error_nostring S00 indicates a successful refunderror_codestring Gateway error code. 00 = no error amountstring Refunded amount in decimal format taxstring Tax amount, if applicable customfeestring Custom fee, if applicable msgstring Result (e.g. APPROVED) txnidstring Unique transaction identifier for the refund descstring Detailed description including the approval code additional_infostring | null Reserved for additional metadata epistring Merchant terminal / EPI identifier channelstring Transaction channel created_datestring Refund date in DD/MM/YYYY format created_timestring Refund time in HH:MM:SS format rrnstring Retrieval reference number for reconciliation
JSON
{
"error_no": "E98",
"error_code": "54",
"success_url": false,
"txnid": "10333440",
"batch_no": 846,
"switch_error_code": "V0548",
"mesg": "Card expired",
"desc": "Error code :54",
"msg": "Card expired",
"isFlexSendOrNot": "V0548"
}
Field Type Description error_nostring E98 indicates a declined refunderror_codestring Decline code (e.g. 54 = card expired) success_urlboolean Always false for declined transactions txnidstring Transaction identifier assigned to the failed refund attempt batch_nointeger Settlement batch identifier switch_error_codestring Switch-level error code mesgstring Error message msgstring Error message descstring Detailed error description isFlexSendOrNotstring Flex routing indicator; mirrors switch_error_code
JSON
{
"error_no": "E26",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "AUTHENTICATION FAILED"
}
Field Type Description error_nostring E26 indicates an authentication failuremesgstring Error message msgstring Error message descstring Detailed description of the error cause
error_noMeaning Typical cause S00Approved Refund processed successfully E98Declined Card expired or original transaction cannot be refunded E26Processing error Authentication credentials are invalid
Settle all open transactions in the current batch for a given terminal.
JSON
{
"error_no": "S00",
"error_code": "00",
"amount": "88.87",
"tax": "0.00",
"customfee": "0.34",
"msg": "APPROVED",
"txnid": null,
"desc": null,
"additional_info": null,
"epi": "2319916062",
"channel": "VT",
"created_date": "28/04/2026",
"created_time": "06:09:35",
"rrn": null
}
Field Type Description error_nostring S00 indicates the settlement request was acceptederror_codestring Gateway error code. 00 = no error amountstring Total settled amount in decimal format. "0.00" for an empty batch taxstring Total tax amount settled customfeestring Total custom fees settled msgstring Result (e.g. APPROVED) txnidstring | null Not applicable for settlement; always null descstring | null Not applicable for settlement; always null additional_infostring | null "Empty Batch" when no transactions were present; otherwise nullepistring Merchant terminal / EPI identifier channelstring Transaction channel created_datestring Settlement date in DD/MM/YYYY format created_timestring Settlement time in HH:MM:SS format rrnstring | null Not applicable for settlement; always null
JSON
{
"error_no": "E26",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "AUTHENTICATION FAILED"
}
Field Type Description error_nostring E26 indicates an authentication failuremesgstring Error message msgstring Error message descstring Detailed description of the error cause
error_noMeaning Typical cause S00Approved Batch settled (or empty batch acknowledged) E26Processing error Authentication credentials are invalid
Note: Both a successful settlement and an empty batch return error_no: "S00". Check additional_info for the value "Empty Batch" to distinguish the two cases.
Retrieve a list of recurring subscriptions associated with a terminal.
JSON
{
"records": [
{
"subscription_id": "18262",
"amount": "100",
"custom_fee": "3.0000",
"tax": "3.5000",
"invoice_number": "12345678",
"product_description": "Product 1",
"shipping_customer_name": "John Doe",
"shipping_street_no": "3636",
"shipping_street_name": "33rd street",
"shipping_unit": "206",
"shipping_city": "ASTORIA",
"shipping_state": "NY - New York",
"shipping_zipcode": "11106",
"billing_customerName": "John Doe",
"billing_street_no": "3636",
"billing_street_name": "33rd street",
"billing_unit": "206",
"billing_city": "ASTORIA",
"billing_state": "NY - New York",
"billing_zipcode": "11106",
"subscription_day_of_the_month": "25",
"subscription_starts_from": "2024-08-23",
"subscription_valid_for": "6",
"phone": "5478964785",
"email": "jhon******.com",
"no_of_failed_attempts": "0",
"status": "1",
"card_number": "XXXX1111",
"total_no_of_payments": "6",
"forfeit": "0",
"forfeit_date": null
}
],
"error_no": "S00",
"error_code": "00"
}
Field Type Description error_nostring S00 indicates a successful responseerror_codestring Gateway error code. 00 = no error recordsarray Array of subscription objects
Field Type Description subscription_idstring Unique subscription identifier amountstring Recurring charge amount in decimal format custom_feestring Custom fee applied per billing cycle taxstring Tax amount applied per billing cycle invoice_numberstring Invoice reference for the subscription product_descriptionstring Description of the subscribed product or service shipping_customer_namestring Name on the shipping address shipping_street_nostring Shipping street number shipping_street_namestring Shipping street name shipping_unitstring Shipping unit or apartment number shipping_citystring Shipping city shipping_statestring Shipping state (with label, e.g. NY - New York) shipping_zipcodestring Shipping ZIP code billing_customerNamestring Name on the billing address billing_street_nostring Billing street number billing_street_namestring Billing street name billing_unitstring Billing unit or apartment number billing_citystring Billing city billing_statestring Billing state (with label, e.g. NY - New York) billing_zipcodestring Billing ZIP code subscription_day_of_the_monthstring Day of the month on which billing runs (e.g. 25) subscription_starts_fromstring Subscription start date in YYYY-MM-DD format subscription_valid_forstring Number of billing cycles the subscription is valid for phonestring Customer phone number emailstring Customer email address (may be partially masked) no_of_failed_attemptsstring Number of failed billing attempts so far statusstring Subscription status — 1 = active, 0 = inactive card_numberstring Masked card number — last 4 digits shown (e.g. XXXX1111) total_no_of_paymentsstring Total number of billing cycles configured forfeitstring 1 if the subscription has been forfeited; 0 otherwiseforfeit_datestring | null Date the subscription was forfeited; null if not forfeited
JSON
{
"error_no": "E32",
"mesg": "PROCESSING ERROR",
"msg": "PROCESSING ERROR",
"desc": "ACTIVE SEARCH FLAG IS MISSING"
}
Field Type Description error_nostring E32 indicates a missing required filter parametermesgstring Error message msgstring Error message descstring Detailed description of the error cause
error_noMeaning Typical cause S00Success Subscription records returned E32Processing error Required active_search_flag parameter is missing from the request