Interac® Online Transaction Authorization
URI Summary
Action |
URI Template |
URI Example |
Non-URI Request |
Response |
---|---|---|---|---|
POST |
/v[M.m]/stores/{StoreID}/payments/interaconline/auth/{TenderType}.{format} |
/v1.0/stores/stores123/payments/interaconline/auth/IO.xml |
XML |
200 + XML response |
Request Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<InteracOnlineTransactionAuthRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<OrderId>test</OrderId>
<CurrencyCode>CAD</CurrencyCode>
<InteracOnlineOrderId>41011</InteracOnlineOrderId>
<BankResponseList>
<BankResponse fieldName="merchant_name" fieldValue="GSI Commerce SB"/>
<BankResponse fieldName="IDEBIT_ISSCONF" fieldValue="CONF#TEST"/>
<BankResponse fieldName="IDEBIT_NOTFUNDEDURL" fieldValue="http://secdevwsv03.us.gspt.net:1401/gsi-payment-service/interac-online/non-funded.html?funded=0"/>
<BankResponse fieldName="accountType" fieldValue="Chequing"/>
<BankResponse fieldName="headerText" fieldValue=""/>
<BankResponse fieldName="IDEBIT_TRACK2" fieldValue="3728024906540591214=12010123456789XYZ"/>
<BankResponse fieldName="bank_choice" fieldValue="1"/>
<BankResponse fieldName="IDEBIT_ISSNAME" fieldValue="TestBank1"/>
<BankResponse fieldName="funded" fieldValue="1"/>
<BankResponse fieldName="IDEBIT_ISSLANG" fieldValue="en"/>
<BankResponse fieldName="IDEBIT_VERSION" fieldValue="1"/>
<BankResponse fieldName="IDEBIT_INVOICE" fieldValue="41011"/>
<BankResponse fieldName="confirmValue" fieldValue=""/>
<BankResponse fieldName="IDEBIT_FUNDEDURL" fieldValue="http://secdevwsv03.us.gspt.net:1401/gsi-payment-service/interac-online/funded.html?funded=1"/>
<BankResponse fieldName="IDEBIT_MERCHDATA" fieldValue="CCDC7D56-677B-4BD5-8339259E1CB652BF"/>
<BankResponse fieldName="IDEBIT_AMOUNT" fieldValue="12345"/>
</BankResponseList>
</InteracOnlineTransactionAuthRequest>
Request Elements
Element |
Optional/Required |
Description |
Type |
Restriction |
---|---|---|---|---|
/InteracOnlineTransactionAuthRequest/OrderId |
Required |
A unique identifier for the order. The client is responsible for ensuring uniqueness across all transactions the client initiates with this service. |
String |
Max 20 characters |
/InteracOnlineTransactionAuthRequest/CurrencyCode |
Required |
The code that represents the type of currency being used for a transaction.Currency codes are defined by ISO 4217:2008 See: http://en.wikipedia.org/wiki/ISO_4217 |
Enum |
Max 3 characters |
/InteracOnlineTransactionAuthRequest/InteracOnlineOrderId |
Required |
Payment service generated unique order id submitted as 'trnOrderNumber' on Interac online 1st transaction call. This is done as webstore might have dummy order id during the first call. During 1st transaction call, this id will be returned. Webstore should return this id as part of 2nd auth call input. Payment service will use the same to link both the transactions. |
String |
Max 32 characters |
/InteracOnlineTransactionAuthRequest/BankResponseList |
Required |
All bank authorization returned values shall be passed in the list. |
Complex Type |
|
/InteracOnlineTransactionAuthRequest/BankResponseList/BankResponse |
Required |
All bank authorization returned values shall be passed as name/value pairs. Name as an attribute, value for the element. |
Complex Type |
|
/InteracOnlineTransactionAuthRequest/BankResponseList/BankResponse/fieldName |
Required |
Set field names returned Interac online customer bank interaction response. |
String |
Sample field names returned,
|
/InteracOnlineTransactionAuthRequest/BankResponseList/BankResponse/fieldValue |
Required |
Map the value of all fields returned from Interac online customer bank interaction response. |
String |
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
<InteracOnlineTransactionAuthReply xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<OrderId>123456</OrderId>
<ResponseCode>Success</ResponseCode>
<TransactionId>10000034</TransactionId>
<TransactionDateTime>2021-12-27T09:16:54Z</TransactionDateTime>
<TransactionAmount>123.45</TransactionAmount>
<BankAuthorizationCode>TEST</BankAuthorizationCode>
<FinancialInstitutionConfirmationCode>CONF#TEST</FinancialInstitutionConfirmationCode>
<FinancialInstitutionName>TestBank1</FinancialInstitutionName>
</InteracOnlineTransactionAuthReply>
Response Elements
Element |
Optional/Required |
Description |
Type |
Restriction |
---|---|---|---|---|
/InteracOnlineTransactionAuthReply/OrderId |
Required |
A unique identifier for the order. The client is responsible for ensuring uniqueness across all transactions the client initiates with this service. |
String |
Max 20 characters |
/InteracOnlineTransactionAuthReply/ResponseCode/ |
Required |
Used by client to determine Success or Fail or Timeout response. |
Enum |
Fail/Success/Timeout |
/InteracOnlineTransactionAuthReply/TransactionId |
Optional |
Unique id number used to identify an individual transaction. Reference the transaction identification number (trnId) from the original purchase for refunds. |
String |
Max 9 characters |
/InteracOnlineTransactionAuthReply/TransactionDateTime |
Optional |
The date and time that the transaction was processed. Received as PST/PDT from the provider and passed out as UTC. |
DateTime |
|
/InteracOnlineTransactionAuthReply/TransactionAmount |
Optional |
Transaction amount |
String |
|
/InteracOnlineTransactionAuthReply/BankAuthorizationCode |
Optional |
If the transaction is approved this parameter will contain a unique bank-issued code. |
String |
Max 32 characters |
/InteracOnlineTransactionAuthReply/FinancialInstitutionConfirmationCode |
Optional |
Where applicable, an Interac online confirmation number will be returned by the customer’s financial institution if the transaction has been processed successfully. This value must be displayed to the customer on a transaction confirmation page for Interac online transactions. |
String |
Max 15 characters |
/InteracOnlineTransactionAuthReply/FinancialInstitutionName |
Optional |
The name of the customer’s financial institution for Interac online transactions. |
String |
Max 30 characters |
/InteracOnlineTransactionAuthReply/ErrorDetail |
Optional |
Contains optional error information as returned from Interac online. If error field type is not mapped, then error text element might be used. |
Complex Type |
|
/InteracOnlineTransactionAuthReply/ErrorDetail/ErrorMessage |
Required |
This field will return a relevant error message in case of failure. |
String |
Max 30 characters |
/InteracOnlineTransactionAuthReply/ErrorDetail/ErrorFields |
Optional |
Interac online can mention about specific field value having the problem. This is not supposed to accurate, as it might or might not specify for multiple values. |
Enum |
Can be any of the below OrderNumber/OrderAmount
|
/InteracOnlineTransactionAuthReply/extension |
Optional |
|
String |
|