The identity and technical contract details declared by the specification.
P2PEType0102IDTECH
object
2 properties
2 required
transactions_authorization_p2pe_tdesdukpt_msr
object
17 properties
6 required
AutoLateAdjustment
number
A dollar amount for late adjustment fees for an auto rental, including refueling charges, a surcharge, or charges for damage incurred during use.
HotelArrivalDateTime
string
Arrival date and time of a guest’s hotel stay ISO8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm). For hotel transactions that are a s…
CustomerPostalCode
string
Cardholder’s ZIP/postal code from their billing statement. This field is used in AVS. Do not include special characters. Note: This field only allows alphanume…
LighthouseDataRequest
string
Conditional: Send only when processing SkyTab transactions. Base64 encoded JSON formatted data that will be passed through to Lighthouse for SkyTab transaction…
AVSPostalCodeVerified
string
Identifies whether the ZIP/postal code was verified (‘Y’) or not (‘N’) in an AVS check with a processor.
DCCRateTimeStamp
string
The date and time of the DDC rate lookup in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm).
CardResponseVoid
object
4 properties
AutoRentalPostalCode
string
Postal Code where rental car was picked up in U.S. postal abbreviation format.
RiskAssessmentRequest
string
The risk assessment value received in the [Risk Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) response. Conditional: must be sent if [Risk…
CustomerAddressLine1
string
Cardholder’s street address exactly as it appears on their billing statement. This field is used in AVS.
transactions_capture_token_legacy
object
11 properties
5 required
EMVEmptyCandidateList
string
When EMV is attempted but fallback occurs due to an empty candidate list, this field should be sent as 'Y' and emv.fallback should also be sent as 'Y'. If this…
transactions_manualsale_p2pe_tdesdukpt_emv
object
14 properties
7 required
transactions_sale_unencryptedcard
object
16 properties
6 required
TransactionVendorReference
string
Optional field for information that can be searched in the merchant portal.
AirlineFlightLegsTripLegInfo
string
Description of leg or stage of trip.
ReportingDataCustomerInfoBoardingPriority
string
Customer's boarding priority
ThreeDSecureXIDWallet
string
Unique tracking number set by the merchant and sent to the Issuer Authentication/Service in the Authentication Request message. For Apple Pay transactions this…
transactions_manualsale_comengdevice
object
12 properties
4 required
transactions_sale_utgdevice
object
11 properties
5 required
CardToken
object
Conditional: Send this object when using a card on file.
1 property
ThreeDSecureAuthenticationValue
string
Used only if both CAVV/UCAF and TAVV present in the transactions token contains the Visa token authentication verification value (TAVV) to support 3-D Secure (…
TransactionSaleFlag
string
Specifies a transaction is a sale (‘S’) or credit (‘C’). In an [Invoice Information](/apis/payments-platform-rest/openapi/transactions/getinvoice) request, an…
transactions_sale_token_gtv
object
16 properties
5 required
AirlineNumberOfCities
number
The number of airports or cities for each leg on the ticket (including origination and destination cities).
transactions_sale_comengcloud
object
12 properties
5 required
ServerName
string
The name of the server that processed the request.
HotelEstimatedDays
integer
Used to communicate the estimated number of days of a guest’s stay. This value is included in an [Authorization](/apis/payments-platform-rest/openapi/transacti…
ReportingDataPspDataPspResponseText
string
PSP host response description/text.
transactions_refund_p2pe_idtech
object
12 properties
6 required
ErrorLongText
string
Extended error message that is returned if an error condition exists.
DevicePromptCardSecurityCode
string
When using a UTG-controlled PIN pad: Value|Description -----|----------- Y | Force the PIN pad to prompt the consumer for a CSC. N | Do not force the PIN pad t…
RiskResponseDeny
object
Returned if risk assessment was performed and not approved.
2 properties
transactions_authorization_3dsecuretoken_gtv
object
16 properties
7 required
ThreeDSecure
object
11 properties
7 required
EMVTlvDataOnguardSDE
string
This field will contain all EMV tags in standard TLV format except tags 5A and 57, which will be sent encrypted in the p2pe.data field.
LighthouseRequest
object
1 property
ReportingDataPspData
object
Payment service provider (PSP) metadata for third-party processed transactions.
8 properties
DevicePromptPostalCode
string
When using a UTG-controlled PIN pad: Value|Description -----|----------- Y | Force the PIN pad to prompt the consumer for a ZIP/Postal Code. N | Do not force t…
CardResponse
object
10 properties
HotelAdditionalChargesLaundry
string
AirlineTravelAgencyCode
string
Code identifying travel agency if the ticket was issued by a travel agency. Conditional: Send if a travel agency service was used.
CardSecurityCodeValue
string
The three- or four-digit Card Security Code found on a payment card. This value should only be sent in an initial sale/authorization request. It should not be…
HotelDepartureDateTime
string
Departure date and time of a guest’s hotel stay ISO8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm). For hotel transactions that are a…
HotelRoomRatesNights
integer
The number of nights being charged at this rate.
TransactionAuthType
string
Specifies whether or not the authorization amount can be modified post authorization. Specifying the transaction as a 'Final Authorization' can result in lower…
transactions_refund_p2pe_tdesdukpt_msr
object
14 properties
7 required
TransactionAuthorizationCode
string
The authorization code provided by the consumer’s issuing bank. It is provided in a response if an online authorization or sale request is approved. Following…
HotelSpecialCode
integer
This field is used to provide additional detail for lodging transactions. If a lodging charge does not match one of the listed descriptions, the default value…
AirlineNumberOfPassengers
number
The number of passengers in the transaction.
IIASType
string
This code classifies eligible healthcare expenses. Value|Description -----|----------- 4O | Cash Disbursement (Discover Only) – Amount of Cash Back Being Reque…
ReportingDataCustomerInfoDateOfBirth
string
Customer's date of birth in MMDDYYYY format
TipPresetType
string
The tip option selected by the cardholder. | Value | Description | |---------|---------------------------------------------------------------------------------…
transactions_manualauthorization_token_legacy
object
11 properties
5 required
AirlineFlightLegsLegDepartureDateTime
string
The date and time the flight is scheduled to depart for the leg. The date and time in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh…
TipDisplayNoTip
boolean
Send as true if you want to display No Tip instead of Cash Tip on the tip entry screen. Default: false
transactions_authorization_utgdevice
object
11 properties
5 required
ErrorPrimaryCode
integer
Code indicating the type of error that occurred. Refer to the [Error Codes](/guides/appendices/error-codes) section of this document for more details.
AirlineExchangeTicketNumber
string
The original ticket number that was replaced by a new ticket number.
ClerkNumericId
integer
A number used to identify the point-of-sale (POS) or property management system (PMS) clerk or user. The value cannot be 0. An interface must be able to dynami…
AmountTip
number
Conditional: Send in the request if a tip is included. The tip amount of the transaction.
CardExpirationDate
integer
Conditional: Send only when card data is manually entered or when using a token. This field should not be specified when using an encrypted device. Card expira…
ReportingDataPspDataPspTid
string
PSP terminal identifier (TID).
DeviceCapabilityQuickChip
string
Specifies whether or not the device supports quick chip. If this input method can be supported by the device, but the input method is currently disabled for al…
CardTokenRequiredLegacy
object
2 properties
1 required
TransactionNotes
string
A free-form notes field that supports the use of HTML tags. This can be used for reference in [Lighthouse Transaction Manager](https://ltm.shift4test.com/) and…
DCCMarginOverECB
string
Markup of offered exchange rate over ECB Reference Rate in percentage (%), if applicable. This field is applicable only for conversion between currencies of EU…
DCCDiffOverECB
string
Difference of GB Reference Rate over ECB Reference Rate in percentage (%), if applicable including decimal. This field is applicable only for conversion betwee…
PurchaseCard
object
3 properties
3 required
transactions_sale_comengdevice
object
13 properties
4 required
CardPresent
string
Conditional: Send in the initial authorization/sale request Indicates whether a card was present (‘Y’) or not (‘N’) at the time a transaction took place. This…
AmountObjectNoSurcharge
object
Object containing information regarding the amount being requested. The total field within the object is required and specifies the amount being requested. All…
7 properties
2 required
AirlineTicketChangeIndicator
string
Indicates why a ticket was changed. This field should contain spaces or one of the below codes. Value | Description -------|--------------- C | Change to exist…
AutoAdditionalCharges
object
The codes used to provide a reason for additional charges in an auto rental sale. Multiple codes can be specified for the same transaction.
5 properties
transactions_authorization_incremental
object
11 properties
5 required
AirlineFlightLegsCarrierCode
string
Code indicating name of carrier (United Airlines, Jet Blue, etc.) for the leg.
transactions_sale_token_legacy
object
16 properties
5 required
AirlinePassengerDepartureDate
string
Date that the ticket holder is scheduled to depart at the time of issuance of the original ticket. The date may be a future one. The date and time in ISO 8601…
AutoRentalRegion
string
Region (State) where rental car was picked up in U.S. postal abbreviation format.
DeviceOnlyTIDResponse
object
1 property
AutoAdditionalChargesGasoline
string
IIASAmount
number
The subtotal for this type of healthcare expenses.
AirlineFlightLegsFareBasis
string
This field contains primary and secondary discount codes that indicate the class of service and fare level associated with the ticket for the leg. Truncate at…
DeviceCapabilityContactlessMSR
string
Specifies whether or not the device supports contactless magstripe. If this input method can be supported by the device, but the input method is currently disa…
ReceiptColumns
integer
Send this field if you want Shift4 to format the receipt text instead of returning individual fields. The value sent will correlate to the column width of the…
P2PEData
string
The full output of a P2PE keypad/magnetic swipe reader (MSR).
AutoAdditionalChargesOneWayServiceFee
string
UILanguageRequest
string
ISO 639-1 2-letter language code specifying the UI display language for the transaction (e.g. "en", "fr", "de"). When provided, overrides the device's configur…
EMVFallback
string
When EMV is attempted but fallback occurs for any reason, this field should be sent as 'Y'. If this field is not sent, a value of 'N' is assumed.
UniversalToken
object
1 property
transactions_authorization_3dsecuretoken_legacy
object
16 properties
7 required
PurchaseCardProductDescriptors
array
A text description of the items purchased or services sold. This can be a generic text description of what the merchant sells (such as “Groceries”) or specific…
CardOnFileTransactionId
string
This field is returned in the initial COF response, and ties subsequent COF transactions to the original authorization. For example, if a merchant runs a Sale…
CardOnFileType
string
This field specifies the type of the card-on-file transaction. Below is a table showing the valid values for use cases where the cardholder is entering their c…
ReportingDataCustomerInfo
object
7 properties
AirlineFlightLegs
object
12 properties
11 required
AmountTaxIndicator
string
Value|Description -----|----------- Y | Tax is included N | Tax is not included
RiskTranId
string
This is the unique transaction ID for this response from the 3rd party risk provider. Store this value and use it to find additional details about this transac…
TipPresetDefault
string
The preset value that is selected by default. If not sent in the request it will default to to preset 2. | Value | Description | |-------|---------------------…
DCCCurrencyMinorUnits
number
Foreign Currency Minor Unit. Indicates the number of digits after the decimal separator as specified by either MasterCard, VISA, or the ISO 4217 standard.
DeviceCapability
object
Conditional: Required when using a non-UTG-controlled device.
8 properties
TaxFree
object
Returned when the merchant is configured for tax-free processing. Contains card and transaction details for use with Global Blue's tax-free shopping APIs.
8 properties
UISuppressFinalResult
boolean
When true, the terminal suppresses the final transaction result screen.
CardOnFile
object
Conditional: Send this object when the transaction being performed is using a card on file or when the request will result in storing a card on file. See the […
5 properties
transactions_manualauthorization_comengdevice
object
12 properties
4 required
Error
object
6 properties
AmountTipBasis
number
The amount Commerce Engine will use to calclulate the tip percentage amounts on the tip screen. This is an optional field that will be used instead of amount.t…
AirlineFlightLegsFlightNumber
string
Number of the airline flight to be taken on Leg of the trip.
HotelCheckOut
object
Conditional: Utilize this object for Hotel transactions
6 properties
ReportingDataCustomerInfoGender
string
Customer's gender
transactions_authorization_applepay
object
16 properties
7 required
CustomerLastName
string
Specifies a consumer’s last name. This field is used in AVS. If the interface sends this field, the value specified by the interface will be returned in the re…
TransactionS4RiskIdRequest
string
Unique transaction identification number generated by Shift4 to identify a specific risk transaction and a field that can be searched in LTM. Conditional: must…
ErrorSeverity
string
Severity level of the error. | Severity | Description | | -------- | ---------------------------------------------------------------- | | Info | Action not req…
HostResponseReasonCode
string
Returns a response code from the host. Value |Category|Description ------|--------|----------- 04 | 1 | Pick Up Card 07 | 1 | Pick Up Card, Special Condition 1…
CustomerMiddleName
string
Specifies a consumer’s middle name.
AutoDriver
object
3 properties
transactions_manualsale_p2pe_onguardsde_msr
object
13 properties
6 required
AutoReturnRegion
string
Region (State) where rental car was returned in U.S. postal abbreviation format.
transactions_manualsale_token_legacy
object
11 properties
5 required
AmountSurcharge
number
Conditional: Send in the request if a surcharge was applied to the transaction. In a sale or authorization transaction, the surcharge field specifies a fee amo…
AmountTotal
number
The amount being charged for a particular transaction. If other amount fields are sent, they must be included in the total amount. Amount cannot be zero.
Receipt
object
3 properties
transactions_authorization_comengdevice
object
13 properties
4 required
transactions_manualsale_p2pe_onguardsde_emv
object
14 properties
7 required
transactions_sale_p2pe_tdesdukpt_msr
object
18 properties
6 required
transactions_manualsale_p2pe_tdesdukpt_msr
object
13 properties
6 required
ThreeDSecureTAVVResult
string
TAVVResult (Visa token authentication verification value). Value| Description -----|------------ 1 | TAVV cryptogram failed validation 2 | TAVV cryptogram pass…
HotelRoomRates
object
2 properties
HotelAdditionalChargesOther
string
AirlineIssueDate
string
The date the ticket was issued to the customer. The date and time in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm).
RulesTransactionId
string
Transaction ID for the rule check
HostResponseReasonDescription
string
Returns a description from the host.
MerchantMID
number
The merchant ID associated with the merchant account.
CardSecurityCode
object
Conditional: Send only when card data is manually entered. This object should not be specified when using an encrypted device. This object should be sent for i…
4 properties
2 required
DCCForeignAmount
number
Foreign Currency Amount
HostResponseReattemptPermission
string
Returns one of the following values: Value |Description ----------------------------------------|----------- Reattempt not permitted | Returned when the reason…
PurchaseCardDestinationPostalCode
string
When items are shipped, the ZIP/postal code to which merchandise will be shipped; otherwise, the ZIP/postal code where the goods or services are rendered. This…
AmountIncremental
object
Object containing information regarding the amount being requested. The total field within the object is required and specifies the amount being requested. All…
5 properties
2 required
CardTypeResp
string
An abbreviation used to specify the type of card that was used when processing a transaction. Value| Description -----|------------ AX | American Express AP |…
AirlinePassengerNameRecord
string
A passenger name record (PNR) is a record in the database of a computer reservation system (CRS) that contains the itinerary for a passenger or a group of pass…
TransactionInvoice
string
10-digit invoice number assigned by the interface to identify a transaction. An invoice number serves as a unique key that identifies a transaction within a ba…
TipObject
object
The optional tip object allows integrators to control the display and behavior of the tip screen presented to customers during payment processing.
8 properties
1 required
CardSecurityCodeResult
string
Conditional: Returned if card.securityCode.indicator and card.securityCode.value are sent in the request. The result of a CSC check. This field will be used by…
ReportingDataPspDataPspTxnTraceNo
string
PSP transaction trace number.
AmountTax
number
The amount of sales tax charged for a transaction. The tax amount is used by businesses to track tax expenses for accounting purposes. Identifying the tax amou…
ReportingDataPspDataPspResponseCode
string
PSP host response code.
EMVResponse
object
Returned when processing a full EMV or EMV fallback transaction.
2 properties
transactions_authorization_unencryptedcard
object
15 properties
6 required
AutoAdditionalChargesMileage
string
AirlineFlightLegsOriginAirportCode
string
Indicates origination city's airport code for the leg.
ReportingDataCustomerInfoArray
array
Array of customer information objects. The maximum number of customer information objects that can be sent is 10.
transactions_sale_applepay
object
16 properties
7 required
AmountObjectCommerceEngineSale
object
Object containing information regarding the amount being requested. The total field within the object is required and specifies the amount being requested. All…
8 properties
2 required
transactions_sale_p2pe_idtech
object
16 properties
5 required
transactions_authorization_p2pe_onguardsde_emv
object
18 properties
7 required
transactions_manualauthorization_p2pe_onguardsde_emv
object
14 properties
7 required
EMVFallbackOnly
object
Conditional: Required when processing an EMV fallback transaction.
1 property
CardTokenRequired
object
1 property
1 required
HotelRoomRatesRate
number
The per night room rate.
P2PEFormatIDTech
string
Classifies the type of payment device being used for P2PE. Value|Description -----|----------- 01 | IDTech Enhanced Encryption format (Keyboard Mode) 02 | IDTe…
DeviceModel
string
Conditional: Required when using a non-UTG-controlled device. Specifies the model of the device.
EMV
object
Conditional: Required when processing an EMV transaction without using a UTG.
2 properties
1 required
AutoNoShowIndicator
string
Indicates whether or not the cardholder picked up a reserved rental car. Value|Description -----|----------- Y | customer did not pick up the rental car N | cu…
transactions_authorization_3dsecurei4Go
object
15 properties
6 required
TransactionDeferredAuth
string
Conditional: Must be sent if the transaction is deferred Specifies that a transaction is the result of a deferred authorization. For example, a transaction tha…
TransactionAmex
object
1 property
ThreeDSecureWallet
object
7 properties
Customer
object
7 properties
TransactionPinBlock
string
Encrypted PIN data received from a POS-controlled PIN pad (not controlled by the UTG).
transactions_manualsale_p2pe_idtech
object
12 properties
5 required
AirlineTypeIndicator
string
Indicates if this ticket is a round trip, multi-city, or one-way ticket. Value | Description -------|--------------- R | Round-Trip O | One Way M | Multi-City
ThreeDSecureSecurityLevelIndicator
string
This field contains the electronic commerce indicators representing the security level and cardholder authentication associated with the transaction. This fiel…
P2PEFormatOnguardSDE
string
Classifies the type of payment device being used for P2PE. Value|Description -----|----------- 03 | Ingenico Onguard SDE Format
P2PEDataOnguardSDEMSR
string
Track information encrypted with AES 256 DUKPT. Contains the following information, separated by colons: |Value | Description |----------------|------------ |k…
transactions_refund_comengdevice
object
12 properties
5 required
ReportingDataCustomerInfoBaggage
string
Description for the customer's baggage
ThreeDSecureDirectoryServerTranId
string
The Directory Server Transaction ID is generated by the EMV 3DS Mastercard Directory Server during the authentication transaction and passed back to the mercha…
ExtendedCardData
string
Base64 encoded string received from the i4Go call. This is used to pass extended card information for processing 3D Secure, Apple Pay and Google Pay requests v…
TransactionManualTranId
string
This is typically used in a Referral. If a ManualTranID is returned by the issuer with the Auth code, it should be sent to the processor in the ManualTranid fi…
AmountRefund
object
2 properties
2 required
AirlineCreditReasonIndicator
string
Indicates the reason for a credit to the cardholder. This field should contain spaces or one of the below codes. Value | Description -------|--------------- A…
DeviceCapabilityContactlessEMV
string
Specifies whether or not the device supports contactless EMV. If this input method can be supported by the device, but the input method is currently disabled f…
AutoRental
object
Information relating to where the rental card was picked up.
6 properties
transactions_sale_p2pe_onguardsde_msr
object
18 properties
6 required
DeviceCloud
boolean
Indicates the transaction will be processed via the Commerce Engine solution for cloud based POS/PMS systems. Value must be sent as true in order to route the…
transactions_authorization_googlepay
object
15 properties
6 required
transactions_refund_p2pe_onguardsde_emv
object
15 properties
8 required
P2PEType03OnguardSDEMSR
object
See [P2PE Format 03 Ingenico On-Guard SDE](/guides/core-concepts/p2pe-formatingenico-on-guard-sde---format-03) for more information.
2 properties
2 required
ReportingDataCustomerInfoLastName
string
Customer's last name
HotelCheckOutRefund
object
Conditional: Utilize this object for Hotel transactions
2 properties
AirlineNumberOfCarriers
number
This field contains the number of airline carriers.
transactions_sale_3dsecurecardnumber
object
16 properties
7 required
DevicePromptStreetNumber
string
When using a UTG-controlled PIN pad: Value|Description -----|----------- Y | Force the PIN pad to prompt the consumer for the street number of their billing ad…
AutoRentalCountryCode
string
Country where rental card was picked up.
HotelAdditionalChargesRestaurant
string
CardLevelResult
string
Classifies the type of card used in an authorization/sale request. This field is returned in a response if the data is provided by the processor. See [Card Lev…
MerchantName
string
The merchant’s business name as configured with Shift4.
transactions_sale_p2pe_onguardsde_emv
object
19 properties
7 required
AutoCheckIn
object
Conditional: Utilize this object for Auto Rental transactions
1 property
transactions_refund_utgdevice
object
11 properties
6 required
transactions_sale_p2pe_tdesdukpt_emv
object
19 properties
7 required
transactions_manualsale_utgdevice
object
11 properties
5 required
CardOnFileTypeCapture
string
This field specifies the type of the card-on-file transaction. | Value | Initiator | Recurring | 3D Secure | Description | |--------|------------|-----------|-…
HotelAdditionalChargesTelephone
string
transactions_manualauthorization_p2pe_tdesdukpt_msr
object
13 properties
6 required
DeviceCapabilityManualEntry
string
Specifies whether or not the device supports manual entry. If this input method can be supported by the device, but the input method is currently disabled for…
ThreeDSecureCryptogram
string
Ecommerce Cryptogram information
ApiOptions
array
API Options modify the request being made. See the [API Options](/guides/appendices/api-options.md) section for more information.
SignatureData
string
The base64-encoded data sent when a signature is captured as a Portable Network Graphics (PNG) file.
AmountCheckTotal
number
Optional field specifying the total amount of the entire bill/invoice that this transaction is part of. It can be larger than amount.total in scenarios where t…
AirlineAncillaryServicesServiceCode
string
This field describes the type of service that has been provided. Value | Description ------|--------------- BF | Bundled Service BG | Baggage Fee CF | Change F…
ThreeDSecureEcommIndicatorWallet
string
E-commerce Indicator as provided by the application generating the cryptogram. Value| Description -----|------------ 5 | Secure electronic commerce transaction…
CustomerEmailAddress
string
Customer email address.
CustomerLastNameResponse
string
Specifies a consumer’s last name. This field is returned whenever the customer name is supplied in the request or if the track/EMV data contains the cardholder…
mPOS
object
Conditional: Send in the request if transaction is coming from an mPOS
1 property
AutoDriverLicense
string
The cardholder's driver's license number.
DCCTransactionID
string
A unique identifier returned in the ratelookup response to link with the initial authorization, Sale transaction types.
ReceiptArray
array
Array of receipt key/value pairs that should be printed on the receipt.
SurchargeTransactionResponse
object
Object containing surcharge information. Conditional: Returned in the response if Surcharge was applied during the payment flow of a Commerce Engine controlled…
3 properties
CustomerFirstName
string
Specifies a consumer’s first name. This field is used in AVS. If the interface sends this field, the value specified by the interface will be returned in the r…
DateTime
string
The date and time in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm). Must be sent as the local date/time of the merchant. For ex…
AmexPropertyCode
string
The code that contains a Merchant-assigned store or location number (or name) that uniquely identifies where the transaction took place.
DeviceCapabilityMagstripe
string
Specifies whether or not the device supports magstripe. If this input method can be supported by the device, but the input method is currently disabled for all…
P2PEType05TDESDUKPTEMV
object
See [P2PE Format 05 TDES DUKPT](/guides/core-concepts/p2pe-formattdes-dukpt---format-05) for more information.
2 properties
2 required
AmountTaxNotRequired
object
Object containing information regarding the amount being requested. The total field within the object is required and specifies the amount being requested. All…
8 properties
1 required
DCCTransactionResponse
object
Object containing Dynamic Currency Conversion (DCC) information. Conditional: Returned in the response if DCC was offered during the payment flow of a UTG/Comm…
12 properties
8 required
BalanceAmount
number
The balance remaining on the card. Depending on which processor is being used, the balance may be returned for a gift card, debit card, EBT card, or other stor…
AmountTotalIncremental
number
The amount being charged for a particular transaction. If other amount fields are sent, they must be included in the total amount. Amount cannot be zero. When…
CardBrandToken
object
4 properties
1 required
ThreeDSecureCAVVResult
string
This is a response field that contains 3–D Secure Electronic Commerce Transaction Response Code that contains the Visa Cardholder Authentication Verification V…
Signature
object
2 properties
transactions_authorization_token_gtv
object
15 properties
5 required
transactions_manualsale_comengcloud
object
12 properties
5 required
AirlineCarrierName
string
The name of the airline carrier issuing the ticket.
ReportingDataCustomerInfoSeats
string
Customer's assigned seat
CardOnFileRecurringFrequency
string
Indicates the minimum number of days between authorizations. Conditional: 'This field is required if it's the first recurring transaction (cardOnFile.type = S0…
AutoReturnCity
string
City where rental car was returned.
transactions_authorization_token_legacy
object
15 properties
5 required
DeviceCommerceEngineCloud
object
3 properties
3 required
IIASAmountsArray
array
Conditional: Send in the request if processing for a health care merchant. For Vision related charges you must send only iiasAmounts.type = 4V and the correspo…
SurchargeRequest
object
Conditional: Must be sent in the request if a surcharge is applied to the transaction.
1 property
P2PEFormatType05
string
Classifies the type of payment device being used for P2PE. Value|Description -----|----------- 05 | [Shift4 TDES DUKPT format](/guides/core-concepts/p2pe-forma…
TipPreset2
number
The preset value for the preset number 2. If presetType = percent send the percentage value. If presetType = amount send the amount value.
CardOnFileTransactionLinkId
string
A unique identifier assigned to each transaction to link related events throughout the transaction lifecycle. This field is supported for Mastercard brand only…
TransactionRetrievalReference
string
Reference retrieval number assigned by the authorizing agency. This value is printed on some receipts.
UIMode
string
Set the UI to light mode by sending light or dark mode by sending dark
DeviceTerminalIdRequired
string
To prompt a specific UTG-controlled PIN pad in a request, the API Terminal ID configured in UTG TuneUp must be specified in this field.
MerchantResponse
object
2 properties
P2PEType03OnguardSDEEMV
object
See [P2PE Format 03 Ingenico On-Guard SDE](/guides/core-concepts/p2pe-formatingenico-on-guard-sde---format-03) for more information.
2 properties
2 required
AVSValid
string
Simplified AVS result based on the merchant’s list of accepted responses as configured with Shift4: (‘Y’) if accepted or (‘N’) if not accepted.
SignatureFormat
string
The data format the signature data will be in. "P" for PNG format.
transactions_manualsale_token_gtv
object
11 properties
5 required
transactions_capture_token_gtv
object
11 properties
5 required
transactions_authorization_p2pe_onguardsde_msr
object
17 properties
6 required
AmountCashback
number
Specifies the cashback amount in a transaction. When using a UTG-controlled PIN pad with the ALLOWCASHBACK API Option, this field will return the cashback amou…
ReportingDataPspDataPspTxnTime
string
PSP transaction time (hhmmss)
AutoAdditionalChargesViolationFee
string
DCCTransactionRequest
object
Object containing Dynamic Currency Conversion (DCC) information. Must contain all fields received in the [DCC Rate Lookup](/apis/payments-platform-rest/openapi…
12 properties
CardDebitType
string
Specifies the type of debit card that was used when processing a transaction. Only returned if card.type = DB
AirlineAncillaryServicesArray
array
Array of ancillary service code and fees. Conditional: Send if any ancillary services were charged.
AutoRentalCity
string
City where rental car was picked up.
transactions_manualauthorization_p2pe_onguardsde_msr
object
13 properties
6 required
AirlineDocumentType
string
This field contains the airline Document Type code, which indicates the purpose of this transaction. This information may appear on the descriptive bill on the…
HotelAdditionalChargesGiftShop
string
AutoReturn
object
Information relating to where the rental car was returned
5 properties
TransactionExemptionReason
string
Conditional: required when sending transaction.exemptionAction = 02 Value | Description -------|----------------------------- 01 | Low value transaction (below…
AccountType
string
The type of financial institution account. Conditional: Must be sent if processing Interac debit EMV contact transactions | Value | Description | |-------|----…
AirlineFlightLegsLegArrivalDateTime
string
The date and time the flight is scheduled to arrive for the leg. The date and time in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh…
transactions_refund_token_legacy
object
11 properties
5 required
ReportingDataPspDataPspMid
string
PSP merchant identifier (MID).
DeviceCapabilitySignature
string
Specifies whether or not the device supports signature capture. If this input method can be supported by the device, but the input method is currently disabled…
CardBalance
object
1 property
CardOnFileRecurringExpiry
string
Date after which no further authorizations shall be performed. This field is limited to 8 characters, and the accepted format is YYYYMMDD. Conditional: This fi…
TransactionOriginalInvoice
string
The invoice number from the original sale. Used to link the refund to the original sale. Note: For US and Canadian processing: Although the invoice number is s…
CardSecurityCodeResponse
object
Conditional: Returned if card.securityCode was sent in the request.
2 properties
AirlineTicketsPassengerName
string
Name of the passenger to whom the ticket was issued. This field contains the Passenger Name in format: SURNAME FIRSTNAME MIDDLEINITIAL TITLE Example: "Doe Jane…
ThreeDSecureProgramProtocolWallet
string
Program Protocol must be provided by the merchant if they are participating in Mastercard 3D Secure and have previously authenticated using the Mastercard Iden…
CardNumber
string
The payment card number entered in an initial authorization/sale request. This field will always be masked when returned in a response.
CardTokenResponse
object
1 property
CardExpirationDateResponse
integer
Conditional: Requires API Option "RETURNEXPDATE". Card expiration date in MMYY format. This value will only be populated if "RETURNEXPDATE" is included in the…
transactions_manualauthorization_p2pe_idtech
object
12 properties
5 required
RiskTranIdRequest
string
The risk tranId value received in the [Risk Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) response. Conditional: must be sent if [Risk Asse…
AirlineTicketsTicketFare
number
Ticket fare is the total amount for each ticket, including service fee or any other fee for each ticket.
HotelAdditionalCharges
object
Reason codes for additional charges in a lodging sale request at the time a consumer checks out.
6 properties
DeviceTerminalId
string
To prompt a specific UTG-controlled PIN pad in a request, the API Terminal ID configured in UTG TuneUp must be specified in this field.
HostResponse
object
Returns the response code detailing why the transaction was declined. Notes: - For Visa, the response codes are categorized, detailing how declined transaction…
3 properties
ErrorShortText
string
Abbreviated error message that is always returned if an error condition exists
LighthouseDataResponse
string
Base64 encoded JSON formatted data that will be returned from Lighthouse to be passed back to SkyTab. This data will contain variable information.
TipBasisNotification
boolean
Send as true if you want to display the tip basis notification text on the tip screen. Must also include amount.tipBasis in the request if sending as true. Def…
AirlineFlightLegsStopOverCode
string
Indicates whether a stopover is allowed on this ticket for leg. The entry must be a D, O, or X. Value | Description -------|--------------- O | Stopover allowe…
IIASAmounts
object
2 properties
ThreeDSecureWalletID
string
Provides information about transactions initiated through the Masterpass Online platform or through the Mastercard Digital Enablement Service (MDES) and identi…
DCCMarginPercentage
string
This value is the foreign exchange markup percentage including the decimal. For example 9.99% will be returned as 9.99
TipPreset1
number
The preset value for the preset number 1. If presetType = percent send the percentage value. If presetType = amount send the amount value.
ThreeDSecureAuthenticationSourceWallet
string
Authentication Source for the cryptogram value. Value| Description -----|------------ 1 | inApp
CardTokenValue
string
This field is used to specify a card token. Whenever CHD is sent in a request, a card token will be returned in this field. Your interface should be designed t…
transactions_refund_p2pe_tdesdukpt_emv
object
15 properties
8 required
AutoDriverName
string
In a sale/authorization request for an auto rental, the customer’s name exactly as it appears on their driver’s license.
ThreeDSecureAuthenticationSource
string
Authentication Source for the cryptogram value. Value| Description -----|------------ 2 | ACS
EMVTlvData
string
This field will contain all EMV tags in standard TLV format including the P2PE encrypted tags (5A and 57). The P2PE encrypted tags (5A and 57) will have the en…
transactions_sale_googlepay
object
15 properties
6 required
TransactionResponseCode
string
Code indicating the Shift4 host response. Value | Description | Details -------|-------------------------------------------------------------------------------…
AirlineTicketTranType
string
This field contains the ticket transaction type code assigned to this transaction. Value | Description -------|--------------- TKT | Ticket Purchase REF | Refu…
transactions_manualauthorization_comengcloud
object
12 properties
5 required
AutoAdditionalChargesLateReturn
string
DCCDisplayUnit
number
Display unit for currency. It is the exponent of the base currency in an exchange rate pair e.g. for a JPY merchant converting to EUR, where dcc.displayUnit =…
transactions_sale_3dsecuretoken_legacy
object
16 properties
7 required
CardPresentRefund
string
Indicates whether a card was present (‘Y’) or not (‘N’) at the time the refund transaction took place.
CardTokenSerialNumber
string
In requests that require the use of a shared card token that is held by another merchant account, such as in a TokenStore or TokenShare®, this field is used to…
AutoRentalAgreement
string
Contract number for an auto rental agreement.
EMVOnguardSDE
object
Conditional: Required when processing an EMV transaction without using a UTG.
2 properties
1 required
DCCConversionIndicator
string
Specifies whether or not the cardholder opted into dynamic currency conversion. Value | Description ------|----------------------------------------------------…
AutoDriverTaxNumber
string
This field contains the driver’s Tax Identification Number.
P2PEType05TDESDUKPTMSR
object
See [P2PE Format 05 TDES DUKPT](/guides/core-concepts/p2pe-formattdes-dukpt---format-05) for more information.
3 properties
3 required
TransactionPinKsn
string
Key serial number (KSN) received from a POS-controlled PIN pad (not controlled by the UTG). This field is a hexadecimal field that should be padded with leadin…
ClerkResponse
object
1 property
HotelRoomRatesArray
array
Room rates broken down by rate and number of nights.
ThreeDSecureSecurityLevelIndicatorWallet
string
This field contains the electronic commerce indicators representing the security level and cardholder authentication associated with the transaction. This fiel…
TipHeader
string
Optional field to override the header text. If not sent, the header text will display Add Tip in the terminal's configured language.
AutoReturnPostalCode
string
Postal Code where rental car was returned in U.S. postal abbreviation format.
ReportingData
object
Used to send non-payment related data for reporting purposes.
2 properties
HotelAdditionalChargesMiniBar
string
AirlineElectronicTicketIndicator
string
Indicates if an electronic ticket was issued. Value | Description -------|------------------- Y | Yes N | No
P2PEDataOnguardSDEEMV
string
EMV TLV Data for tags 5A and 57 encrypted with AES 256 DUKPT. Contains the following information, separated by colons: Value | Description ----------------|---…
transactions_manualauthorization_utgdevice
object
11 properties
5 required
transactions_authorization_p2pe_tdesdukpt_emv
object
18 properties
7 required
PurchaseCardCustomerReference
string
A unique value used to identify the consumer or transaction. If a merchant has a significant amount of revenue from purchasing card customers, the interface wo…
DeviceCapabilityPIN
string
Specifies whether or not the device supports PIN entry (for debit or EMV). If this input method can be supported by the device, but the input method is current…
EMVTlvDataResponse
string
This field will contain the EMV response tags in standard TLV format.
CardSecurityCodeIndicator
string
This field indicates the presence of a CSC. Value|Description -----|----------- 0 | CSC not provided by user. 1 | CSC provided. 2 | CSC illegible. 9 | CSC not…
AirlineFlightLegsDestAirportCode
string
Indicates destination city's airport code for the leg.
ThreeDSecureEcommIndicator
string
E-commerce Indicator as provided by the application generating the cryptogram. Value| Description -----|------------ 5 | Secure electronic commerce transaction…
transactions_sale_3dsecuretoken_gtv
object
16 properties
7 required
SurchargePercentage
number
The surcharge percentage that can be applied to a transaction.
CardBrandTokenAssuranceLevel
string
This is a response field defined by the token service provider. This Visa, Discover, or Mastercard value indicates the assigned confidence level of the token-t…
DeviceTerminalIdComEng
string
This field is optional and is for backwards compatibility with existing vendors that are used to processing via UTG controlled devices. Since Commerce Engine i…
TransactionExemptionAction
string
Indicates the merchant preference regarding SCA exemption. Value | Description -------|----------------------------- 02 | Request an exemption as part of the p…
LighthouseResponse
object
1 property
AirlineAncillaryServicesServiceFee
number
This field contains the amount associated with the value provided in ancillary Service Code.
AirlineFlightLegsArray
array
Array of flight trip leg info. Maximun 4 legs to a trip allowed. Note: At least one instance of flight trip leg info should be provided.
CardBrandTokenPANLast4
string
This is a response field that contains 4 characters that represent the last 4 digits of the actual cardholder PAN.
AirlineRestrictedTicketIndicator
string
Indicates whether this ticket is non-refundable. Value | Description -------|------------------- 0 | No restriction 1 | Restricted (non-refundable) ticket
AirlinePassengerArrivalDate
string
Date that the ticket holder is scheduled to arrive at their destination at the time of issuance of the original ticket. The date and time in ISO 8601 format in…
transactions_authorization_comengcloud
object
12 properties
5 required
transactions_sale_3dsecurei4Go
object
15 properties
6 required
PurchaseCardRefund
object
3 properties
CardBrandTokenAcctRangeStatus
string
This is a response field contains a one-character value that indicates the Visa regulatory status of the actual card number for which the token represents. Val…
AirlineFlightLegsServiceClass
string
Indicates service class for leg. Value | Description -------|--------------- FC | First Class BC | Business Class EC | Economy/Coach Class
transactions_refund_unencryptedcard
object
11 properties
5 required
HotelPrimaryChargeType
integer
Guest’s transaction type at a hotel. Value|Description -----|----------- 1 | Lodging 2 | Restaurant 3 | Gift Shop
AutoDistanceUnit
string
The unit of measure that corresponds to the distanceDriven field. Value|Description -----|----------- M | Miles K | Kilometers
DeviceCapabilityEMV
string
Specifies whether or not the device supports EMV. If this input method can be supported by the device, but the input method is currently disabled for all trans…
AirlineInternetIndicator
string
Indicates if this is an internet transaction. Value | Description -------|------------------- Y | Yes N | No
CardEntryMode
string
Conditional: The Card Entry Mode should be sent in an initial request; in subsequent requests, it should be left blank or not sent. When using a Universal Tran…
ErrorCode
integer
Code indicating the type of error that occurred. Refer to the [Error Codes](/guides/appendices/error-codes) section of this document for more details. Note: Th…
ReportingDataPspDataPspId
string
PSP identifier / label
AirlineConjunctionTicketIndicator
string
Indicates whether the itinerary contains more than four segments of travel. Value | Description -------|------------------- Y | Yes N | No
AutoReturnCountryCode
string
Country where rental card was returned.
transactions_authorization_3dsecurecardnumber
object
16 properties
7 required
ErrorSecondaryCode
integer
This code supplements the code specified in the error.primaryCode field to provide additional information about the error that occurred.
ReportingDataPspDataPspTxnDate
string
PSP transaction date (YYYYMMDD).
transactions_refund_p2pe_onguardsde_msr
object
14 properties
7 required
AirlineTravelAgencyName
string
Name of travel agency if the ticket was issued by a travel agency. Conditional: Send if a travel agency service was used.
transactions_manualauthorization_p2pe_tdesdukpt_emv
object
14 properties
7 required
AirlineFlightLegsCouponNumber
number
Number of coupons in the ticket for the leg.
TransactionPin
object
Conditional: Include in the request for PIN debit and EMV Online PIN transactions. This object does not apply to UTG-controlled devices.
2 properties
TransactionOriginalDate
string
The date and time of the original transaction request in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm). Must be an exact match…
AirlineTicketsTicketNumber
string
The ticket number provided by the Carrier for the passenger.
DCCCurrencyCode
string
Cardholder's transaction currency code. See the [Currency Codes](/guides/appendices/currency-codes) section for details.
AVSStreetVerified
string
Identifies whether the street number was verified (‘Y’) or not (‘N’) in an AVS check with a processor.
ThreeDSecureProgramProtocol
string
Indicates the 3D Secure protocol version. Required when processing for merchants in the United States. For merchants outside of the United States use the three…
TransactionSource
string
Conditional: Must be sent when processing transactions on an unattended device. Transaction source type. Value | Description -------|--------------------------…
AVSResult
string
Identifies the response code returned from an Address Verification System (AVS) check with a processor. Value|Description -----|----------- A | Street address…
AutoEstimatedDays
integer
Estimated contract length of car rental.
AirlineTicketsArray
array
Array of ticket number and passenger name. Note: At least one instance of ticket number and passenger name info should be provided.
ThreeDSecureVersion
string
Indicates the 3D Secure protocol version. Required when processing for merchants outside of the United States. For merchants in the United States use the three…
CardBrandTokenRequestorID
string
This field uniquely identifies the pairing of token requestor with the token domain. It is assigned by the token service provider and is unique within the toke…
mPOSType
string
mPOS (mobile POS) device type indicator Value| Description -----|------------ 00 | mPOS Accessory/dongle with contact and contactless interfaces, with or witho…
DeviceSerialNumber
string
Specifies the serial number of the device.
HotelCheckIn
object
Conditional: Utilize this object for Hotel transactions
1 property
DCCProvider
string
DCC Provider
TipPreset3
number
The preset value for the preset number 3. If presetType = percent send the percentage value. If presetType = amount send the amount value.
AutoDistanceDriven
integer
The amount of distance the cardholder drove the vehicle.
Clerk
object
1 property
1 required
transactions_manualsale_unencryptedcard
object
11 properties
6 required
StatementSuffix
string
Custom description that will be appended to the merchant name on the customer's statement. For most card brands, the merchant DBA name can be a maximum of 25 c…
DCCConversionRate
string
Foreign Currency Exchange Rate. The rate at which one currency can be exchanged for another currency.
AutoCheckOut
object
Conditional: Utilize this object for Auto Rental transactions
8 properties
transactions_manualauthorization_unencryptedcard
object
11 properties
6 required
TransactionInvoiceIncremental
string
10-digit invoice number assigned by the interface to identify a transaction. An invoice number serves as a unique key that identifies a transaction within a ba…
AirlineRequest
object
Conditional: Utilize this object for Airline transactions in Authorization/Sale requests when possible. If unable to provide this data at Authorization, this o…
23 properties
19 required
AirlineCarrierCode
string
The code of the airline carrier issuing the ticket.
ReportingDataCustomerInfoFirstName
string
Customer's first name
P2PEKSN
string
The key serial number which was used to encrypt the P2PE data.
transactions_refund_comengcloud
object
11 properties
6 required
transactions_manualauthorization_token_gtv
object
11 properties
5 required
DeviceManufacturer
string
Specifies the company which manufactured the device.
PaymentAccountReference
string
The Payment Account Reference (PAR) is a value assigned by the BIN Controller, which is defined as either an issuer or card brand. This field is associated dir…
CustomerFirstNameResponse
string
Specifies a consumer’s first name. This field is returned whenever the customer name is supplied in the request or if the track/EMV data contains the cardholde…
CustomerIpAddress
string
Public source IP Address where the request originates, not the IP Address of the web server.
AirlineFlightLegsFare
number
This field contains the total Fare for this trip segment. This is not the total amount billed to the customer.
TransactionBusinessDate
string
Desired business date of a transaction. Include when overriding the existing business date of a transaction. The overriding date may be earlier or later than t…
AirlineTickets
object
3 properties
3 required
AirlineRequestRefund
object
Conditional: Utilize this object for Airline transactions
24 properties
20 required
ThreeDSecureCryptogramWallet
string
Ecommerce Cryptogram information For Apple Pay transactions this is mapped from the token.paymentData.data.paymentData.onlinePaymentCryptogram field. For Googl…
CardMaskedNumber
string
The card number field will always be masked when returned in a response.
RiskAssessmentDeny
string
This is the answer to the risk assessment. Value| Description -----|------------ D | Deny. Try another payment method
CardType
string
An abbreviation used to specify the type of card that will be used when processing a transaction. If an interface sends a value that is not listed here, that v…
TransactionAuthSource
string
In a response, a code returned by the processor to indicate which host issued the response. Value | Description -------|---------------------------- E | Engine…
AirlineAncillaryServices
object
2 properties
2 required
SurchargeResult
string
Result of the surcharge eligibility check: | Value | Description | |-------|---------------------------------------------| | P | Pass - Card is eligible for su…
UniversalTokenValue
string
An identifier for a card or payment account across all Shift4 merchants.
Amount
object
Object containing information regarding the amount being requested. The total field within the object is required and specifies the amount being requested. All…
8 properties
2 required
transactions_refund_token_gtv
object
11 properties
5 required
RiskTransactionRequest
object
Conditional: must be sent if [Risk Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) was completed prior to processing the transaction.
2 properties
transactions_authorization_p2pe_idtech
object
15 properties
5 required
CurrencyCode
string
Transaction currency code. See the [Currency Codes](/guides/appendices/currency-codes) section for details. Note: This is currently supported when processing f…
CardSecurityCodeValid
string
Conditional: Returned if card.securityCode.indicator and card.securityCode.value are sent in the request. A simplified CSC check result based on the value in t…
The full machine-readable OpenAPI contract behind this narrative.
Other APIs Shift4 publishes across the network.