Transaction History
Overview
The Transaction History API provides a list of all transactions that match the search criteria set in the Request Message. Searches can be based on one the following elements:
- Order ID
- TenderType and Payment Account Unique ID
- Gateway Key
- Secondary Gateway Key
- Store Id and Order ID
- Store ID and Gateway Key
URI Summary
Action | URI Template | URI Example | Request Content Type | Response Content Type |
---|---|---|---|---|
POST | /vM.m/stores/{StoreId}/payments/transaction/history.xml | /v1.0/stores/TMSUS/payments/transaction/history.xml | application/xml or text/xml | application/xml or text/xml |
Request Elements
The elements and attributes for the Transaction History Request Message vary according to the type of search.
By Order ID
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
OrderId | Yes | The order ID of the transactions, as a search term to retrieve a list of transactions. | String |
Min - 1 Character Max - 20 Characters |
FromDateTime | No | The beginning of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
ToDateTime | No | The ending of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
By Tender Type and Payment Account Unique ID
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
TenderType | Yes | The tender type of the payment method used for the transactions, as a search term to retrieve a list of transactions. | String | PrivateLabelCreditCard, CreditCard, StoredValue |
PaymentAccountUniqueId | Yes | The Payment Account Unique ID of the tender that is to be looked up | String | 22 Characters |
PaymentAccountUniqueId @isToken |
Yes | Attribute that indicates whether the payment account number is tokenized | String | true or false |
FromDateTime | No | The beginning of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
ToDateTime | No | The ending of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
By Gateway Key
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
GatewayKey | Yes | The gateway key of the transactions, as a search term to retrieve a list of transactions. | String |
Min - 1 Character Max - 30 Characters |
FromDateTime | No | The beginning of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
ToDateTime | No | The ending of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
By Secondary Gateway Key
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
SecondaryGatewayKey | Yes | The secondary gateway key of the transactions, as a search term to retrieve a list of transactions. | String |
Min - 1 Character Max - 16 Characters |
FromDateTime | No | The beginning of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
ToDateTime | No | The ending of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
By Store ID And Order ID
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
StoreId | Yes | Store ID used for the transaction, as a search term to retrieve a list of transactions. | String |
Min length : 1 character Max length : 100 characters |
OrderId | Yes | The order ID of the transactions, as a search term to retrieve a list of transactions. | String |
Min - 1 Character Max - 20 Characters |
FromDateTime | No | The beginning of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
ToDateTime | No | The ending of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
By Store Id And Gateway Key
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
StoreId | Yes | Store ID used for the transaction, as a search term to retrieve a list of transactions. | String |
Min length : 1 character Max length : 100 characters |
GatewayKey | Yes | The gateway key of the transactions, as a search term to retrieve a list of transactions. | String |
Min - 1 Character Max - 30 Characters |
FromDateTime | No | The beginning of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
ToDateTime | No | The ending of the time frame in which to look up transaction history. | DateTime | yyyy-MM-ddTHH:mm:ss |
Request Examples
The following examples show request messages for different types of searches.
By Order ID
Copy this code sample.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionHistoryRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<OrderId>11111123</OrderId>
<FromDateTime>2015-06-01T00:00:00</FromDateTime>
<ToDateTime>2015-07-01T00:00:00</ToDateTime>
</TransactionHistoryRequest>
By Tender Type and Payment Account Unique ID
Copy this code sample.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionHistoryRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0" sessionId="1234">
<TenderType>VC</TenderType>
<PaymentAccountUniqueId isToken="false">4111111111111111</PaymentAccountUniqueId>
<FromDateTime>2015-06-01T00:00:00</FromDateTime>
<ToDateTime>2015-07-01T00:00:00</ToDateTime>
</TransactionHistoryRequest>
By Gateway Key
Copy this code sample.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionHistoryRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0" sessionId="1234">
<GatewayKey>12345</GatewayKey>
<FromDateTime>2015-06-01T00:00:00</FromDateTime>
<ToDateTime>2015-07-01T00:00:00</ToDateTime>
</TransactionHistoryRequest>
By Secondary Gateway Key
Copy this code sample.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionHistoryRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0" sessionId="1234">
<SecondaryGatewayKey>4443333</SecondaryGatewayKey>
<FromDateTime>2015-06-01T00:00:00</FromDateTime>
<ToDateTime>2015-07-01T00:00:00</ToDateTime>
</TransactionHistoryRequest>
By Store ID And Order ID
Copy this code sample.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionHistoryRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<StoreId>TMSUS</StoreId>
<OrderId>11111123</OrderId>
<FromDateTime>2015-06-01T00:00:00</FromDateTime>
<ToDateTime>2015-07-01T00:00:00</ToDateTime>
</TransactionHistoryRequest>
By Store ID And Gateway Key
Copy this code sample.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionHistoryRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0" sessionId="1234">
<StoreId>TMSUS</StoreId>
<GatewayKey>12345</GatewayKey>
<FromDateTime>2015-06-01T00:00:00</FromDateTime>
<ToDateTime>2015-07-01T00:00:00</ToDateTime>
</TransactionHistoryRequest>
Response Elements
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
Transactions | Yes | The transactions matching the criteria of the request | Complex Type | |
Transactions/ PaymentTransaction |
No | An individual transaction matching the request criteria | Complex Type | |
PaymentTransaction/ PaymentContext |
Yes | The payment context of the transaction | Complex Type | |
PaymentTransaction/ PaymentContext/ OrderId |
Yes | The order ID for the payment context of the transaction | String | 22 Characters |
PaymentTransaction/ PaymentContext/ PaymentAccountUniqueId |
Yes | Either a raw Account Id or a token representing Account Id | String | 22 Characters |
PaymentTransaction/ PaymentContext/ PaymentAccountUniqueId @isToken |
Yes | Attribute that indicates whether the payment account number is tokenized | String | true or false |
PaymentTransaction/ TenderType |
Yes | The Tender Type used in the transaction | String | PrivateLabelCreditCard, CreditCard, StoredValue |
PaymentTransaction/ TransactionType |
Yes | The type of transaction that was performed | String | |
PaymentTransaction/ TransactionStatus |
No | The failure or success status of the transaction | String | |
PaymentTransaction/ TransactionAmount |
No | The amount of the transaction | String | |
PaymentTransaction/ TransactionAmount/ @currencyCode |
Yes | Attribute that identifies the currency for the TransactionAmount | String | IS-4217 three-letter code |
PaymentTransaction/ ResponseCode |
No | The Response Code for the transaction | String | |
PaymentTransaction/ GatewayKey |
No | A key value returned by the gateway that processed the transaction | String | 30 Characters |
PaymentTransaction/ GatewayResponseCode |
No | A response code returned from the gateway for the transaction | String | |
PaymentTransaction/ RequestTimestamp |
No | The timestamp of when the transactions request was made | DateTime | yyyy-MM-ddTHH:mm:ss.SSSZ |
PaymentTransaction/ ReplyTimestamp |
No | The timestamp of when the transactions reply was made | DateTime | yyyy-MM-ddTHH:mm:ss.SSSZ |
PaymentTransaction/ SecondaryGatewayKey |
No | A key value returned by the gateway that processed the transaction | String | 16 Characters |
PaymentTransaction/ GatewayId |
No | The ID of the gateway that processed the transaction | String | |
PaymentTransaction/ CreditCardTransaction |
No | Information relevant to a Credit Card transaction | Complex Type | |
PaymentTransaction/ SettlementTransaction |
No | Information relevant to a settlement transaction | Complex Type | |
CreditCardTransaction/ AuthorizedAmount |
No | The amount authorized by the credit card | String | |
CreditCardTransaction/ AuthorizationCode |
No | An authorization code returned by the gateway that processed the transaction | String | |
CreditCardTransaction/ AuthorizationDate |
No | The date when the authorization was performed, in YYYY-MM-DD format | date | YYYY-MM-DD |
CreditCardTransaction/ VerbalAuth |
No | Was the authorization performed as a verbal authorization? | boolean | true/false |
CreditCardTransaction/ AvsResponse |
No | The response code returned by the address verification check | String | |
CreditCardTransaction/ Cvv2Response |
No | The response code returned by the CVV verification check | String | |
CreditCardTransaction/ CardExpirationDate |
No | The expiration date of the credit card used in the transaction, in YYYY-MM format | gYearMonth | YYYY-MM |
SettlementTransaction/ TaxAmount |
No | The amount of taxes for the settlement transaction | String | |
SettlementTransaction/ SettlementType |
No | The type of settlement for the transaction | String | |
SettlementTransaction/ SettlementStatus |
No | The settlement status of the transaction | String | |
SettlementTransaction/ SettlementSentDate |
No | The date when the settlement was sent, in YYYY-MM-DD format | date | YYYY-MM-DD |
SettlementTransaction/ SettlementConfirmDate |
No | The date when the settlement confirmation was sent, in YYYY-MM-DD format | date | YYYY-MM-DD |
SettlementTransaction/ TransactionDate |
No | The date the transaction being settled took place, in YYYY-MM-DD format | date | YYYY-MM-DD |
SettlementTransaction/ BusinessDate |
No | The date {fill in} | date | YYYY-MM-DD |
SettlementTransaction/ BatchId |
No | The batch ID of the batch the settlement was sent in | String | |
SettlementTransaction/ SettlementConfirmationAmount |
No | The amount actually confirmed and settled on | String | |
SettlementTransaction/ SettlementConfirmationAmount/ @currencyCode |
Yes if Settlement Confirmation Amount is present | Code identifies the currency for SettlementConfirmationAmount | String | IS-4217 three-letter code |
SettlementTransaction/ ProcessorSettleStatusCode |
No | The status code of the settlement returned by the process provider | String | |
SettlementTransaction/ ProcessorSettleReasonCode |
No | The reason code of the settlement returned by the process provider | String | |
MockPayment | No | This element indicates the transaction is Mock Payment or not. | boolean |
true or false |
Response Example
Copy this code sample.
<?xml version="1.0" encoding="UTF-8"?>
<TransactionHistoryReply xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<Transactions>
<PaymentTransaction>
<PaymentContext>
<OrderId>0002610423_s1_3</OrderId>
<PaymentAccountUniqueId isToken="true">4111110PASeK1111</PaymentAccountUniqueId>
</PaymentContext>
<TenderType>VC</TenderType>
<TransactionType>Credit Card Authorization</TransactionType>
<TransactionStatus>S</TransactionStatus>
<TransactionAmount currencyCode="USD">116.87</TransactionAmount>
<ResponseCode>APPROVED</ResponseCode>
<GatewayKey>20694</GatewayKey>
<GatewayResponseCode>100</GatewayResponseCode>
<RequestTimestamp>2015-06-03T20:40:17.936Z</RequestTimestamp>
<ReplyTimestamp>2015-06-03T20:40:18.019Z</ReplyTimestamp>
<SecondaryGatewayKey>-1</SecondaryGatewayKey>
<GatewayId>COMPASS</GatewayId>
<CreditCardTransaction>
<AuthorizationCode>000075</AuthorizationCode>
<AuthorizationDate>2015-06-03</AuthorizationDate>
<VerbalAuth>false</VerbalAuth>
<AvsResponse>M</AvsResponse>
<Cvv2Response>M</Cvv2Response>
<CardExpirationDate>2018-12</CardExpirationDate>
</CreditCardTransaction>
<MockPayment>true</MockPayment>
</PaymentTransaction>
<PaymentTransaction>
<PaymentContext>
<OrderId>00026109284_s1_2</OrderId>
<PaymentAccountUniqueId isToken="true">4111110PASeK1111</PaymentAccountUniqueId>
</PaymentContext>
<TenderType>VC</TenderType>
<TransactionType>Credit Card Authorization</TransactionType>
<TransactionStatus>S</TransactionStatus>
<TransactionAmount currencyCode="USD">116.87</TransactionAmount>
<ResponseCode>APPROVED</ResponseCode>
<GatewayResponseCode>100</GatewayResponseCode>
<RequestTimestamp>2015-06-10T00:01:58.579Z</RequestTimestamp>
<ReplyTimestamp>2015-06-10T00:01:58.655Z</ReplyTimestamp>
<SecondaryGatewayKey>-1</SecondaryGatewayKey>
<GatewayId>COMPASS</GatewayId>
<CreditCardTransaction>
<AuthorizationCode>000024</AuthorizationCode>
<AuthorizationDate>2015-06-10</AuthorizationDate>
<VerbalAuth>false</VerbalAuth>
<AvsResponse>M</AvsResponse>
<Cvv2Response>M</Cvv2Response>
<CardExpirationDate>2018-12</CardExpirationDate>
</CreditCardTransaction>
<MockPayment>true</MockPayment>
</PaymentTransaction>
</Transactions>
</TransactionHistoryReply>