CyberSource TransactionDetails API
The TransactionDetails API from CyberSource — 1 operation(s) for transactiondetails.
The TransactionDetails API from CyberSource — 1 operation(s) for transactiondetails.
swagger: '2.0'
info:
description: All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
version: 0.0.1
title: CyberSource Merged Spec bankAccountValidation TransactionDetails API
host: apitest.cybersource.com
basePath: /
schemes:
- https
consumes:
- application/json;charset=utf-8
produces:
- application/hal+json;charset=utf-8
tags:
- name: TransactionDetails
paths:
/tss/v2/transactions/{id}:
get:
summary: Retrieve a Transaction
description: Include the Request ID in the GET request to retrieve the transaction details.
tags:
- TransactionDetails
produces:
- application/hal+json;charset=utf-8
operationId: getTransaction
x-devcenter-metaData:
categoryTag: Transaction_Details
developerGuides: https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_details_api.html
parameters:
- name: id
in: path
description: 'Request ID.
'
required: true
type: string
x-depends:
example:
path: /pts/v2/payments
verb: post
exampleId: example0
fieldMapping:
- sourceField: id
destinationField: id
fieldTypeInDestination: path
responses:
'200':
description: Successful response.
schema:
title: tssV2TransactionsGet200Response
type: object
properties:
id:
type: string
maxLength: 26
description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.
It is also appended to the endpoint of the resource.
On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.
'
rootId:
type: string
maxLength: 26
description: Contains the transaction identifier for the first transaction in the series of transactions. For example, you might send an authorization request for a payment, followed by a capture request for that payment, and then a refund request for that captured payment. Each of those requests, if successful, creates a resource that is assigned an identifier, which is returned in the response. The rootId identifies the first ID in the series, which in this case would be the ID of the original authorization.
reconciliationId:
type: string
maxLength: 60
description: 'Reference number for the transaction.
Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.
The actual value used in the request to the processor is provided back to you by Cybersource in the response.
'
merchantId:
type: string
description: Your CyberSource merchant ID.
submitTimeUTC:
type: string
description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`
**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).
The `T` separates the date and the time. The `Z` indicates UTC.
Returned by Cybersource for all services.
'
status:
type: string
description: The status of the submitted transaction.
applicationInformation:
type: object
properties:
status:
type: string
description: The status of the submitted transaction.
reasonCode:
type: string
description: 'Indicates the reason why a request succeeded or failed and possible action to take if a request fails.
For details, see the appendix of reason codes in the documentation for the relevant payment method.
'
rCode:
type: string
description: 'Indicates whether the service request was successful.
Possible values:
- `-1`: An error occurred.
- `0`: The request was declined.
- `1`: The request was successful.
'
rFlag:
type: string
description: 'One-word description of the result of the application.
'
applications:
type: array
items:
type: object
properties:
name:
type: string
description: 'The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.
'
status:
type: string
description: The description for this field is not available.
reasonCode:
type: string
description: 3-digit reason code that indicates why the customer profile payment succeeded or failed.
rCode:
type: string
description: 'Indicates whether the service request was successful.
Possible values:
- `-1`: An error occurred.
- `0`: The request was declined.
- `1`: The request was successful.
'
rFlag:
type: string
description: 'One-word description of the result of the application.
'
reconciliationId:
type: string
description: 'Reference number that you use to reconcile your CyberSource reports with your processor reports.
'
rMessage:
type: string
description: 'Message that explains the reply flag for the application.
'
returnCode:
type: integer
description: The description for this field is not available.
bankAccountValidation:
type: object
properties:
rawValidationCode:
type: integer
description: "Raw Validation Codes for routing number and account number\n\n Possible values:\n • -1: Unable to perform validation/Unknown error\n • -2: Service Unavailable\n • 12 to 16: Validation results\n"
resultCode:
type: integer
description: "Result codes for account number and routing number\n\n Possible values: 00, 04, 98, 99\n"
resultMessage:
type: string
buyerInformation:
type: object
properties:
merchantCustomerId:
type: string
maxLength: 100
description: 'Your identifier for the customer.
When a subscription or customer profile is being created, the maximum length for this field for most processors is 30. Otherwise, the maximum length is 100.
#### Comercio Latino
For recurring payments in Mexico, the value is the customer''s contract number.
Note Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.
#### Worldpay VAP
For a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order
given, for a customer account ID value and uses the first value it finds:
1. `customer_account_id` value in the follow-on credit request
2. Customer account ID value that was used for the capture that is being credited
3. Customer account ID value that was used for the original authorization
If a customer account ID value cannot be found in any of these locations, then no value is used.
'
hashedPassword:
type: string
maxLength: 100
description: 'The merchant''s password that CyberSource hashes and stores as a hashed password.
'
clientReferenceInformation:
type: object
properties:
code:
type: string
maxLength: 59
description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each
transaction so that you can perform meaningful searches for the transaction.
#### Used by
**Authorization**
Required field.
#### PIN Debit
Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being
reversed.
Required field for all PIN Debit requests (purchase, credit, and reversal).
#### FDC Nashville Global
Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports.
'
applicationVersion:
type: string
description: 'Version of the CyberSource application or integration used for a transaction.
'
applicationName:
type: string
description: 'The name of the Connection Method client (such as Virtual Terminal or SOAP Toolkit API) that the merchant uses to send a transaction request to CyberSource.
'
applicationUser:
type: string
description: 'The entity that is responsible for running the transaction and submitting the processing request to CyberSource. This could be a person, a system, or a connection method.
'
partner:
type: object
properties:
solutionId:
type: string
maxLength: 8
description: 'Identifier for the partner that is integrated to CyberSource.
Send this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.
**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.
'
thirdPartyCertificationNumber:
type: string
maxLength: 12
description: 'Value that identifies the application vendor and application version for a third party gateway.
CyberSource provides you with this value during testing and validation.
This field is supported only on CyberSource through VisaNet.
#### Used by
**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**
Optional field.
#### PIN debit
Required field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.
'
comments:
type: string
maxLength: 255
description: 'Brief description of the order or any comment you wish to add to the order.
'
consumerAuthenticationInformation:
type: object
properties:
eciRaw:
type: string
maxLength: 2
description: 'Raw electronic commerce indicator (ECI).
'
cavv:
type: string
maxLength: 40
description: Cardholder authentication verification value (CAVV).
xid:
type: string
maxLength: 40
description: 'Transaction identifier.
'
transactionId:
type: string
description: Payer auth Transaction identifier.
strongAuthentication:
type: object
properties:
lowValueExemptionIndicator:
type: string
maxLength: 1
description: 'This field will contain the low value exemption indicator with one of the following values:
Possible values:
- `0` ( low value exemption does not apply to the transaction)
- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment)
'
riskAnalysisExemptionIndicator:
type: string
maxLength: 1
description: 'This field will contain the transaction risk analysis exemption indicator with one of the following values:
Possible values:
- `0` (TRA exemption does not apply to the transaction)
- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS)
'
trustedMerchantExemptionIndicator:
type: string
maxLength: 1
description: 'Possible values:
- `0` (Trusted merchant exemption does not apply to the transaction)
- `1` (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder)
'
secureCorporatePaymentIndicator:
type: string
maxLength: 1
description: 'This field will contain the secure corporate payment exemption indicator with one of the following values:
Possible values:
- `0` (SCA exemption does not apply to the transaction)
- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment)
'
delegatedAuthenticationExemptionIndicator:
type: string
maxLength: 1
description: 'This field will contain the delegated authentication exemption indicator with one of the following values:
Possible values:
- `0` (delegated Authentication exemption does not apply to the transaction)
- `1` (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer))
'
deviceInformation:
type: object
properties:
ipAddress:
type: string
maxLength: 45
description: 'IP address of the customer.
#### Used by
**Authorization, Capture, and Credit**
Optional field.
'
hostName:
type: string
maxLength: 60
description: DNS resolved hostname from `ipAddress`.
cookiesAccepted:
type: string
description: 'Whether the customer''s browser accepts cookies. This field can contain one of the following values:
- `yes`: The customer''s browser accepts cookies.
- `no`: The customer''s browser does not accept cookies.
'
errorInformation:
type: object
properties:
reason:
type: string
description: '1-word description of why a request succeeded or failed.
'
message:
type: string
description: 'The user-facing description for why a request succeeded or failed.
'
details:
type: array
items:
type: object
properties:
field:
type: string
description: This is the flattened JSON object field name/path that is either missing or invalid.
reason:
type: string
description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n"
installmentInformation:
type: object
properties:
numberOfInstallments:
type: string
description: Number of Installments.
identifier:
type: string
maximum: 60
description: 'Standing Instruction/Installment identifier.
'
fraudMarkingInformation:
type: object
properties:
reason:
type: string
description: 'Reason for adding the transaction to the negative list. This field can contain one of the following values:
- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.
- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.
- suspected: You believe that you will probably receive a chargeback for the transaction.
- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.
'
healthCareInformation:
type: object
properties:
amountDetails:
type: array
description: array for Healthcare fields
items:
type: object
properties:
amountType:
type: string
maxLength: 35
description: 'Total amount that has been spent on healthcare in a transaction.
Valid Values for **Visa**:
- `healthcare` - Total Amount Healthcare
- `healthcare-transit` - Amount Transit
- `vision` - Amount Vision/Optical
- `prescription` - Amount Prescription/RX
- `clinic` - Amount Clinic/Other Qualified Medical
- `dental` - Amount Dental
`Note:` - Prescription, Clinic and dental amounts must be preceded with the total healthcare amount and cannot occur individually. Vision and Transit must be sent individually and cannot be combined with total healthcare amount or any other amounts. Total Healthcare amount can be sent individually.
Valid Values for **MasterCard**:
- `prescription` - Amount Prescription/RX
- `eligible-total` - Total Amount Healthcare
`Note:` - Prescription must be preceded with the total healthcare amount and cannot occur individually. Total Healthcare amount can be sent individually.
'
amount:
type: string
maxLength: 13
description: 'Total Amount that has been spent on the corresponding amountType. This is 13 byte field including sign.
If the amount is positive, then it is a debit for the customer.
If the amount is negative, then it is a credit for the customer.
'
merchantDefinedInformation:
type: array
description: 'The object containing the custom data that the merchant defines.
'
items:
type: object
properties:
key:
type: string
maxLength: 50
description: 'The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.
For example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.
#### CyberSource through VisaNet
For installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and
`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the
transaction.
'
value:
type: string
maxLength: 800
description: "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. \n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n"
merchantInformation:
type: object
properties:
merchantDescriptor:
type: object
properties:
name:
type: string
description: 'Your merchant name.
**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.
#### PIN debit
Your business name. This name is displayed on the cardholder''s statement. When you
include more than one consecutive space, extra spaces are removed.
When you do not include this value in your PIN debit request, the merchant name from your account is used.
**Important** This value must consist of English characters.
Optional field for PIN debit credit or PIN debit purchase requests.
#### Airline processing
Your merchant name. This name is displayed on the cardholder''s statement. When you include more than one consecutive space, extra spaces are removed.
**Note** Some airline fee programs may require the original ticket number (ticket identifier) or the ancillary service description in positions 13 through 23 of this field.
**Important** This value must consist of English characters.
Required for captures and credits.
'
orderInformation:
type: object
properties:
billTo:
type: object
properties:
firstName:
type: string
maxLength: 60
description: 'Customer''s first name. This name must be the same as the name on the card.
**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.
#### SEPA
Required for Create Mandate and Import Mandate
#### BACS
Required for Import Mandate
#### CyberSource Latin American Processing
**Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\
**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.
#### CyberSource through VisaNet
Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks.
#### For Payouts:
This field may be sent only for FDC Compass.
#### Chase Paymentech Solutions
Optional field.
#### Credit Mutuel-CIC
Optional field.
#### OmniPay Direct
Optional field.
#### SIX
Optional field.
#### TSYS Acquiring Solutions
Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.
#### Worldpay VAP
Optional field.
#### All other processors
Not used.
'
lastName:
type: string
maxLength: 60
description: 'Customer''s last name. This name must be the same as the name on the card.
**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.
#### SEPA
Required for Create Mandate and Import Mandate
#### BACS
Required for Import Mandate
#### Chase Paymentech Solutions
Optional field.
#### Credit Mutuel-CIC
Optional field.
#### CyberSource Latin American Processing
**Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\
**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.
#### CyberSource through VisaNet
Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks.
#### For Payouts:
This field may be sent only for FDC Compass.
#### OmniPay Direct
Optional field.
#### RBS WorldPay Atlanta
Optional field.
#### SIX
Optional field.
#### TSYS Acquiring Solutions
Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.
#### Worldpay VAP
Optional field.
# --- truncated at 32 KB (201 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cybersource/refs/heads/main/openapi/cybersource-transactiondetails-api-openapi.yml