iPOS Transact API
Transaction Type: Void | Refund | Ticket and TipAdjust
ipos-transact API request contains 3 primary objects
Objects | Description |
---|---|
Token | Required, AuthToken information to be sent in the header of the request |
merchantAuthentication | Required, contains information about the merchant authentication details like TPN number, unique transaction reference id |
transactRequest | Required, contains information like Transaction type, RRN, Amount to process payment void / refund |
Request Method
HTTPS Request Method | POST |
---|
iposTransact API Endpoint
Sandbox URL | https://payment.ipospays.tech/api/v1/iposTransact (opens in a new tab) |
---|---|
Production URL | https://payment.ipospays.com/api/v1/iposTransact (opens in a new tab) |
Request Parameters
Request Parameters (Header)
Objects | Description |
---|---|
token | AuthToken (can get from portal settings) |
JSON Content-Type | application/json |
Request Parameters (Body)
Field | Type | Description | ||
---|---|---|---|---|
merchantAuthentication ( Obj ) | ||||
merchantId * | Number | TPN Number registered in iPOS. Example Value: 139322815010 Length: 12 digits | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactRequest ( Obj ) | ||||
amount+ | String | (USD) Amount to be voided/refunded. This amount may be equal to or less than the settled amount. USD amount to be multiplied by 100 Length: 8 characters Format: 12525 (125.25 $ X 100) | ||
RRN * | Number | Unique retrieval reference number Length: 12 characters | ||
transactionType * | Number | Type of transactions to be processed. Default: 3 Values: 1 – Sale, 2 – Void, 3 – Refund, 6- Ticket, 7-TipAdjust |
Response Parameters
Field | Type | Description | ||
---|---|---|---|---|
iPOS-TransactResponse ( Obj ) | ||||
responseCode * | Number | iPOS-Transact response code Values: 200 – Successful 400 – Declined | ||
responseMessage * | string | iPOS-Transact response message Values: Successful, Declined | ||
errResponseCode* * | Alphanumeric | PG error response code Values: PG error response code / payment processor error response code Length: up-to 2 charactersProcessor Response code (2 characters) Example: 00, 05, … # Error code & message details shared in below doc | ||
errResponseMessage* * | string | PG error response message Values: PG error response message / Payment processor error response message | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactionType * | Number | Type of transactions to be processed. Note: 1 – sale, 2 – void, 3 – refund | ||
amount | Float | Amount voided/refunded Format: xxxxxx.xx | ||
responseApprovalCode | string | Response Approval Code Format: Alphanumeric Length: 6 chars | ||
RRN | Number | Unique retrieval reference number Length: 12 characters | ||
transactionId * | Number | PG response unique transaction id Length: 32 characters | ||
transactionNumber | Number | Invoice of Transaction number Length: 4 digits | ||
batchNumber | Number | Batch Number Length: 3 digits |
*
Mandatory
**
upon only on specific conditions
†
Optional
iposTransact API – JSON Request Sample
Post head request (header auth-token request)
{
"token": ""
};
Post body request
{
"merchantAuthentication": {
"merchantId": "",
"transactionReferenceId": ""
},
"transactionRequest": {
"transactionType": <2-void / 3-refund / 6- ticket, 7- tipadjust>,
"rrn": "< rrn Number>", // RRN number received for original Transaction
"amount": "", // Amount to be refunded|TipAdjust|ticket, example 1000 for 10$ i.e. 10x100
},
}
iposTransact API – JSON Response Sample
iposTransact API request validation response
{
"errors": [
{
"field": "merchantAuthentication.merchantId",
"message": "Invalid Merchant Id"
},
{
"field": "transactionRequest.RRN",
"message": "Invalid RRN number"
}, ...
]
}
Payment Processor Response - Upon transaction success or decline
{
"iposTransactResponse": {
"responseCode": "iPOS-HP response code like 200, 400",
"responseMessage": "Successful/Declined",
"errResponseCode": "Error response code from PG",
"errResponseMessage": "Error response message from PG",
"transactionReferenceId": "merchant unique transaction reference id sent on request",
"transactionType": "2 - void, 3 - refund , 6- ticket, 7- tipadjust",
"transactionId": "Unique transaction Id of PG",
"amount": "amount or total amount refunded",
"responseApprovalCode": "response approval code from processor ex: TAS164",
"rrn": "retrieval reference number from processor #219313501821",
"transactionNumber": "4 digits of transaction invoice number from processor",
"batchNumber": "3 digits of batch number from processor"
}
}
iposTransact API – (Postman) Simulator Url
Url:- https://documenter.getpostman.com/view/21863361/2s83tCKYRA (opens in a new tab)
Error Response Code & Messages
HTTP Response Code | Response Message |
---|---|
200 | Success |
400 | Declined |
iPOS-Transact Error Field | iPOS-Transact Error Response Message |
---|---|
merchantAuthentication (object) | Merchant authentication cannot be null |
transactionRequest (object) | Transaction request cannot be null |
merchantId | Merchant id cannot be null |
merchantId | Invalid merchant id |
transactionReferenceId | Transaction reference id cannot be null |
transactionReferenceId | Invalid transaction reference id |
amount | Invalid amount |
rrn | RRN cannot be nul |
token | Invalid token |
Failed | Device does not exist |
Failed | TPN status is suspended |
Failed | TPN status is not active |
amount | High amount value |
Failed | This transaction is already voided |
Failed | This transaction is already refunded |
Failed | This transaction cannot be voided/refunded |
Failed | Refund option is disabled for this TPN |
transactionRequest (object) | Invalid transaction request |
Failed | Void option is disabled for this TPN |
RRN | No transaction for this RRN |
Failed | This transaction is already voided/refunded |
Transaction Type: Sale/PreAuth (Using Card Token/Payment Token)
ipos-transact API request contains 3 primary objects
Objects | Description |
---|---|
Token | Required, AuthToken information to be sent in the header of the request |
merchantAuthentication | Required, contains information about the merchant authentication details like TPN number, unique transaction reference id |
transactRequest | Required, contains information like Transaction type, Card Token, Amount, Calculate Fee, etc… |
preferences | Required, contains information like AVS verification require or not, e-receipt to end-user by sms/mail require or not |
AVS | Required Information of AVS of StreetNo and ZipCode |
Request Method
HTTPS Request Method | POST |
---|
iposTransact API Endpoint
Objects | Description |
---|---|
Sandbox URL: * | https://payment.ipospays.tech/api/v1/iposTransact |
Production URL * | https://payment.ipospays.com/api/v1/iposTransact |
https://payment.ipospays.tech/api/v2/iposTransact (opens in a new tab)
Note: New Enhancements with AVS Verification with above URL
Request Parameters
Request Parameters (Header)
Objects | Description |
---|---|
token | AuthToken (can get from portal settings) |
JSON Content-Type | application/json |
Request Parameters (Body)
Field | Type | Description | ||
---|---|---|---|---|
merchantAuthentication ( Obj ) | ||||
merchantId * | Number | TPN Number registered in iPOS. Example Value: 139322815010 Length: 12 digits | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactRequest ( Obj ) | ||||
amount+ | String | (USD) Amount to be voided/refunded. This amount may be equal to or less than the settled amount. USD amount to be multiplied by 100 Length: 8 characters Format: 12525 (125.25 $ X 100) | ||
transactionType * | Number | Type of transactions to be processed. Default: 1 Values: 1 – Sale (using card token), 5- PreAuth(using card token) | ||
cardToken* * | String | Card tokenization value/string to capture the said amount to the given tokenized card Format: Encrypted token string | ||
paymentTokenId* * | String | Payment token value/string to capture the said amount to the given tokenized card (Only used for Sale Transaction) Format: Encrypted token string | ||
applySteamSettingTipFeeTax * | String | Tips, Fees & Tax will be calculated based on steam settings and added with the given base amount to charge from the customer. Values: true or false Default: false Note: If set to true -> iPOS-Transact access Tips, Fees & Taxes details based on STEAM parameters and add it with a given base amount. If set to false -> iPOS-Transact, will consider the amount in request payload as total amount. | ||
preferences ( Obj ) | ||||
eReceipt * | Boolean | To send payment status notification to customers by Mobile SMS and/or E-Mail. Values: ‘true’ or ‘false’ | ||
customerName | String | Customer full-name, will be used as salutation while notifying the payment status to the customer upon request by the merchant. Format: Alphabets spaceLength: 25 characters Note: This input field is required, if eReceipt set to ‘true’ | ||
customerEmail | String | Customer e-mail id to which payment status will be notified if requested Format: E-mail id Note: This input field is required, if eReceipt set to ‘true’ | ||
customerMobile | String | Customer mobile number to which payment status will be notified if requested. Format: +xxxxxxxxxxxx Example: +18989898989 Length: 13 Note: This input field is required, If eReceipt set to ‘true’ | ||
requestCardToken | Boolean | This Field is defined to send the Tokenized Card Details for Integrator for requested customers. Values : ‘true’ or ‘false’ | ||
AVS ( Obj - Use v2 version for this future ) | ||||
StreetNo | String | StreetNo of the Customer Address | ||
Zip | String | ZipCode of the Customer Address |
Response Parameters
Field | Type | Description | ||
---|---|---|---|---|
iPOS-TransactResponse ( Obj ) | ||||
responseCode * | Number | iPOS-Transact response code Values: 200 – Successful 400 – Declined | ||
responseMessage * | string | iPOS-Transact response message Values: Successful, Declined | ||
errResponseCode* * | Alphanumeric | PG error response code Values: PG error response code / payment processor error response code Length: up-to 2 charactersProcessor Response code (2 characters) Example: 00, 05, … | ||
errResponseMessage* * | string | PG error response message Values: PG error response message / Payment processor error response message | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactionType * | Number | Type of transactions to be processed. Note: 1 – sale, 2 – void, 3 – refund | ||
amount | Float | Amount voided/refunded Format: xxxxxx.xx | ||
responseApprovalCode | string | Response Approval Code Format: Alphanumeric Length: 6 chars | ||
RRN | Number | Unique retrieval reference number Length: 12 characters | ||
transactionId * | Number | PG response unique transaction id Length: 32 characters | ||
transactionNumber | Number | Invoice of Transaction number Length: 4 digits | ||
batchNumber | Number | Batch Number Length: 3 digits | ||
totalAmount | Float | Total Amount charged from customer Format: xxxxxx.xx Length: 8 | ||
customFee | Float | Custom Fee charged from customer Format: xxxxxx.xx | ||
chdToken | String | Tokenized Card Data will sent in response based on the flag provided in request of field requestCardToken as true Format: Alphanumeric |
*
Mandatory
**
upon only on specific conditions
†
Optional
iposTransact API – Sale using Token – JSON Request Sample
Post head request (header auth-token request)
{
"token": ""
};
Post body request
{
"merchantAuthentication": {
"merchantId": "",
"transactionReferenceId": ""
},
"transactionRequest": {
"transactionType": 1, // Sale (using token)
"amount": "", // Amount to be refunded, example 1000 for 10$ i.e. 10x100
"cardToken":““," “paymentTokenId”: ",
"applySteamSettingTipFeeTax": true/false
},
"preferences": {
"eReceipt": true/false,
"customerName": "Customer_Name",
"customerEmail": "Customer_Email",
"customerMobile": "Customer_mobile_number_with_ISD_code",
},
"Avs" : {
"StreetNo" : "23453",
"Zip" : "12344"
}
}
iposTransact API – Sale using Token – JSON Response Sample
iposTransact API request validation response
{
"errors": [
{
"field": "merchantAuthentication.merchantId",
"message": "Invalid Merchant Id"
},
{
"field": "transactionRequest.RRN",
"message": "Invalid RRN number"
}, ...
]
}
Payment Processor Response - Upon sale transaction success or decline
{
"iposTransactResponse": {
"responseCode": "iPOS-HP response code like 200, 400,...",
"responseMessage": "Successful/Declined",
"errResponseCode": "Error response code",
"errResponseMessage": "Error response message",
"transactionReferenceId": "merchant unique transaction reference id sent on request",
"transactionType": 1, // Sale
"transactionId": "Unique transaction Id of payment processor"
"transactionNumber": "4 digits of transaction number from payment processor",
"batchNumber": "3 digits of batch number from payment processor",
"amount": "base amount or total amount charged",
"customFee": "custom fee",
"totalAmount": "total amount charged",
"responseApprovalCode": "response approval code from processor ex: TAS164",
"RRN": "retrieval reference number from processor #219313501821",
}
}
iposTransact API – Sale transaction using Token (Postman Simulator Url)
Url: yet to share sandbox postman url
Error Response Code & Messages
HTTP Response Code | Response Message |
---|---|
200 | Success |
400 | Declined |
applySteamSettingTipFeeTaxSteam setting for tip, fee & tax are not found
iPOS-Transact Error Field | iPOS-Transact Error Response Message |
---|---|
merchantAuthentication (object) | Merchant authentication cannot be null |
transactionRequest (object) | Transaction request cannot be null |
merchantId | Merchant id cannot be null |
merchantId | Invalid merchant id |
transactionReferenceId | Transaction reference id cannot be null |
transactionReferenceId | Invalid transaction reference id |
amount | Invalid amount |
token | Invalid token |
Failed | Device does not exist |
Failed | TPN status is suspended |
Failed | TPN status is not active |
transactionRequest (object) | Invalid transaction request |
Transaction Type: Batch Settlement
ipos-transact API request contains 3 primary objects
Objects | Description |
---|---|
Token | Required, AuthToken information to be sent in the header of the request |
merchantAuthentication | Required, contains information about the merchant authentication details like TPN number, unique transaction reference id |
transactRequest | Required, contains information like Transaction type |
Request Method
HTTPS Request Method | POST |
---|
iposTransact API Endpoint
Sandbox URL | https://payment.ipospays.tech/api/v1/iposTransact (opens in a new tab) |
---|---|
Production URL | https://payment.ipospays.com/api/v1/iposTransact (opens in a new tab) |
Request Parameters
Request Parameters (Header)
Objects | Description |
---|---|
token | AuthToken (can get from portal settings) |
JSON Content-Type | application/json |
Request Parameters (Body)
Field | Type | Description | ||
---|---|---|---|---|
merchantAuthentication ( Obj ) | ||||
merchantId * | Number | TPN Number registered in iPOS. Example Value: 139322815010 Length: 12 digits | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactRequest ( Obj ) | ||||
transactionType * | Number | Type of transactions to be processed. Default: 4 Values: 4 – Batch Settlement |
Response Parameters
Field | Type | Description | ||
---|---|---|---|---|
iPOS-TransactResponse ( Obj ) | ||||
responseCode * | Number | iPOS-Transact response code Values: 200 – Successful 400 – Declined | ||
responseMessage * | string | iPOS-Transact response message Values: Successful, Declined | ||
errResponseCode* * | Alphanumeric | PG error response code Values: PG error response code / payment processor error response code Length: up-to 2 charactersProcessor Response code (2 characters) Example: 00, 05, … # Error code & message details shared in below doc | ||
errResponseMessage* * | string | PG error response message Values: PG error response message / Payment processor error response message | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactionType * | Number | Type of transactions to be processed. Note: 1 – sale, 2 – void, 3 – refund | ||
amount | Float | Amount voided/refunded Format: xxxxxx.xx | ||
responseApprovalCode | string | Response Approval Code Format: Alphanumeric Length: 6 chars | ||
RRN | Number | Unique retrieval reference number Length: 12 characters | ||
transactionId * | Number | PG response unique transaction id Length: 32 characters | ||
transactionNumber | Number | Invoice of Transaction number Length: 4 digits | ||
batchNumber | Number | Batch Number Length: 3 digits |
*
Mandatory
**
upon only on specific conditions
iposTransact API – Batch Settlement – JSON Request Sample
Post head request (header auth-token request)
{
"token": ""
};
Post body request
{
"merchantAuthentication": {
"merchantId": "",
"transactionReferenceId": ""
},
"transactionRequest": {
"transactionType": 4 // Batch settlement
}
}
iposTransact API – Batch Settlement – JSON Response Sample
iposTransact API request validation response
{
"errors": [
{
"field": "merchantAuthentication.merchantId",
"message": "Invalid Merchant Id"
},
{
"field": "transactionRequest.transactionType",
"message": "Invalid Transaction Type"
}, ...
]
}
Payment Processor Response - Upon batch settlement transaction success or decline response
{
"iposTransactResponse": {
"responseCode": "iPOS-HP response code like 200, 400,...",
"responseMessage": "Successful/Declined",
"errResponseCode": "Error response code",
"errResponseMessage": "Error response message",
"transactionReferenceId": "merchant unique transaction reference id sent on request",
"transactionType": 4, // batch settlement
"transactionId": "Unique transaction Id of payment processor"
"transactionNumber": "4 digits of transaction number from payment processor",
"batchNumber": "3 digits of batch number from payment processor",
"amount": "base amount or total amount charged",
"responseApprovalCode": "response approval code from processor ex: TAS164",
"RRN": "retrieval reference number from processor #219313501821",
}
}
iposTransact API – Batch Settlement Transaction (Postman Url)
Url: yet to share sandbox postman url
Transaction Type: Incremental Auth :
Objects | Description |
---|---|
Token | Required, AuthToken information to be sent in the header of the request |
merchantAuthentication | Required, contains information about the merchant authentication details like TPN number, unique transaction reference id |
transactRequest | Required, contains information like Transaction type |
Request Method
HTTPS Request Method | POST |
---|
iposTransact API Endpoint
Sandbox URL | https://payment.ipospays.tech/api/v1/iposTransact (opens in a new tab) |
---|---|
Production URL | https://payment.ipospays.com/api/v1/iposTransact (opens in a new tab) |
Request Parameters
Request Parameters (Header)
Objects | Description |
---|---|
token | AuthToken (can get from portal settings) |
JSON Content-Type | application/json |
Request Parameters (Body)
Field | Type | Description | ||
---|---|---|---|---|
merchantAuthentication ( Obj ) | ||||
merchantId * | Number | TPN Number registered in iPOS. Example Value: 139322815010 Length: 12 digits | ||
transactRequest ( Obj ) | ||||
amount | Number | Requesting Amount for Incremental Auth | ||
RRN | Number | Original PreAuth RRN Number | ||
transactionType * | Number | Type of transactions to be processed. Default: 8 Values: 8 – Incremental Auth | ||
preferences ( Obj ) | ||||
eReceipt * | Boolean | Flag to send the sms/email Values: ‘true’ or ‘false’ | ||
customerName+ | String | Name of the Requested Customer | ||
customerEmail+ | String | Email of the Customer Format: E-mail id Note: This input field is required, if eReceipt set to ‘true’ | ||
customerMobile+ | String | Customer mobile number |
Response Parameters
Field | Type | Description | ||
---|---|---|---|---|
iPOS-TransactResponse ( Obj ) | ||||
responseCode * | Number | iPOS-Transact response code Values: 200 – Successful 400 – Declined | ||
responseMessage * | string | iPOS-Transact response message Values: Successful, Declined | ||
errResponseCode* * | Alphanumeric | PG error response code Values: PG error response code / payment processor error response code Length: up-to 2 charactersProcessor Response code (2 characters) Example: 00, 05, … # Error code & message details shared in below doc | ||
errResponseMessage* * | string | PG error response message Values: PG error response message / Payment processor error response message | ||
transactionReferenceId * | string | Merchant unique transaction reference id Format: Alphanumeric Length: <=20 chars required | ||
transactionType * | Number | Type of transactions to be processed. Note: 1 – sale, 2 – void, 3 – refund | ||
amount | Float | Amount voided/refunded Format: xxxxxx.xx | ||
responseApprovalCode | string | Response Approval Code Format: Alphanumeric Length: 6 chars | ||
RRN | Number | Unique retrieval reference number Length: 12 characters | ||
transactionId * | Number | PG response unique transaction id Length: 32 characters | ||
transactionNumber | Number | Invoice of Transaction number Length: 4 digits | ||
batchNumber | Number | Batch Number Length: 3 digits |
*
Mandatory
**
upon only on specific conditions
†
Optional
Request Body :
{
“merchantAuthentication”: {
“merchantId”: “962923571839”,
“transactionReferenceId”: “87813a46a578216876a3”
},
“transactionRequest”: {
“transactionType”:8,
“amount”: “500”,
“rrn”: “412308501306”
},
“preferences”: {
“eReceipt”: true,
“customerName”: “Sujith”,
“customerEmail”: “schennur@denovosystem.com”,
“customerMobile”: “+919030427945”
}
}
Response Body :
{
“iposhpresponse”: {
“responseCode”: “200”,
“responseMessage”: “Success”,
“errResponseCode”: “”,
“errResponseMessage”: “”,
“transactionReferenceId”: “87813a46a578216876a3”,
“transactionType”: “11”,
“transactionId”: “64488977724057183920240503023758”,
“amount”: “500”,
“responseApprovalCode”: “TAS437”,
“rrn”: “412308501306”,
“transactionNumber”: “19”,
“batchNumber”: “318”,
“totalAmount”: “500”,
“customFee”: “”,
“localTax”: “”,
“stateTax”: “”
}
}
Transaction Type: Open Batch :
Objects | Description |
---|---|
Token | Required, AuthToken information to be sent in the header of the request |
merchantAuthentication | Required, contains information about the merchant authentication details like TPN number, unique transaction reference id |
transactRequest | Required, contains information like Transaction type, RRN, Amount to process payment void / refund |
Request Method
HTTPS Request Method | POST |
---|
iposTransact API Endpoint
Sandbox URL | https://payment.ipospays.tech/api/v1/iposTransact (opens in a new tab) |
---|---|
Production URL | https://payment.ipospays.com/api/v1/iposTransact (opens in a new tab) |
Request Parameters
Request Parameters (Header)
Objects | Description |
---|---|
token | AuthToken (can get from portal settings) |
JSON Content-Type | application/json |
Request Parameters (Body)
Field | Type | Description | ||
---|---|---|---|---|
merchantAuthentication ( Obj ) | ||||
merchantId * | Number | TPN Number registered in iPOS. Example Value: 139322815010 Length: 12 digits | ||
transactRequest ( Obj ) | ||||
transactionType * | Number | Type of transactions to be processed. Default: 9 Values: 9 – Open Batch |
Response Parameters:
Field | Type | Description | ||
---|---|---|---|---|
iPOS-TransactResponse ( Obj ) | ||||
total_without_fee * | Decimal | Total Amount without Fee Values: 1.00 | ||
batch_number * | String | Batch Number for Settlement Batch Values: 423 | ||
batch_profiles | Object | Batch Profiles Data | ||
withoutLocalTaxAmount | Decimal | Total Amount without Local Tax Values: 1.00 | ||
without_tax | Decimal | Total Amount without Tax Values: 1.00 | ||
batch_summary | Object | Batch Summary Information | ||
inx | String | Batch Summary Index Value : 1 | ||
amount | Decimal | Total Batch Settlement Amount Value : 96.94 | ||
profileId | String | Profile Number Register with TPN Value: 01 | ||
type * | String | Type of Transaction Value: SALE | ||
txName | String | Type of Transaction Value: SALE | ||
transaction_no | Number | Transaction Number Value : 2 | ||
batch_number | String | Batch Number Value : 2 | ||
fee | Decimal | Fee Amount Value : 3.63 | ||
batch_details | Object | Batch Detail Information | ||
surcharge | Number | Surcharge | ||
reducedTaxFee | String | Reduced Tax Fee | ||
groupType | String | Group Type | ||
approvalCode | String | Transaction Approval Code Value : TAS996 | ||
externalRefId | String | External Transaction Id | ||
tagValue | String | Tag Value | ||
discount | Number | Discount Amount | ||
appCode | String | Transaction Approval Code Value : TAS996 | ||
type | String | Transaction Type Value : Sale | ||
voidFlag | String | Void Status Value : N/Y | ||
posRequestTime | String | Transaction Request Time | ||
invoiceNumber | String | Invoice Number | ||
onlyTipAmt | Number | Tip Amount | ||
customFee | Number | Custome Fee | ||
approvedAmount | Decimal | Approved Txn Amount | ||
commercialTaxAmount | Number | Commercial Tax Amount | ||
reducedTax | Number | Reduced Tax Amount | ||
tagLabel | String | Tag Label Value | ||
serviceFee | Decimal | Service Fee Amount | ||
amount | Decimal | Transaction Amount | ||
tipAmount | Decimal | Tip Amount | ||
merchantFee | Decimal | Merchant Fee | ||
transactionId | String | Unique Transaction generated per Request | ||
stateTaxAmount | Decimal | State Tax Amount | ||
baseAmount | Decimal | Base Amount | ||
rrn | String | Transaction Unique Number | ||
localTaxAmount | Decimal | Local Tax Amount | ||
feeAmount | Decimal | Fee Amount | ||
profileId | String | Profile Id | ||
adjustedTipAmount | Decimal | Adjusted Tip Amount | ||
totalTaxAmount | Decimal | Total Tax Amount | ||
posRequestDate | String | Pos Request Date | ||
account | String | Transaction Initiated PAN | ||
card | String | Card Type | ||
discount | Decimal | Discount Amount | ||
settleDate | String | Settled Date | ||
batchBase | Decimal | Batch Base Amount | ||
Batch Total Amount | Decimal | Discount Amount | ||
stateTaxAmount | Decimal | State Tax Amount | ||
withoutStateTaxAmount | Decimal | Without State Tax Amount | ||
localTaxAmount | Decimal | Local Tax Amount | ||
without_discount | Decimal | Without Discount | ||
profile_name | String | Profile Name | ||
without_tip | String | Without Tip Amount | ||
profileCode | String | Profile Code | ||
tip | Decimal | Tip Amount | ||
without_fee | Decimal | Without Fee Amount | ||
taxAmount | Decimal | Tax Amount | ||
transaction_no | Number | Transaction Number | ||
processorData | Object | Processor Information | ||
Agent | String | Agent Number | ||
Chain | String | Chain Number | ||
TermNo | String | Terminal Number | ||
Agent_FIID | String | Agent Id | ||
Mid | String | Terminal Registered under Merchant Number | ||
Store | String | Registered Store Number | ||
dsGroup | String | Terminal Number | ||
TermId | String | Registered under Bank | ||
ABA_No | String | |||
total_transactions | Number | Number of transaction Settle | ||
total_fee | Decimal | Total Fee Amount | ||
cash_payment | Object | Cash Payment Transactions | ||
data | Object | Cash Payment Transactions Data | ||
cash_payment_total | Number | Total Cash Payments | ||
cash_txn_count | Number | Total Cash Txn Count | ||
alter_payments | Object | Alter Payment under TPN | ||
alter_txn_count | Number | Alter Payment Txn Count | ||
approvalCode | String | Approval Code | ||
txTimeq | String | Transaction Time | ||
DiscountFee | Decimal | Discount Fee | ||
createdAt | String | Transaction Requested Date | ||
posResponseCode | String | Pos Response Code | ||
invoiceNumber | String | Invoice Number | ||
onlyTipAmt | Decimal | Tip Amount | ||
cashDiscount | Decimal | Cash Discount Amount | ||
txName | String | Transaction Name | ||
updatedAt | String | Transaction Response Updated Date | ||
serviceFee | String | Service Fee Amount | ||
hostResponseCode | String | Host Response Code | ||
maskedPan | String | Masked PAN number | ||
additionalDetails | String | Additional Details | ||
transactionId | String | Transaction Id generated per request | ||
destType | String | Destination Name | ||
txAmount | Decimal | Transaction Amount | ||
rrn | String | Unique Transaction Number from Processor | ||
transactionType | Decimal | Type of Transaction | ||
totalAmount | Decimal | Total Amount | ||
tpn | String | Merchant Id | ||
sourceType | String | Requested Source Name | ||
commonMode | String | Mode of Request Received | ||
txDate | String | Transaction Date | ||
alter_payment_total | Decimal | Alter Payments Total Amount | ||
total_tip | Decimal | Total Tip Amount | ||
batch_total | Decimal | Batch Total Amount |
*Request : *
{
"merchantAuthentication": {
"merchantId": "258823860131"
},
"transactionRequest": {
"transactionType": 9
}
}
*Response Successful : *
{
"iposhpresponse": {
"total_without_fee": 93.31,
"batch_number": "432",
"batch_profiles": [
{
"withoutLocalTaxAmount": 82.58,
"without_tax": 75.4,
"batch_summary": [
{
"inx": "1",
"amount": 96.94,
"profileId": "01",
"type": "SALE",
"txName": "SALE",
"transaction_no": 2
}
],
"batch_number": "432",
"fee": 3.63,
"batch_details": [
{
"surcharge": 0,
"reducedTaxFee": "",
"groupType": null,
"approvalCode": "TAS996",
"externalRefId": "0",
"tagValue": null,
"discount": 0,
"appCode": "TAS996",
"type": "SALE",
"voidFlag": "N",
"posRequestTime": "05:33:38",
"invoiceNumber": "000001",
"onlyTipAmt": 0,
"customFee": 0,
"approvedAmount": 20.65,
"commercialTaxAmount": 0,
"reducedTax": 0,
"tagLabel": null,
"serviceFee": 0,
"amount": 20.65,
"tipAmount": 0,
"merchantFee": 0,
"transactionId": "18019819047186013120240502053338",
"stateTaxAmount": 1.59,
"baseAmount": 15.88,
"rrn": "412305501499",
"localTaxAmount": 3.18,
"feeAmount": 0,
"profileId": "01",
"adjustedTipAmount": 0,
"totalTaxAmount": 4.77,
"posRequestDate": "2024-05-02",
"account": "424242******4242",
"card": "VISA"
}
],
"discount": 0,
"settleDate": null,
"batchBase": 71.77,
"batch_total": 96.94,
"stateTaxAmount": 7.18,
"withoutStateTaxAmount": 89.75999999999999,
"localTaxAmount": 14.36,
"without_discount": 96.94,
"profile_name": "with fee ",
"without_tip": 96.94,
"profileCode": "01",
"tip": 0,
"without_fee": 93.31,
"taxAmount": 21.54,
"transaction_no": 2,
"processorData": {
"Agent": "000000",
"Chain": "111111",
"TermNo": "1515",
"Agent_FIID": "8954",
"Mid": "888000003338",
"Store": "5999",
"dsGroup": "894895618956",
"TermId": "75091651",
"ABA_No": "894789561"
}
}
}
],
"total_transactions": 2,
"total_fee": 3.63,
"cash_payment": {
"data": [],
"cash_payment_total": 0,
"cash_txn_count": 0
},
"alter_payments": {
"alter_txn_count": 27,
"data": [
{
"approvalCode": "00",
"txTime": "12:36:41",
"DiscountFee": 0,
"createdAt": "2024-05-02T07:06:46.000Z",
"posResponseCode": "00",
"invoiceNumber": null,
"onlyTipAmt": 0,
"id": "9fed09f6-4c97-4ce4-8974-2d22c4dea69c",
"cashDiscount": 0,
"txName": "SALE",
"updatedAt": "2024-05-02T07:07:12.000Z",
"serviceFee": 0,
"hostResponseCode": "00",
"maskedPan": "0000000011101010",
"additionalDetails": null,
"transactionId": "66349652588238601311714633606512",
"destType": "ACH",
"txAmount": 15.45,
"rrn": "204180145",
"transactionType": "CHECK",
"totalAmount": 15.45,
"tpn": "258823860131",
"sourceType": "ACH",
"commonMode": "WIFI",
"txDate": "2024-05-02T08:36:41.000Z"
}
],
"alter_payment_total": 410.08
},
"total_tip": 0,
"batch_total": 96.94
}
Failed Response :
{
"iposhpresponse": {
"field": "IPOS_BATCH_001",
"message": "no open batch for this TPN"
}
}
Error Response Code & Messages
HTTP Response Code | Response Message |
---|---|
200 | Success |
400 | Declined |
iPOS-Transact Error Field | iPOS-Transact Error Response Message |
---|---|
merchantAuthentication (object) | Merchant authentication cannot be null |
transactionRequest (object) | Transaction request cannot be null |
merchantId | Merchant id cannot be null |
merchantId | Invalid merchant id |
transactionReferenceId | Transaction reference id cannot be null |
transactionReferenceId | Invalid transaction reference id |
token | Invalid token |
Failed | Device does not exist |
Failed | TPN status is suspended |
Failed | TPN status is not active |
transactionRequest (object) | Invalid transaction request |
Error Response Code | Error Response Message |
---|---|
00 | APPROVAL Approved and completed |
01 | CALL Refer to issuer |
02 | CALL Refer to issuer-Special condition |
03 | TERM ID ERROR Invalid Merchant ID |
04 | HOLD-CALL Pick up card (no fraud) |
05 | DECLINE Do not honor |
06 | ERROR General error |
07 | HOLD-CALL Pick up card, special condition (fraud account) |
08 | APPROVAL Honor Mastercard with ID |
10 | PARTIAL APPROVAL Partial approval for the authorized amount returned in Group III version 022 |
11 | APPROVAL VIP approval |
12 | INVALID TRANS Invalid transaction |
13 | AMOUNT ERROR Invalid amount |
14 | CARD NO. ERROR Invalid card number |
15 | NO SUCH ISSUER No such issuer |
19 | RE ENTER Re-enter transaction |
21 | NO ACTION TAKEN Unable to back out transaction |
25 | NO CARD NUMBER Unable to locate the account number |
28 | NO REPLY File is temporarily unavailable |
30 | MSG FORMAT ERROR Transaction was improperly formatted |
39 | NO CREDIT ACCT No credit account |
41 | HOLD-CALL Lost card, pick up (fraud account) |
43 | HOLD-CALL Stolen card, pick up (fraud account) |
46 | CLOSED ACCOUNT Closed account |
51 | DECLINE Insufficient funds |
52 | NO CHECK ACCOUNT No checking account |
53 | NO SAVE ACCOUNT No savings account |
54 | EXPIRED CARD Expired card |
55 | WRONG PIN Incorrect PIN |
57 | SERV NOT ALLOWED Transaction not permitted-Card |
58 | SERV NOT ALLOWED Transaction not permitted-Terminal |
59 | SUSPECTED FRAUD Suspected fraud |
61 | EXC APPR AMT LIM Exceeds approval amount limit |
62 | DECLINE Invalid service code, restricted |
63 | SEC VIOLATION Security violation |
65 | EXC W/D FREQ LIM Exceeds withdrawal frequency limit |
6P | VERIF DATA FAILD Verification data failed |
75 | PIN EXCEEDED Allowable number of PIN-entry tries exceeded |
76 | UNSOLIC REVERSAL Unable to locate, no match |
77 | NO ACTION TAKEN Inconsistent, reversed, or repeat data |
78 | NO ACCOUNT Blocked, first used transaction from new cardholder, and card not properly unblocked |
3 | TERM ID ERROR Invalid Merchant ID |
4 | HOLD-CALL Pick up card (no fraud) |
5 | DECLINE Do not honor |
6 | ERROR General error |
7 | HOLD-CALL Pick up card, special condition (fraud account) |
8 | APPROVAL Honor Mastercard with ID |
10 | PARTIAL APPROVAL Partial approval for the authorized amount returned in Group III version 022 |
11 | APPROVAL VIP approval |
12 | INVALID TRANS Invalid transaction |
13 | AMOUNT ERROR Invalid amount |
14 | CARD NO. ERROR Invalid card number |
15 | NO SUCH ISSUER No such issuer |
19 | RE ENTER Re-enter transaction |
21 | NO ACTION TAKEN Unable to back out transaction |
25 | NO CARD NUMBER Unable to locate the account number |
28 | NO REPLY File is temporarily unavailable |
30 | MSG FORMAT ERROR Transaction was improperly formatted |
39 | NO CREDIT ACCT No credit account |
41 | HOLD-CALL Lost card, pick up (fraud account) |
43 | HOLD-CALL Stolen card, pick up (fraud account) |
46 | CLOSED ACCOUNT Closed account |
51 | DECLINE Insufficient funds |
52 | NO CHECK ACCOUNT No checking account |
53 | NO SAVE ACCOUNT No savings account |
54 | EXPIRED CARD Expired card |
55 | WRONG PIN Incorrect PIN |
57 | SERV NOT ALLOWED Transaction not permitted-Card |
58 | SERV NOT ALLOWED Transaction not permitted-Terminal |
59 | SUSPECTED FRAUD Suspected fraud |
61 | EXC APPR AMT LIM Exceeds approval amount limit |
62 | DECLINE Invalid service code, restricted |
63 | SEC VIOLATION Security violation |
65 | EXC W/D FREQ LIM Exceeds withdrawal frequency limit |
6P | VERIF DATA FAILD Verification data failed |
75 | PIN EXCEEDED Allowable number of PIN-entry tries exceeded |
76 | UNSOLIC REVERSAL Unable to locate, no match |
77 | NO ACTION TAKEN Inconsistent, reversed, or repeat data |
78 | NO ACCOUNT Blocked, first used transaction from new cardholder, and card not properly unblocked |
H7 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
H8 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
H9 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
HV | FAILURE HV Hierarchy Verification Error |
K0 | TOKEN RESPONSE Token request was processed |
K1 | TOKEN NOT CONFIG Tokenization is not configured |
K2 | TERM NOT AUTHENT Terminal is not authenticated |
K3 | TOKEN FAILURE Data could not be de-tokenized |
M0 | DOM DBT NOT ALWD Mastercard: Canada region-issued Domestic Debit Transaction not allowed |
N2 | CACHBACK NOT AVL Cash back service not available |
N3 | CACHBACK NOT AVL Cash back service not available |
N4 | DECLINE Exceeds issuer withdrawal limit |
N7 | CVV2 MISMATCH CVV2 Value supplied is invalid |
P0 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P1 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P2 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P3 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P4 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P5 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P6 | SERV NOT ALLOWED Contact Merchant Services/Technical Support |
P7 | MISSING SERIAL NUM The terminal has not yet completed the boarding process. The Serial Number has not been set up. |
Q1 | CARD AUTH FAIL Card authentication failed |
R0 | STOP RECURRING Customer requested stop of specific recurring payment |
R1 | STOP RECURRING Customer requested stop of all recurring payments from specific merchant |
R3 | STOP ALL RECUR All recurring payments have been canceled for the card number in the request |
S0 | INACTIVE CARD The PAN used in the transaction is inactive. |
S1 | MOD 10 FAIL The Mod-10 check failed. |
S5 | DCLN NO PRE AUTH Decline - no preauthorization found. |
S9 | MAX BALANCE Maximum working balance exceeded. |
SA | SHUT DOWN The Authorization Server is shut down. |
SB | INVALID STATUS Invalid card status – status is other than active |
SC | UNKNOWN STORE Unknown dealer/store code – special edit. |
SD | TOO MANY RCHRGS Maximum number of recharges is exceeded. |
SE | ALREADY USED Card was already used. |
SF | NOT MANUAL Manual transactions not allowed. |
SH | TYPE UNKNOWN Transaction type was unknown. |
SJ | INVALID TENDER An invalid tender type was submitted. |
SK | CUSTOMER TYPE An invalid customer type was submitted. |
SL | PIN LOCKED PIN was locked. |
SM | MAX REDEMPTS The maximum number of redemptions was exceeded. |
SP | MAX PAN TRIES The maximum number of PAN tries was exceeded. |
SR | ALREADY ISSUED The card was already issued. |
SS | NOT ISSUED The card was not issued. |
T0 | APPROVAL First check is okay and has been converted. |
T1 | CANNOT CONVERT The check is okay but cannot be converted. This is a declined transaction. |
T2 | INVALIDABA Invalid ABA number, not an ACH participant. |
T3 | AMOUNT ERROR Amount greater than the limit. |
V1 | FAILURE VM Daily threshold exceeded. |