openapi: 3.1.0
info:
version: 1.7.57
title: Shift4 Payment API
contact:
url: https://www.shift4.com/contact-us/
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
components:
securitySchemes:
AccessToken:
type: apiKey
name: AccessToken
in: header
description: >
A security credential used to authenticate API requests and all
[i4Go®](https://s4-myportal.s3.amazonaws.com/downloads/documentation/i4go/i4go%20technical%20reference%20guide.pdf)
authorizeClient/preauthorizeClient requests. An Access Token is the
alias for the merchant account and interface being used.
Example:
```
AccessToken: EA79FB05-3AA7-4500-AF9A-73F986FF2C1D
```
HMAC-SHA256:
type: http
scheme: hmac-sha256
description: >
Authentication using HMAC-256 signatures as the authorization scheme.
Sent in the `Authorization` header in the following format:
`Authorization`: **HMAC-SHA256**
`Credential`={value}&`Signature`={value}
| Argument | Description |
|---------------|--------------------------------------------------|
| HMAC-SHA256 | Authorization scheme. |
| Credential | The ID of the key used to compute the signature. |
| Signature | base64 encoded HMACSHA256 value. |
Example:
```
Authorization: HMAC-SHA256 Credential=AESKEY1&Signature=8SFtIc6zQlswxAZqDKXL+BpRmlDvIWyjOwU8wdl0zK4=
```
parameters:
InterfaceVersion:
required: true
name: InterfaceVersion
in: header
schema:
type: string
maxLength: 11
example: '2.1'
description: >
Refers to the version of the program or application that is sending
requests to Shift4. The following special characters are not
allowed: $ % : ^ - ~ < > , ? “ ” ‘ ’ { } [ ] \ + =
InterfaceName:
required: true
name: InterfaceName
in: header
schema:
type: string
maxLength: 25
example: ForwardPOS
description: >
Refers to the name of the program or application that is sending
requests to Shift4. This should be the name of the program that you
purchased or created. The following special characters are not
allowed: $ % : ^ - ~ ` < > , ? “ ” ‘ ’ { } [ ] \ + =
CompanyName:
required: true
name: CompanyName
in: header
schema:
type: string
maxLength: 26
example: PAWS
description: >
Refers to the vendor or partner that designed and certified the
interface. The information you use in this field should match what
Shift4 has on file or what was agreed upon in your Integration Plan. The
following special characters are not allowed: $ % : ^ - ~ `
< > , ? “ ” ‘ ’ { } [ ] \ + =
AccessToken:
required: true
name: AccessToken
in: header
schema:
type: string
format: uuid
maxLength: 52
example: EA79FB05-3AA7-4500-AF9A-73F986FF2C1D
description: >
A security credential used to authenticate API requests and all
[i4Go®](https://s4-myportal.s3.amazonaws.com/downloads/documentation/i4go/i4go%20technical%20reference%20guide.pdf)
authorizeClient/preauthorizeClient requests. An Access Token is the
alias for the merchant account and interface being used. The Access
Token is required in all requests except an [Access Token
Exchange](/apis/payments-platform-rest/openapi/credentials/accesstokenexchange)
request, which generates an Access Token using an `authToken` and
`clientGuid`.
Invoice:
required: true
name: Invoice
in: header
schema:
$ref: '#/components/schemas/TransactionInvoice'
ApiOptions:
required: false
name: ApiOptions
in: header
schema:
type: string
maxLength: 255
example: ALLOWPARTIALAUTH,RETURNEXPDATE
description: >
API Options modify the request being made. Multiple API Options can be
sent in a comma separated list with no spaces. See the [API
Options](/guides/appendices/api-options.md) section for more
information.
ReceiptColumns:
required: false
name: ReceiptColumns
in: header
schema:
type: integer
example: 40
maxLength: 48
description: >
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 formatted receipt that we return. (This also allows the
receipt text to wrap to fit the paper size of the printed receipt.) See
the [Printing Receipts](/guides/core-concepts/printing-receipts) section
of this document for more information on formatted receipts.
TokenValue:
name: Token
in: header
schema:
type: string
maxLength: 16
example: '8048471746471119'
description: This field is used to specify the token for the payment method.
ReversalReason:
name: ReversalReason
in: header
schema:
type: string
minLength: 2
maxLength: 2
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
- '06'
- '07'
- '08'
- '09'
example: '01'
description: |
Specifies the reason for the reversal.
Value|Description
-----|-----------
01 | Timeout
02 | POS lost connection
03 | Merchant cancellation
04 | Customer cancellation
05 | EMV card removed prematurely
06 | EMV card declined issuer approval
07 | PIN PAD unavailable
08 | Chip error
09 | Suspected Fraud
CardNumber:
name: CardNumber
in: header
schema:
type: string
maxLength: 32
example: '4321000000001119'
description: >
The payment card number. This field will always be masked when returned
in a response.
P2PEData:
name: P2PEData
in: header
schema:
type: string
maxLength: 2048
description: The full output of a P2PE keypad/magnetic swipe reader (MSR).
P2PEFormat:
name: P2PEFormat
in: header
schema:
type: string
minLength: 2
maxLength: 2
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
example: '01'
description: |
Classifies the type of payment device being used for P2PE.
Value|Description
-----|-----------
01 | IDTech Enhanced Encryption format, USB KB mode
02 | IDTech Enhanced Encryption format, USB HID mode
03 | Ingenico format
04 | VeriFone format
05 | Shift4 TDES DUKPT format
P2PEKsn:
name: P2PEKsn
in: header
schema:
type: string
maxLength: 20
example: '6299495001100E200041'
description: |
**Conditional: Required when `p2pe.format` == "05"**
The key serial number which was used to encrypt the P2PE data.
TokenSerialNumber:
name: SerialNumber
in: header
schema:
type: string
maxLength: 10
example: '266'
description: >
In requests that require the use of a shared card token that is held by
another merchant account, such as in TokenStore or TokenShare®, this
field is used to specify the serial number for the account where the
card token is stored.
TrackData:
name: TrackData
in: header
schema:
type: string
maxLength: 128
example: ;4321000000001119=2212201999999?
description: >
**Conditional: Send in the initial authorization/sale request when
processing a swiped MSR transaction. This field is not specified when
using True P2PE® (point-to-point encryption) or a UTG-controlled PIN
pad.**
Card swipe data exactly as read by an MSR.
ApiOptionsGetMerchant:
required: false
name: ApiOptions
in: header
schema:
type: string
maxLength: 255
example: RETURNPROCESSORS
description: >
API Options modify the request being made. Multiple API Options can be
sent in a comma separated list with no spaces. See the [API
Options](/guides/appendices/api-options.md) section for more
information.
Value | Description
-----------------|------------
RETURNPROCESSORS | Returns the processor information and card ranges the
merchant is configured for.
TerminalID:
required: true
name: TerminalId
in: header
schema:
type: string
maxLength: 32
example: '1742'
description: >
The API Terminal ID configured in UTG TuneUp must be specified in this
field.
TerminalIDDevicesInfo:
name: TerminalId
in: header
schema:
type: string
maxLength: 32
example: '1742'
description: >
**Conditional: Required for UTG, optional for Commerce Engine.**
The API Terminal ID assigned to the device.
For UTG it is configured in TuneUp and must be included in the request
For Commerce Engine it is defined in the Terminal Management System
(TMS) and is optional. If sent, it must match the value defined in the
TMS.
BusinessDateTotals:
required: true
name: BusinessDate
in: header
schema:
type: string
format: ISO 8601
minLength: 10
example: '2021-04-15T09:18:23.283-07:00'
description: The business date you want to obtain the totals report for.
Inclusive:
required: false
name: Inclusive
in: header
schema:
type: string
enum:
- 'Y'
- 'N'
description: >
Indicates whether or not you want the batch to include transactions for
every day leading up to the `BusinessDate`. If this parameter is not
sent, the assumed value will be 'Y'.
PaymentLinksLimit:
name: Limit
in: header
schema:
type: number
maximum: 100
description: |
Maximum number of returned objects
PaymentLinksStartingAfterId:
name: StartingAfterId
in: header
schema:
type: string
description: >
Cursor used for pagination (getting the next page). For example, if you
make a list request and receive 10 objects, where the last object has
`id=some-example-id` - then you can make another request with
`startingAfterId=some-example-id` to get the next page of that list.
PaymentLinksEndingBeforeId:
name: EndingBeforeId
in: header
schema:
type: string
description: >
Cursor used for pagination (getting the previous page). For example, if
you make a list request and receive 10 objects, where the first object
has `id=some-example-id` - then you can make another request with
`endingBeforeId=some-example-id` to get the previous page of that list
PaymentLinksDateTimeAfter:
name: DatetimeAfter
in: header
schema:
type: string
format: ISO 8601
example: '2024-05-21T09:18:23.283-07:00'
description: |
Returns only records strictly after the specified timestamp
PaymentLinksDateTimeBefore:
name: DatetimeBefore
in: header
schema:
type: string
format: ISO 8601
example: '2024-05-21T09:18:23.283-07:00'
description: |
Returns only records strictly before the specified timestamp
PaymentLinksId:
name: PaymentLinkId
in: header
required: true
schema:
type: string
description: |
Used for selecting payment link by id
PaymentLinksIdOptional:
name: PaymentLinkId
in: header
schema:
type: string
description: |
Used for selecting payment link by id
CheckoutSessionsStatus:
name: Status
in: header
schema:
type: string
enum:
- active
- paid
- expired
- failed
description: >
Filter checkout sessions by their current status. When omitted, all
sessions are returned.
| Value |
Description
|
|-----------|------------------------------------------------------------------------------------------------|
| `active` | Session is open — payment not yet completed, not expired,
and within the allowed failure count |
| `paid` | Payment was completed
successfully
|
| `expired` | Session expired or was deleted without a successful
payment |
| `failed` | Payment was attempted but reached the maximum number of
failed attempts |
An invalid value returns HTTP 400 with error code
`invalid_header_format`.
CheckoutSessionsId:
name: CheckoutSessionId
in: header
required: true
schema:
type: string
description: |
Used for selecting checkout session by id
AuthorizationHMACSHA256:
name: Authorization
required: true
in: header
schema:
type: string
example: >-
Authorization: HMAC-SHA256
Credential=AESKEY1&Signature=8SFtIc6zQlswxAZqDKXL+BpRmlDvIWyjOwU8wdl0zK4=
description: |
HMAC-SHA256 signature
Shift4AppId:
name: Shift4AppId
in: header
schema:
type: string
example: Commerce Engine
description: |
Shift4 application identifier
Shift4AppVersion:
name: Shift4AppVersion
in: header
schema:
type: string
example: 2.4.0
description: |
Shift4 application version number
MagicCubeDeviceId:
required: true
name: deviceId
in: path
schema:
type: string
example: GOiQMwBhSQ8THouJ
description: |
MagicCube Device Id
IdempotencyId:
required: true
name: IdempotencyId
in: header
schema:
type: string
format: uuid
description: >
Unique identifier for the request. Each request must contain a unique
`requestId` value.
Any reattempts due to timeout or error scenarios should include the
same `requestId` as the original request to ensure idempotence.
MID:
required: true
name: mid
in: query
schema:
type: string
maxLength: 10
example: 123456
description: |
The Shift4 MID number
SourceIP:
name: sourceIp
in: query
schema:
type: string
example: 63.57.84.101
description: >
Public source IP Address where the request originates, not the IP
Address of the web server.
EmailAddress:
name: emailAddress
in: query
schema:
type: string
example: janedoe@email.com
description: |
Email address
EmailDomain:
name: emailDomain
in: query
schema:
type: string
example: gmail.com
description: |
Email domain
FullName:
name: fullName
in: query
schema:
type: string
example: John Smith
description: |
Full Name
Token:
name: token
in: query
schema:
type: string
example: '8058471748284111'
description: |
Token
schemas:
DateTime:
type: string
format: ISO 8601
example: '2024-05-21T09:18:23.283-07:00'
description: >
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 example, a
request processed at a merchant in the Pacific time zone at 9:18am on
April 15th 2021 would be sent as 2021-04-15T09:18:23.283-07:00
CredentialAccessToken:
type: string
format: uuid
maxLength: 52
example: EA79FB05-3AA7-4500-AF9A-73F986FF2C1D
readOnly: true
description: >
A security credential used to authenticate API requests and all
[i4Go®](https://s4-myportal.s3.amazonaws.com/downloads/documentation/i4go/i4go%20technical%20reference%20guide.pdf)
authorizeClient/preauthorizeClient requests. An Access Token is the
alias for the merchant account and interface being used. The Access
Token is required in all requests except an [Access Token
Exchange](/apis/payments-platform-rest/openapi/credentials/accesstokenexchange)
request, which generates an Access Token using an `authToken` and
`clientGuid`.
CredentialAuthToken:
type: string
format: uuid
maxLength: 51
example: 3504489F-A774-88E0-80114FBBC925E207
writeOnly: true
description: >
A unique encrypted identifier that refers to a specific merchant
account. It is required when making an [Access Token
Exchange](/apis/payments-platform-rest/openapi/credentials/accesstokenexchange)
request. For detailed information about the AuthToken, please see
[Authentication](/guides/quickstart#access-token-exchange)
CredentialClientGuid:
type: string
format: uuid
maxLength: 51
example: A3B18F21-AD17-8416-0626C4C9F1CA86A7
writeOnly: true
description: >
The Client GUID is a unique identifier that is used to identify an
interface across all of the merchant accounts that use it. The same
Client GUID can be used for all versions of the same interface. If a
completely new interface is certified, then you will receive a new
Client GUID, which must be hard coded into the application and must not
be a configurable field. The Client GUID is required when making an
[Access Token
Exchange](/apis/payments-platform-rest/openapi/credentials/accesstokenexchange).
For detailed information about the Client GUID, please see
[Authentication](/guides/quickstart#access-token-exchange).
**Requirement: The Client GUID supplied by your API Analyst must be hard
coded into your application because it will permanently identify your
interface across all merchant accounts.**
CredentialApiSerialNumber:
type: string
maxLength: 10
example: '266'
readOnly: true
description: >
The serial number for the merchant account. This field is only used for
backwards compatibility with older interfaces and has been replaced by
the Access Token.
CredentialApiPassword:
type: string
maxLength: 32
example: 9YCR23G7%BY#9+
readOnly: true
description: >
A credential used to authenticate the API Serial Number when processing
a request. This field is only used for backwards compatibility with
older interfaces and has been replaced by the Access Token.
Credential:
type: object
required:
- authToken
- clientGuid
properties:
accessToken:
$ref: '#/components/schemas/CredentialAccessToken'
authToken:
$ref: '#/components/schemas/CredentialAuthToken'
clientGuid:
$ref: '#/components/schemas/CredentialClientGuid'
apiSerialNumber:
$ref: '#/components/schemas/CredentialApiSerialNumber'
apiPassword:
$ref: '#/components/schemas/CredentialApiPassword'
ServerName:
type: string
maxLength: 50
example: TM01CE
description: |
The name of the server that processed the request.
Server:
type: object
readOnly: true
properties:
name:
$ref: '#/components/schemas/ServerName'
ErrorCode:
type: integer
maxLength: 5
readOnly: true
example: 64100
description: >
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: This is currently only supported for European merchant
processing.**
ErrorSeverity:
type: string
enum:
- Info
- Error
- Alert
readOnly: true
example: Info
description: >
Severity level of the error.
| Severity |
Description |
| -------- |
---------------------------------------------------------------- |
| Info | Action not required - Data input/formatting is
incorrect |
| Error | Action may be required - Communication, timeout or network
issue |
| Alert | Action required - System
issue |
ErrorShortText:
type: string
maxLength: 16
readOnly: true
example: NOT IN CARDRANGE
description: >
Abbreviated error message that is always returned if an error condition
exists
ErrorLongText:
type: string
maxLength: 255
readOnly: true
example: Card type not recognized
description: |
Extended error message that is returned if an error condition exists.
ErrorPrimaryCode:
type: integer
maxLength: 4
readOnly: true
example: 9842
description: >
Code indicating the type of error that occurred. Refer to the [Error
Codes](/guides/appendices/error-codes) section of this document for more
details.
ErrorSecondaryCode:
type: integer
maxLength: 4
readOnly: true
example: 0
description: >
This code supplements the code specified in the `error.primaryCode`
field to provide additional information about the error that occurred.
Error:
type: object
properties:
code:
$ref: '#/components/schemas/ErrorCode'
severity:
$ref: '#/components/schemas/ErrorSeverity'
shortText:
$ref: '#/components/schemas/ErrorShortText'
longText:
$ref: '#/components/schemas/ErrorLongText'
primaryCode:
$ref: '#/components/schemas/ErrorPrimaryCode'
secondaryCode:
$ref: '#/components/schemas/ErrorSecondaryCode'
LighthouseDataResponse:
type: string
example: >-
eyJwYXltZW50SWQiOiI4NWM0MWNhNy01NzVjLTQzNGUtODIyZi0xYzZlOTE0ZDAzODYiLCJyZW1haW5pbmdBbW91bnQiOjB9
description: >
Base64 encoded JSON formatted data that will be returned from Lighthouse
to be passed back to SkyTab. This data will contain variable
information.
AmountTotal:
type: number
maxLength: 14
example: 160
description: >
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.
AmountTax:
type: number
maxLength: 14
example: 15
description: >
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 amount also helps consumers understand the total
amount that they were billed. This field is part of Level 2 card data.
AmountTaxIndicator:
type: string
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Value|Description
-----|-----------
Y | Tax is included
N | Tax is not included
AmountCashback:
type: number
maxLength: 14
example: 20
description: >
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 amount requested by the consumer. The interface
can also send the desired cashback amount in a request by adding it to
the `amount.total` and including it in the `amount.cashback` field. This
will bypass prompting the consumer for a cashback amount.
IIASAmount:
type: number
maxLength: 14
example: 34
description: |
The subtotal for this type of healthcare expenses.
IIASType:
type: string
minLength: 2
maxLength: 2
example: 4T
enum:
- 4O
- 4S
- 4T
- 4U
- 4V
- 4W
- 4X
description: >
This code classifies eligible healthcare expenses.
Value|Description
-----|-----------
4O | Cash Disbursement (Discover Only) – Amount of Cash Back Being
Requested
4S | Healthcare (Visa/MC Only) – Qualified Medical Expenses or
Over-the-Counter
4T | Transit (Visa Only) – Transit Fare Media (e.g., Commuter and
Parking Passes, Mass Transit Vouchers, and Tickets)
4U | RX (Visa/MC Only)
4V | Vision (Visa Only)
4W | Clinical (Visa Only)
4X | Dental (Visa Only)
IIASAmounts:
type: object
properties:
amount:
$ref: '#/components/schemas/IIASAmount'
type:
$ref: '#/components/schemas/IIASType'
IIASAmountsArray:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/IIASAmounts'
example:
- type: 4S
amount: 75
- type: 4W
amount: 25
description: >
**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 corresponding `iiasAmounts.amount` value.
For all other charges, the first entry in the array should have an
amount representing the total of all healthcare costs, and
`iiasAmounts.type = 4S`. Any subsequent entries should contain the
subtotal for each of the other expense types involved in this
transaction.
AmountTip:
type: number
maxLength: 14
example: 20
description: |
**Conditional: Send in the request if a tip is included.**
The tip amount of the transaction.
AmountCheckTotal:
type: number
maxLength: 14
writeOnly: true
example: 200
description: >
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 the check is being split or if a portion of the check
was already paid in cash or another form of payment.
AmountObjectNoSurcharge:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested. All other fields are for informational purposes and
must also be included in the `total` field. For example, a purchase of
$100 with a $20 tip and $8 tax would be `128.00` in the `total` field,
`20.00` in the `tip` field and `8.00` in the `tax` field.
Note: For merchants that are configured to allow multiple currencies,
the amount fields can specify up to three decimal places. However, the
number of decimal places can not exceed the number allowed for the
specified currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
required:
- total
- tax
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
taxIndicator:
$ref: '#/components/schemas/AmountTaxIndicator'
cashback:
$ref: '#/components/schemas/AmountCashback'
iiasAmounts:
$ref: '#/components/schemas/IIASAmountsArray'
tip:
$ref: '#/components/schemas/AmountTip'
checkTotal:
$ref: '#/components/schemas/AmountCheckTotal'
ClerkNumericId:
type: integer
maxLength: 5
example: 1576
description: >
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 dynamically populate this field (not use a hardcoded value),
unless the interface will be used exclusively for e-commerce.
Clerk:
type: object
required:
- numericId
properties:
numericId:
$ref: '#/components/schemas/ClerkNumericId'
TransactionInvoice:
type: string
maxLength: 10
example: '0510093358'
description: >
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 batch in Shift4's Gateway.
**Note: For US and Canadian processing: Although the invoice number is
sent as a JSON string it is a numeric value. No alpha characters are
allowed.**
**For processing outside of the US and Canada alpha characters are
allowed.**
TransactionNotes:
type: string
maxLength: 4096
example: Transaction notes are added here
description: >
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 is not sent to the
authorization host. Escaped quotation marks should not be sent in the
Notes field.
TransactionBusinessDate:
type: string
format: ISO 8601
minLength: 10
example: '2021-04-15'
description: >
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 the existing date. (yyyy-mm-dd)
AmexPropertyCode:
type: string
maxLength: 15
example: '21546782948'
description: >
The code that contains a Merchant-assigned store or location number (or
name) that uniquely identifies where the transaction took place.
TransactionAmex:
type: object
properties:
propertyCode:
$ref: '#/components/schemas/AmexPropertyCode'
AutoEstimatedDays:
type: integer
maxLength: 2
example: 5
description: |
Estimated contract length of car rental.
AutoCheckIn:
type: object
description: |
**Conditional: Utilize this object for Auto Rental transactions**
properties:
estimatedDays:
$ref: '#/components/schemas/AutoEstimatedDays'
AirlineCarrierCode:
type: string
maxLength: 4
example: '5472'
description: |
The code of the airline carrier issuing the ticket.
AirlineCarrierName:
type: string
maxLength: 19
example: American Airlines
description: |
The name of the airline carrier issuing the ticket.
AirlineConjunctionTicketIndicator:
type: string
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'N'
description: >
Indicates whether the itinerary contains more than four segments of
travel.
Value | Description
-------|-------------------
Y | Yes
N | No
AirlineDocumentType:
type: string
maxLength: 2
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
- '06'
- '07'
- '08'
- '09'
- '10'
- '11'
- '12'
- '13'
- '14'
- '15'
- '16'
- '17'
- '18'
- '19'
- '20'
- '21'
- '22'
- '23'
- '24'
- '25'
- '26'
- '27'
- '28'
- '29'
- '30'
- '31'
- '32'
- '33'
- '34'
- '35'
- '36'
- '37'
- '38'
- '39'
- '41'
- '42'
- '43'
- '44'
- '45'
- '46'
- '47'
- '48'
- '49'
- '50'
- '51'
- '52'
- '60'
- '64'
- '65'
- '66'
- '67'
- '68'
- '69'
- '70'
- '71'
- '72'
- '73'
- '74'
- '75'
- '76'
- '77'
- '78'
- '79'
- '80'
- '81'
- '82'
- '83'
- '84'
- '85'
- '86'
- '87'
- '88'
- '89'
- '90'
- '91'
- '92'
- '93'
example: '93'
description: >
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 Cardmember's statement, or be used to resolve
billing inquiries and disputes. The codes entered in the Transaction
Type and Document Type fields are used together to describe the purpose
of this transaction.
Value | Description
------|---------------
01 | Passenger Ticket
02 | Additional Collection
03 | Excess Baggage
04 | Misc. Charge Order (MCO) / Prepaid Ticket Auth
05 | Special Service Ticket
06 | Supported Refund
07 | Unsupported Refund
08 | Lost Ticket Application
09 | Tour Order Voucher
10 | Ticket by Mail
11 | Undercharge Adjustment
12 | Group Ticket
13 | Exchange Adjustment
14 | SPD/Air Freight
15 | In-flight Adjustment
16 | Agency Passenger Ticket
17 | Agency Tour Order/Voucher
18 | Agency Misc. Charge Order (MCO)
19 | Agency Exchange Order
20 | Agency Group Ticket
21 | Debit Adjustment Duplicate Refund/Use
22 | In-flight Merchandise Ordered
23 | Catalogue Merchandise Ordered
24 | In-flight Phone Charges
25 | Frequent Flyer Fee/Purchase
26 | Kennel Charge
27 | Animal Transportation Charge
28 | Firearms Case
29 | Upgrade Charge
30 | Credit Unused Transportation
31 | Credit Class of Service Adjustment
32 | Credit Denied Boarding
33 | Credit Misc. Refund
34 | Credit Lost Ticket Refund
35 | Credit Exchange Refund
36 | Credit Overcharge Adjustment
37 | Credit Multiple Unused Tickets
38 | Exchange Order
39 | Self-Service Ticket(s)
41 | In-flight Duty Free Purchase
42 | Senior Citizen Discount Booklets
43 | Club Membership Fee
44 | Coupon Book
45 | In-flight Charges
46 | Tour Deposit
47 | Frequent Flyer Overnight Delivery Charge
48 | Frequent Flyer Fulfillment
49 | Small Package Delivery
50 | Vendor Sale
51 | Miscellaneous Tax(es) Fee(s)
52 | Travel Agency Fee
60 | Vendor Refund Credit
64 | Duty Free Sale
65 | Preferred Seat Upgrade
66 | Cabin Upgrade
67 | Lounge/Club Access or Day Pass
68 | Agent Assisted Reservation. Ticketing Fee
69 | Ticket Change or Cancel Fee
70 | Trip Insurance
71 | Unaccompanied Minor
72 | Standby Fee
73 | Curbside Baggage
74 | Inflight Medical Equipment
75 | Ticket or Pass Print Fee
76 | Checked Sporting/Special Equipment
77 | Dry Ice Fee
78 | Mail/Postage Fee
79 | Club Membership Fee - Temporary/Trial
80 | Frequent Flyer Activation/Reinstatement
81 | Gift Certificate
82 | Onboard/Inflight Prepaid Voucher
83 | Optional Services Fee
84 | Advanced Purchase - Excess Baggage
85 | Advanced Purchase - Preferred Seat Upgrade
86 | Advanced Purchase - Cabin Upgrade
87 | Advanced Purchase - Optional Services
88 | WiFi
89 | Packages
90 | Inflight Entertainment/Internet Access
91 | Overweight Bag Fee
92 | Sleep Sets
93 | Special Purchase Fee
AirlineElectronicTicketIndicator:
type: string
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Indicates if an electronic ticket was issued.
Value | Description
-------|-------------------
Y | Yes
N | No
AirlineInternetIndicator:
type: string
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Indicates if this is an internet transaction.
Value | Description
-------|-------------------
Y | Yes
N | No
AirlineIssueDate:
type: string
format: ISO 8601
example: '2021-04-12T15:39:01.594-07:00'
description: >
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).
AirlineNumberOfCities:
type: number
maxLength: 2
example: 5
description: >
The number of airports or cities for each leg on the ticket (including
origination and destination cities).
AirlineNumberOfCarriers:
type: number
maxLength: 2
example: 5
description: |
This field contains the number of airline carriers.
AirlineNumberOfPassengers:
type: number
maxLength: 3
example: 5
description: |
The number of passengers in the transaction.
AirlinePassengerArrivalDate:
type: string
format: ISO 8601
example: '2021-04-14T15:39:01.594-07:00'
description: >
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 including the timezone offset
(yyyy-mm-ddThh:mm:ss.nnn+hh:mm).
AirlinePassengerDepartureDate:
type: string
format: ISO 8601
example: '2021-04-13T15:39:01.594-07:00'
description: >
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 format including the timezone offset
(yyyy-mm-ddThh:mm:ss.nnn+hh:mm).
AirlinePassengerNameRecord:
type: string
maxLength: 6
example: MXCTIF
description: >
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 passengers travelling together
AirlineRestrictedTicketIndicator:
type: string
maxLength: 1
example: '1'
enum:
- '0'
- '1'
description: |
Indicates whether this ticket is non-refundable.
Value | Description
-------|-------------------
0 | No restriction
1 | Restricted (non-refundable) ticket
AirlineTicketChangeIndicator:
type: string
maxLength: 1
enum:
- C
- 'N'
example: C
description: >
Indicates why a ticket was changed. This field should contain spaces or
one of the below codes.
Value | Description
-------|---------------
C | Change to existing ticket
N | New ticket
AirlineTicketTranType:
type: string
maxLength: 3
enum:
- TKT
- REF
- EXC
- MSC
example: TKT
description: >
This field contains the ticket transaction type code assigned to this
transaction.
Value | Description
-------|---------------
TKT | Ticket Purchase
REF | Refund
EXC | Exchange Ticket
MSC | Miscellaneous (non-Ticket Purchase- and non-Exchange
Ticket-related transactions only)
AirlineTypeIndicator:
type: string
maxLength: 1
enum:
- R
- O
- M
example: M
description: >
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
AirlineTicketsPassengerName:
type: string
maxLength: 40
example: Doe Jane M Mrs
description: >
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 M Mrs"
AirlineTicketsTicketNumber:
type: string
maxLength: 15
example: '344567890234567'
description: |
The ticket number provided by the Carrier for the passenger.
AirlineTicketsTicketFare:
type: number
maxLength: 14
example: 350
description: >
Ticket fare is the total amount for each ticket, including service fee
or any other fee for each ticket.
AirlineTickets:
type: object
required:
- passengerName
- ticketNumber
- ticketFare
properties:
passengerName:
$ref: '#/components/schemas/AirlineTicketsPassengerName'
ticketNumber:
$ref: '#/components/schemas/AirlineTicketsTicketNumber'
ticketFare:
$ref: '#/components/schemas/AirlineTicketsTicketFare'
AirlineTicketsArray:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/AirlineTickets'
example:
- ticketNumber: 412345678901234
passengerName: Jane Doe
ticketFare: 350
- ticketNumber: 412345678901236
passengerName: John Smith
ticketFare: 250
description: >
Array of ticket number and passenger name. Note: At least one instance
of ticket number and passenger name info should be provided.
AirlineFlightLegsCarrierCode:
type: string
maxLength: 2
example: DL
description: >
Code indicating name of carrier (United Airlines, Jet Blue, etc.) for
the leg.
AirlineFlightLegsCouponNumber:
type: number
maxLength: 1
example: 1
description: |
Number of coupons in the ticket for the leg.
AirlineFlightLegsDestAirportCode:
type: string
maxLength: 5
example: YXX
description: |
Indicates destination city's airport code for the leg.
AirlineFlightLegsFare:
type: number
maxLength: 14
example: 300
description: >
This field contains the total Fare for this trip segment. This is not
the total amount billed to the customer.
AirlineFlightLegsFareBasis:
type: string
maxLength: 24
example: YE3MAU
description: >
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 24 bytes, if necessary.
AirlineFlightLegsFlightNumber:
type: string
maxLength: 5
example: '2490'
description: |
Number of the airline flight to be taken on Leg of the trip.
AirlineFlightLegsLegArrivalDateTime:
type: string
format: ISO 8601
example: '2021-04-15T09:18:23.283-07:00'
description: >
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:mm).
AirlineFlightLegsLegDepartureDateTime:
type: string
format: ISO 8601
example: '2021-04-12T15:39:01.594-07:00'
description: >
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:mm).
AirlineFlightLegsOriginAirportCode:
type: string
maxLength: 5
example: AUH
description: |
Indicates origination city's airport code for the leg.
AirlineFlightLegsServiceClass:
type: string
maxLength: 2
example: FC
description: |
Indicates service class for leg.
Value | Description
-------|---------------
FC | First Class
BC | Business Class
EC | Economy/Coach Class
AirlineFlightLegsStopOverCode:
type: string
maxLength: 1
example: X
description: >
Indicates whether a stopover is allowed on this ticket for leg. The
entry must be a D, O, or X.
Value | Description
-------|---------------
O | Stopover allowed
X | Stopover not allowed
D | Destination point
AirlineFlightLegsTripLegInfo:
type: string
maxLength: 35
example: Trip Leg Info 1
description: |
Description of leg or stage of trip.
AirlineFlightLegs:
type: object
required:
- carrierCode
- destAirportCode
- fare
- fareBasis
- flightNumber
- legArrivalDateTime
- legDepartureDateTime
- originAirportCode
- serviceClass
- stopOverCode
- tripLegInfo
properties:
carrierCode:
$ref: '#/components/schemas/AirlineFlightLegsCarrierCode'
couponNumber:
$ref: '#/components/schemas/AirlineFlightLegsCouponNumber'
destAirportCode:
$ref: '#/components/schemas/AirlineFlightLegsDestAirportCode'
fare:
$ref: '#/components/schemas/AirlineFlightLegsFare'
fareBasis:
$ref: '#/components/schemas/AirlineFlightLegsFareBasis'
flightNumber:
$ref: '#/components/schemas/AirlineFlightLegsFlightNumber'
legArrivalDateTime:
$ref: '#/components/schemas/AirlineFlightLegsLegArrivalDateTime'
legDepartureDateTime:
$ref: '#/components/schemas/AirlineFlightLegsLegDepartureDateTime'
originAirportCode:
$ref: '#/components/schemas/AirlineFlightLegsOriginAirportCode'
serviceClass:
$ref: '#/components/schemas/AirlineFlightLegsServiceClass'
stopOverCode:
$ref: '#/components/schemas/AirlineFlightLegsStopOverCode'
tripLegInfo:
$ref: '#/components/schemas/AirlineFlightLegsTripLegInfo'
AirlineFlightLegsArray:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/AirlineFlightLegs'
example:
- tripLegInfo: Trip Leg Info 1
couponNumber: 1
legDepartureDateTime: '2021-04-12T15:39:01.594-07:00'
legArrivalDateTime: '2021-04-15T09:18:23.283-07:00'
fare: 300
- tripLegInfo: Trip Leg Info 2
couponNumber: 2
legDepartureDateTime: '2021-04-12T15:39:01.594-07:00'
legArrivalDateTime: '2021-04-15T09:18:23.283-07:00'
fare: 500
description: >
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.
AirlineAncillaryServicesServiceCode:
type: string
enum:
- BF
- BG
- CF
- CG
- CO
- FF
- GF
- GT
- IE
- LG
- MD
- ML
- OT
- PA
- PT
- SA
- SB
- SF
- ST
- TS
- UN
- UP
- WI
maxLength: 2
example: BF
description: |
This field describes the type of service that has been provided.
Value | Description
------|---------------
BF | Bundled Service
BG | Baggage Fee
CF | Change Fee
CG | Cargo
CO | Carbon Offset
FF | Frequent Flyer
GF | Gift Card
GT | Ground Transport
IE | In-Flight Entertainment
LG | Lounge
MD | Medical
ML | Meal/Beverage
OT | Other
PA | Passenger Assist Fee
PT | Pets
SA | Seat Fees
SB | Standby
SF | Service Fee
ST | Store
TS | Travel Service
UN | Unaccompanied Travel
UP | Upgrades
WI | Wi-Fi
AirlineAncillaryServicesServiceFee:
type: number
maxLength: 14
example: 2
description: >
This field contains the amount associated with the value provided in
ancillary Service Code.
AirlineAncillaryServices:
type: object
required:
- serviceCode
- serviceFee
properties:
serviceCode:
$ref: '#/components/schemas/AirlineAncillaryServicesServiceCode'
serviceFee:
$ref: '#/components/schemas/AirlineAncillaryServicesServiceFee'
AirlineAncillaryServicesArray:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/AirlineAncillaryServices'
example:
- serviceCode: BF
serviceFee: 2
- serviceCode: BG
serviceFee: 3
description: |
Array of ancillary service code and fees.
**Conditional: Send if any ancillary services were charged.**
AirlineTravelAgencyCode:
type: string
maxLength: 8
example: '05172343'
description: >
Code identifying travel agency if the ticket was issued by a travel
agency.
**Conditional: Send if a travel agency service was used.**
AirlineTravelAgencyName:
type: string
maxLength: 25
example: State Travel
description: |
Name of travel agency if the ticket was issued by a travel agency.
**Conditional: Send if a travel agency service was used.**
AirlineExchangeTicketNumber:
type: string
maxLength: 15
example: '507212345678768'
description: |
The original ticket number that was replaced by a new ticket number.
AirlineRequest:
type: object
description: >
**Conditional: Utilize this object for Airline transactions in
Authorization/Sale requests when possible. If unable to provide this
data at Authorization, this object must be sent in subsequent Capture
requests for the transaction.**
required:
- carrierCode
- carrierName
- conjunctionTicketIndicator
- documentType
- electronicTicketIndicator
- internetIndicator
- issueDate
- numberOfCities
- numberOfCarriers
- numberOfPassengers
- passengerArrivalDate
- passengerDepartureDate
- passengerNameRecord
- restrictedTicketIndicator
- ticketChangeIndicator
- ticketTranType
- tickets
- flightLegs
- typeIndicator
properties:
carrierCode:
$ref: '#/components/schemas/AirlineCarrierCode'
carrierName:
$ref: '#/components/schemas/AirlineCarrierName'
conjunctionTicketIndicator:
$ref: '#/components/schemas/AirlineConjunctionTicketIndicator'
documentType:
$ref: '#/components/schemas/AirlineDocumentType'
electronicTicketIndicator:
$ref: '#/components/schemas/AirlineElectronicTicketIndicator'
internetIndicator:
$ref: '#/components/schemas/AirlineInternetIndicator'
issueDate:
$ref: '#/components/schemas/AirlineIssueDate'
numberOfCities:
$ref: '#/components/schemas/AirlineNumberOfCities'
numberOfCarriers:
$ref: '#/components/schemas/AirlineNumberOfCarriers'
numberOfPassengers:
$ref: '#/components/schemas/AirlineNumberOfPassengers'
passengerArrivalDate:
$ref: '#/components/schemas/AirlinePassengerArrivalDate'
passengerDepartureDate:
$ref: '#/components/schemas/AirlinePassengerDepartureDate'
passengerNameRecord:
$ref: '#/components/schemas/AirlinePassengerNameRecord'
restrictedTicketIndicator:
$ref: '#/components/schemas/AirlineRestrictedTicketIndicator'
ticketChangeIndicator:
$ref: '#/components/schemas/AirlineTicketChangeIndicator'
ticketTranType:
$ref: '#/components/schemas/AirlineTicketTranType'
typeIndicator:
$ref: '#/components/schemas/AirlineTypeIndicator'
tickets:
$ref: '#/components/schemas/AirlineTicketsArray'
flightLegs:
$ref: '#/components/schemas/AirlineFlightLegsArray'
ancillaryServices:
$ref: '#/components/schemas/AirlineAncillaryServicesArray'
travelAgencyCode:
$ref: '#/components/schemas/AirlineTravelAgencyCode'
travelAgencyName:
$ref: '#/components/schemas/AirlineTravelAgencyName'
exchangeTicketNumber:
$ref: '#/components/schemas/AirlineExchangeTicketNumber'
CardOnFileType:
type: string
enum:
- S01
- S02
- U01
- U02
- U03
- U04
- U05
- U06
- U07
- U08
- U09
example: S01
description: >
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 card data to store on file.
| Value | Initiator | Recurring | 3D Secure |
Description
|
|--------|------------|-----------|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| S01 | Cardholder | No | Yes | Used when the initial
transaction/card verification request is not for a recurring
payment.
|
| S02 | Cardholder | Yes | Yes | Used when the initial
transaction/card verification request is for a recurring payment.
Requires sending `cardOnFile.recurringFrequency` and
`cardOnFile.recurringExpiry`
|
Below is a table showing the valid values for uses cases where you
already have a card on file and are using that existing card to process
a transaction.
| Value | Initiator | Recurring | 3D Secure |
Description
|
|--------|------------|-----------|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| U01 | Cardholder | No | Yes | Unscheduled transaction
using the card on file initiated by the
cardholder
|
| U02 | Merchant | No | No | Unscheduled transaction
using the card on file initiated by the
merchant
|
| U03 | Merchant | Yes | No | Merchant initiated
recurring payment using the card on
file
|
| U04 | Merchant | No | No | Identifies a transaction
as a Reauthorization COF
transaction.
|
| U05 | Merchant | No | No | Identifies a transaction
as a Resubmission COF transaction. Only certain merchant categories are
able to send a resubmission, and it can only be done if the original
authorization attempt was declined due to insufficient
funds.
|
| U06 | Merchant | No | No | Identifies a transaction
as an Estimated Authorization COF
transaction.
|
| U07 | Merchant | No | No | Identifies a transaction
as a Delayed Charges COF transaction. For example, a hotel might charge
a customer for room damages after the guest has already checked
out.
|
| U08 | Merchant | No | No | Identifies a transaction
as an Incremental COF transaction. For example, a hotel which authorized
a customer’s card for one night at check-in might increase the
authorization amount to cover two nights when the customer decides to
extend their stay. Shift4 automatically detects this scenario and sends
the appropriate value to the processor. |
| U09 | Merchant | No | No | Identifies a transaction
as a No Show COF transaction. For example, a hotel might charge a
customer who does not show up for a booked
stay.
|
See the [Card On File
Transactions](/guides/advanced-concepts/card-on-file-transactions)
section for additional details.
CardOnFileRecurringExpiry:
type: string
example: '20250401'
minLength: 8
maxLength: 8
description: >
Date after which no further authorizations shall be performed. This
field is limited to 8 characters, and the accepted format is YYYYMMDD.
**Conditional: This field is required if it's the first recurring
transaction (`cardOnFile.type = S02`). This field is not needed if the
transaction is not recurring or if the transaction is a subsequent
recurring transaction.**
CardOnFileRecurringFrequency:
type: string
example: '15'
minLength: 1
maxLength: 4
description: >
Indicates the minimum number of days between authorizations.
**Conditional: 'This field is required if it's the first recurring
transaction (`cardOnFile.type = S02`). This field is not needed if the
transaction is not recurring or if the transaction is a subsequent
recurring transaction.**
CardOnFileTransactionId:
type: string
maxLength: 15
example: Z62537846172646
description: >
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 on a card for the first time,
they will receive a transactionId back in the response. A month later,
when the merchant wants to perform an additional Sale with the card on
file, they would send a Sale request including the transactionId they
received from the first sale.
**Conditional: Must be sent in subsequent COF requests if you are not
processing with a Global Token Vault token. If using Global Token Vault
tokens then this field is not required**
CardOnFileTransactionLinkId:
type: string
maxLength: 22
example: Z871868461726461879548
description: >
A unique identifier assigned to each transaction to link related events
throughout the transaction lifecycle. This field is supported for
Mastercard brand only.
For example, if a merchant runs a Sale on a card for the first time,
they will receive a transactionLinkId back in the response. A month
later, when the merchant wants to perform an additional Sale with the
card on file, they would send a Sale request including the
transactionLinkId they received from the first sale.
**Conditional: Must be sent in subsequent COF requests if you are not
processing with a Global Token Vault token. If using Global Token Vault
tokens then this field is not required**
CardOnFile:
type: object
description: >
**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 [Card On File
Transactions](/guides/advanced-concepts/card-on-file-transactions)
section for more information.
properties:
type:
$ref: '#/components/schemas/CardOnFileType'
recurringExpiry:
$ref: '#/components/schemas/CardOnFileRecurringExpiry'
recurringFrequency:
$ref: '#/components/schemas/CardOnFileRecurringFrequency'
transactionId:
$ref: '#/components/schemas/CardOnFileTransactionId'
transactionLinkId:
$ref: '#/components/schemas/CardOnFileTransactionLinkId'
HotelEstimatedDays:
type: integer
maxLength: 2
example: 5
description: >
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/transactions/transactionsauthorization)
request for a consumer’s hotel stay.
HotelCheckIn:
type: object
description: |
**Conditional: Utilize this object for Hotel transactions**
properties:
estimatedDays:
$ref: '#/components/schemas/HotelEstimatedDays'
PurchaseCardCustomerReference:
type: string
maxLength: 25
example: D019D09309F2
description: >
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 would use this field to collect the consumer’s
purchase order or employee identification number. In lodging
transactions, this may be unique transaction details, such as a
reservation code or third-party booking source. This field is part of
Level 2 card data.
PurchaseCardDestinationPostalCode:
type: string
maxLength: 9
example: '94719'
description: >
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 field is part of Level 2 card data.
PurchaseCardProductDescriptors:
type: array
items:
type: string
maxLength: 40
example:
- Hamburger
- Fries
- Soda
- Cookie
description: >
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 transaction data (such as the name of the item
sold). At least one product descriptor field is required in a sale or
authorization request.
Note: The productDescriptors array is limited to 4 elements. Each
element can contain a maximum of 40 characters.
PurchaseCard:
type: object
required:
- customerReference
- destinationPostalCode
- productDescriptors
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
destinationPostalCode:
$ref: '#/components/schemas/PurchaseCardDestinationPostalCode'
productDescriptors:
$ref: '#/components/schemas/PurchaseCardProductDescriptors'
TransactionVendorReference:
type: string
maxLength: 50
example: 12382-01
description: >
Optional field for information that can be searched in the merchant
portal.
TransactionAuthType:
type: string
maxLength: 2
enum:
- '1'
- '2'
example: '2'
description: >
Specifies whether or not the authorization amount can be modified post
authorization. Specifying the transaction as a 'Final Authorization' can
result in lower transaction rates, however the transaction amount can
not be incremented or decremented. It must be captured for the exact
amount that it was authorized.
If this field is not included in the request the transaction will be
processed as a 'Pre-Authorization'.
Value| Description
-----|------------
1 | Final Authorization
2 | Pre-Authorization
TransactionSource:
type: string
minLength: 1
maxLength: 2
example: '6'
enum:
- '6'
description: >
**Conditional: Must be sent when processing transactions on an
unattended device.**
Transaction source type.
Value | Description
-------|-----------------------------
6 | Unattended Cardholder Activated Terminal (UCAT)
TransactionOriginalDate:
type: string
format: ISO 8601
example: '2021-04-15T09:18:23.283-07:00'
description: >
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 for the value sent in the original transaction
request.
DeviceTerminalIdComEng:
type: string
maxLength: 32
example: '1742'
description: >
This field is optional and is for backwards compatibility with existing
vendors that are used to processing via UTG controlled devices.
Since Commerce Engine is running directly on the payment device it does
not require a `device.terminalId` to be specified.
ReceiptColumns:
type: integer
example: 40
maxLength: 2
description: >
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 formatted receipt that we return. (This also allows the
receipt text to wrap to fit the paper size of the printed receipt.) See
the [Printing Receipts](/guides/core-concepts/printing-receipts) section
of this document for more information on formatted receipts.
StatementSuffix:
type: string
maxLength: 15
example: KDNYZUHQ1
description: >
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 characters. Sending this value will cause the merchant
name to be truncated to 9 characters. Shift4 will add an asterisk
between the merchant name and the `statementSuffix` value.
For example, for a merchant named `Joe's Warehouse Emporium` that
processes a transaction with `statementSuffix` value of `KDNYZUHQ1`, the
merchant statement will show as `Joe's War*KDNYZUHQ1`.
**Note: The value that displays on customer statements from card issuers
is beyond Shift4's control. We will submit the transaction data as
described above, however issuers may modify or truncate that data as
they see fit. To best accommodate different issuer limitations, we will
truncate the merchant name to the minimum possible value (9 characters)
in order to attempt to leave the most room for the statementSuffix to
populate on issuer statements.**
CurrencyCode:
type: string
format: ISO 4217 3 Character Alphabetic Code
example: USD
description: >
Transaction currency code. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
**Note: This is currently supported when processing for a merchant
outside of the US and Canada. If processing for a US or Canadian
merchant then this field will be ignored and the transaction will
process in the merchant's configured currency.**
CustomerAddressLine1:
type: string
maxLength: 30
example: 65 Easy St
description: >
Cardholder’s street address exactly as it appears on their billing
statement. This field is used in AVS.
CustomerFirstName:
type: string
maxLength: 30
example: John
description: >
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 response, unless the API Option
[USECARDNAME](/guides/appendices/api-options#usecardname) is included in
the request and a Commerce Engine or UTG-controlled PIN pad is in use.
If the interface does not send the `customer` object, the consumer's
name will be returned in the `customer` object if the name is present in
the card's EMV or track data.
CustomerMiddleName:
type: string
maxLength: 30
example: Andrew
description: |
Specifies a consumer’s middle name.
CustomerLastName:
type: string
maxLength: 30
example: Smith
description: >
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 response, unless the API Option
[USECARDNAME](/guides/appendices/api-options#usecardname) is included in
the request and a Commerce Engine or UTG-controlled PIN pad is in use.
If the interface does not send the `customer` object, the consumer's
name will be returned in the `customer` object if the name is present in
the card's EMV or track data.
CustomerPostalCode:
type: string
minLength: 1
maxLength: 9
example: '65144'
description: >
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 alphanumeric characters (a-z, A-Z, 0-9).
Special characters including - are not allowed. If you are sending in
zip+4 you must not include the dash so 89134-1234 would be sent as
891341234**
CustomerEmailAddress:
type: string
maxLength: 80
example: john.smith@email.com
description: |
Customer email address.
CustomerIpAddress:
type: string
maxLength: 20
example: 63.57.84.101
description: >
Public source IP Address where the request originates, not the IP
Address of the web server.
Customer:
type: object
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
middleName:
$ref: '#/components/schemas/CustomerMiddleName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
CardPresent:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
**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 should be set appropriately in the initial
authorization/sale request. In subsequent requests, this field should
be left blank or should not be sent.
**Note:** Subsequent request here does not apply to the secondary
request for card on file type transactions or reuse of the same card. An
example of a subsequent request would be a capture after an
authorization. You would not include `card.present` in the capture,
which is the subsequent request. Another example is when performing an
incremental authorization where you perform an authorization, followed
by an incremental authorization then a capture. The second authorization
(incremental) and the capture are the subsequent requests where you
would not include `card.present`.
CardType:
type: string
enum:
- CC
- DB
- GC
- HF
- PL
- YC
example: VS
description: >
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 value will be ignored.
Value| Description
-----|------------
CC | When using a UTG-controlled device, this value will force a card
to process as credit.
DB | When using a UTG-controlled device, this value will force a card
to process as debit. When using a non-UTG-controlled PIN pad, this
value must be sent when processing a debit transaction.
GC | Gift Card
HF | HSA/FSA Card
PL | Private Label
YC | IT’S YOUR CARD
ApiOptions:
type: array
items:
type: string
example:
- RETURNEXPDATE
- ALLOWPARTIALAUTH
writeOnly: true
description: >
API Options modify the request being made. See the [API
Options](/guides/appendices/api-options.md) section for more
information.
TipPresetType:
type: string
enum:
- none
- percent
- amount
example: percent
description: >
The tip option selected by the cardholder.
| Value |
Description
|
|---------|--------------------------------------------------------------------------------------------------------------------|
| none | Skips the preset screen and goes direclty to the other tip
amount screen. |
| percent | Display the preset screen showing preset percentages. Must
include `tip.preset1`, `tip.preset2`, and `tip.preset3` |
| amount | Display the preset screen showing preset amounts. Must
include `tip.preset1`, `tip.preset2`, and `tip.preset3`. |
TipPresetDefault:
type: string
enum:
- '1'
- '2'
- '3'
- none
example: '2'
description: >
The preset value that is selected by default. If not sent in the request
it will default to to preset 2.
| Value | Description |
|-------|-----------------------|
| 1 | Preset 1 is selected |
| 2 | Preset 2 is selected |
| 3 | Preset 3 is selected |
| none | No preset is selected |
TipPreset1:
type: number
example: 15
description: >
The preset value for the preset number 1. If `presetType = percent` send
the percentage value. If `presetType = amount` send the amount value.
TipPreset2:
type: number
example: 20
description: >
The preset value for the preset number 2. If `presetType = percent` send
the percentage value. If `presetType = amount` send the amount value.
TipPreset3:
type: number
example: 25
description: >
The preset value for the preset number 3. If `presetType = percent` send
the percentage value. If `presetType = amount` send the amount value.
TipHeader:
type: string
maxLength: 100
example: Would you like to add a tip?
description: >
Optional field to override the header text. If not sent, the header text
will display `Add Tip` in the terminal's configured language.
TipBasisNotification:
type: boolean
example: true
description: >
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`.
Default: `false`
TipDisplayNoTip:
type: boolean
example: true
description: >
Send as `true` if you want to display No Tip instead of Cash Tip on the
tip entry screen.
Default: `false`
TipObject:
type: object
description: >
The optional `tip` object allows integrators to control the display and
behavior of the tip screen presented to customers during payment
processing.
required:
- presetType
properties:
presetType:
$ref: '#/components/schemas/TipPresetType'
presetDefault:
$ref: '#/components/schemas/TipPresetDefault'
preset1:
$ref: '#/components/schemas/TipPreset1'
preset2:
$ref: '#/components/schemas/TipPreset2'
preset3:
$ref: '#/components/schemas/TipPreset3'
headerText:
$ref: '#/components/schemas/TipHeader'
basisNotification:
$ref: '#/components/schemas/TipBasisNotification'
displayNoTip:
$ref: '#/components/schemas/TipDisplayNoTip'
UILanguageRequest:
type: string
example: en
description: >
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 configured default language for the duration of the session.
Value persists across transactions until a new value is passed. Send
default to reset the device back to its default language.
UIMode:
type: string
enum:
- light
- dark
example: dark
description: >
Set the UI to light mode by sending `light` or dark mode by sending
`dark`
UISuppressFinalResult:
type: boolean
example: 'true'
description: >
When `true`, the terminal suppresses the final transaction result
screen.
SafFloorLimitCredit:
type: number
maxLength: 14
example: 250.25
description: >
Sets the offline floor limit for the transaction. If lower than the
configured credit floor limit, it overrides the limit. If higher than or
equal to the configured limit, it's ignored.
SafFloorLimit:
type: object
properties:
credit:
$ref: '#/components/schemas/SafFloorLimitCredit'
transactions_authorization_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- clerk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
tip:
$ref: '#/components/schemas/TipObject'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
DeviceCloud:
type: boolean
example: true
description: >
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 request to the payment device at the merchant
location.
DeviceManufacturer:
type: string
enum:
- Ingenico
- Innowi
- PAX
- Verifone
- Castles
- Miura
example: PAX
description: |
Specifies the company which manufactured the device.
DeviceSerialNumber:
type: string
maxLength: 64
example: '1170301234'
description: |
Specifies the serial number of the device.
DeviceCommerceEngineCloud:
type: object
required:
- cloud
- manufacturer
- serialNumber
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
transactions_authorization_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
$ref: '#/components/schemas/DeviceCommerceEngineCloud'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
tip:
$ref: '#/components/schemas/TipObject'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2023-08-31T07:20:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
DeviceTerminalId:
type: string
maxLength: 32
example: '1742'
description: >
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.
DevicePromptPostalCode:
type: string
minLength: 1
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 the PIN pad to prompt the consumer for a ZIP/Postal
Code.
**Note: Use only when you want to override MCE (Manual Card Entry)
settings in UTG.**
DevicePromptCardSecurityCode:
type: string
minLength: 1
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 to prompt the consumer for a CSC.
**Note: Use only when you want to override MCE (Manual Card Entry)
settings in UTG.**
DevicePromptStreetNumber:
type: string
minLength: 1
maxLength: 1
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 address.
N | Do not force the PIN pad to prompt the consumer for the street
number of their billing address.
**Note: Use only when you want to override MCE (Manual Card Entry)
settings in UTG.**
transactions_authorization_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
terminalId: '1742'
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
AmountSurcharge:
type: number
maxLength: 14
example: 5
description: >
**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 amount that a consumer is charged in addition to the transaction
amount. The fee amount is also added into `amount.total`. For example,
if the transaction request had `amount.total = 100` and the
`surcharge.percentage` was 1.5% the transaction would include
`amount.total = 101.50` and `amount.surcharge = 1.50`
Amount:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested. All other fields are for informational purposes and
must also be included in the `total` field. For example, a purchase of
$100 with a $20 tip and $8 tax would be `128.00` in the `total` field,
`20.00` in the `tip` field and `8.00` in the `tax` field.
Note: For merchants that are configured to allow multiple currencies,
the amount fields can specify up to three decimal places. However, the
number of decimal places can not exceed the number allowed for the
specified currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
required:
- total
- tax
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
taxIndicator:
$ref: '#/components/schemas/AmountTaxIndicator'
cashback:
$ref: '#/components/schemas/AmountCashback'
iiasAmounts:
$ref: '#/components/schemas/IIASAmountsArray'
surcharge:
$ref: '#/components/schemas/AmountSurcharge'
tip:
$ref: '#/components/schemas/AmountTip'
checkTotal:
$ref: '#/components/schemas/AmountCheckTotal'
TransactionS4RiskIdRequest:
type: string
example: EC52377F-5A8E-4534-BE7A-CF779A35BE45
description: >
Unique transaction identification number generated by Shift4 to identify
a specific risk transaction and a field that can be searched in LTM.
**Conditional: must be sent if [Risk
Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) was
completed prior to processing the transaction.**
TransactionDeferredAuth:
type: string
minLength: 1
maxLength: 1
example: D
enum:
- D
description: >
**Conditional: Must be sent if the transaction is deferred**
Specifies that a transaction is the result of a deferred authorization.
For example, a transaction that was accepted while in an offline state
and is being uploaded after coming back online.
Value | Description
-------|-----------------------------
D | Transaction is a deferred authorization
TransactionExemptionAction:
type: string
example: '02'
enum:
- '02'
description: >
Indicates the merchant preference regarding SCA exemption.
Value | Description
-------|-----------------------------
02 | Request an exemption as part of the payment request.
**Note:** If no value is provided, and you are using the 3DS Adviser
module, the Shift4 Payment Gateway requests an exemption (if applicable)
as part of the 3D secure process.
TransactionExemptionReason:
type: string
example: '01'
enum:
- '01'
- '02'
- '04'
description: >
**Conditional: required when sending `transaction.exemptionAction =
02`**
Value | Description
-------|-----------------------------
01 | Low value transaction (below 30 EUR or equivalent)
02 | Low risk transaction (TRA)1
04 | Secure Corporate Cards 3
CardExpirationDate:
type: integer
minLength: 3
maxLength: 4
format: MMYY
example: 1230
description: >
**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 expiration date in MMYY format. This value should only be populated
in the initial sale/authorization request.
CardTokenValue:
description: >
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 to store this card token for future use. The latest
card token received should be used in any subsequent request that
references the same card data.
type: string
maxLength: 16
example: '8048471746471119'
CardTokenRequired:
type: object
required:
- value
properties:
value:
$ref: '#/components/schemas/CardTokenValue'
CardSecurityCodeIndicator:
type: string
minLength: 1
maxLength: 1
writeOnly: true
example: '1'
enum:
- '0'
- '1'
- '2'
- '9'
description: |
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 on card, or card did not have a CSC.
CardSecurityCodeResult:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: M
enum:
- M
- 'N'
- P
- S
- U
- 'Y'
- '1'
- '2'
- '3'
description: >
**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 Shift4 to
determine the value sent in the `card.securityCode.valid` field (based
on the merchant’s list of accepted verification results as configured
with Shift4).
Value|Description
-----|------------
M | CSC matched.
N | CSC did not match.
P | CSC not processed.
S | CSC should have been present.
U | Issuer unable to process.
Y | CVC1 incorrect.
1 | CSC Unavailable - processor / card type does not support this
parameter.
2 | An unrecognised result code was returned by the processor.
3 | No result code was returned by the processor.
CardSecurityCodeValid:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: 'Y'
description: >
**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 the
`card.securityCode.result` field and the merchant’s accepted
verification results as configured with Shift4. The value returned will
be ‘Y’ if CSC verification passed or ‘N’ if CSC verification did not
pass.
CardSecurityCodeValue:
type: string
maxLength: 4
writeOnly: true
example: '333'
description: >
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 stored by the interface. When sending
`card.securityCode.value`, `card.securityCode.indicator` must also be
sent.
CardSecurityCode:
type: object
description: >
**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 initial card on file request but is not required for
subsequent merchant initiated charges.**
required:
- indicator
- value
properties:
indicator:
$ref: '#/components/schemas/CardSecurityCodeIndicator'
result:
$ref: '#/components/schemas/CardSecurityCodeResult'
valid:
$ref: '#/components/schemas/CardSecurityCodeValid'
value:
$ref: '#/components/schemas/CardSecurityCodeValue'
RiskTranIdRequest:
type: string
example: DDWT0P3LG6LL
description: >
The risk tranId value received in the [Risk
Assessment](/apis/payments-platform-rest/openapi/risk/riskassess)
response.
**Conditional: must be sent if [Risk
Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) was
completed prior to processing the transaction.**
RiskAssessmentRequest:
type: string
enum:
- A
- D
- R
- E
example: A
description: >
The risk assessment value received in the [Risk
Assessment](/apis/payments-platform-rest/openapi/risk/riskassess)
response.
**Conditional: must be sent if [Risk
Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) was
completed prior to processing the transaction.**
RiskTransactionRequest:
type: object
description: >
**Conditional: must be sent if [Risk
Assessment](/apis/payments-platform-rest/openapi/risk/riskassess) was
completed prior to processing the transaction.**
properties:
tranId:
$ref: '#/components/schemas/RiskTranIdRequest'
assessment:
$ref: '#/components/schemas/RiskAssessmentRequest'
ReportingDataCustomerInfoFirstName:
type: string
example: John
maxLength: 30
description: |
Customer's first name
ReportingDataCustomerInfoLastName:
type: string
example: Smith
maxLength: 30
description: |
Customer's last name
ReportingDataCustomerInfoDateOfBirth:
type: string
example: '01281980'
minLength: 8
maxLength: 8
description: |
Customer's date of birth in MMDDYYYY format
ReportingDataCustomerInfoGender:
type: string
example: male
maxLength: 20
description: |
Customer's gender
ReportingDataCustomerInfoBaggage:
type: string
example: carryon
maxLength: 20
description: |
Description for the customer's baggage
ReportingDataCustomerInfoSeats:
type: string
example: 1A
maxLength: 3
description: |
Customer's assigned seat
ReportingDataCustomerInfoBoardingPriority:
type: string
example: '3'
maxLength: 3
description: |
Customer's boarding priority
ReportingDataCustomerInfo:
type: object
properties:
firstName:
$ref: '#/components/schemas/ReportingDataCustomerInfoFirstName'
lastName:
$ref: '#/components/schemas/ReportingDataCustomerInfoLastName'
dateOfBirth:
$ref: '#/components/schemas/ReportingDataCustomerInfoDateOfBirth'
gender:
$ref: '#/components/schemas/ReportingDataCustomerInfoGender'
baggage:
$ref: '#/components/schemas/ReportingDataCustomerInfoBaggage'
seats:
$ref: '#/components/schemas/ReportingDataCustomerInfoSeats'
boardingPriority:
$ref: '#/components/schemas/ReportingDataCustomerInfoBoardingPriority'
ReportingDataCustomerInfoArray:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/ReportingDataCustomerInfo'
example:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
description: >
Array of customer information objects. The maximum number of customer
information objects that can be sent is 10.
ReportingDataPspDataPspId:
type: string
maxLength: 64
example: PSP Name XYZ
description: |
PSP identifier / label
ReportingDataPspDataPspMid:
type: string
maxLength: 32
example: '123456'
description: |
PSP merchant identifier (MID).
ReportingDataPspDataPspTid:
type: string
maxLength: 32
example: '12345678'
description: |
PSP terminal identifier (TID).
ReportingDataPspDataPspTxnTraceNo:
type: string
maxLength: 32
example: '000013'
description: |
PSP transaction trace number.
ReportingDataPspDataPspTxnDate:
type: string
format: date
example: '20260110'
description: |
PSP transaction date (YYYYMMDD).
ReportingDataPspDataPspTxnTime:
type: string
format: 24-hour time
example: '235959'
description: |
PSP transaction time (hhmmss)
ReportingDataPspDataPspResponseCode:
type: string
maxLength: 16
example: '00'
description: |
PSP host response code.
ReportingDataPspDataPspResponseText:
type: string
maxLength: 256
example: Payment Approved
description: |
PSP host response description/text.
ReportingDataPspData:
type: object
description: >
Payment service provider (PSP) metadata for third-party processed
transactions.
properties:
pspId:
$ref: '#/components/schemas/ReportingDataPspDataPspId'
pspMid:
$ref: '#/components/schemas/ReportingDataPspDataPspMid'
pspTid:
$ref: '#/components/schemas/ReportingDataPspDataPspTid'
pspTxnTraceNo:
$ref: '#/components/schemas/ReportingDataPspDataPspTxnTraceNo'
pspTxnDate:
$ref: '#/components/schemas/ReportingDataPspDataPspTxnDate'
pspTxnTime:
$ref: '#/components/schemas/ReportingDataPspDataPspTxnTime'
pspResponseCode:
$ref: '#/components/schemas/ReportingDataPspDataPspResponseCode'
pspResponseText:
$ref: '#/components/schemas/ReportingDataPspDataPspResponseText'
ReportingData:
type: object
description: |
Used to send non-payment related data for reporting purposes.
properties:
customerInfo:
$ref: '#/components/schemas/ReportingDataCustomerInfoArray'
pspData:
$ref: '#/components/schemas/ReportingDataPspData'
mPOSType:
type: string
enum:
- '00'
- '01'
- '02'
- '03'
example: '01'
description: >
mPOS (mobile POS) device type indicator
Value| Description
-----|------------
00 | mPOS Accessory/dongle with contact and contactless interfaces,
with or without PIN pad.
01 | Mobile device based contactless only mPOS without PIN support.
02 | mPOS Accessory/dongle with contact and contactless interfaces and
PIN on Glass support
03 | Mobile device based contactless only mPOS with PIN on Glass
support.
mPOS:
type: object
description: >
**Conditional: Send in the request if transaction is coming from an
mPOS**
properties:
type:
$ref: '#/components/schemas/mPOSType'
DCCRateTimeStamp:
type: string
format: ISO 8601
example: '2024-07-09T13:34:25.049-07:00'
description: >
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).
DCCCurrencyCode:
type: string
format: ISO 4217 3 Character Alphabetic Code
example: CAD
description: >
Cardholder's transaction currency code. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
DCCForeignAmount:
type: number
maxLength: 14
example: 180
description: |
Foreign Currency Amount
DCCConversionRate:
type: string
maxLength: 20
example: 1.35
description: >
Foreign Currency Exchange Rate. The rate at which one currency can be
exchanged for another currency.
DCCMarginPercentage:
type: string
maxLength: 10
example: 9.99
description: >
This value is the foreign exchange markup percentage including the
decimal. For example 9.99% will be returned as `9.99`
DCCCurrencyMinorUnits:
type: number
example: 2
description: >
Foreign Currency Minor Unit. Indicates the number of digits after the
decimal separator as specified by either MasterCard, VISA, or the ISO
4217 standard.
DCCTransactionID:
type: string
maxLength: 50
example: 1A2820D2G334
description: >
A unique identifier returned in the ratelookup response to link with the
initial authorization, Sale transaction types.
DCCConversionIndicator:
type: string
minLength: 1
maxLength: 1
enum:
- '0'
- '1'
- '2'
example: '1'
description: >
Specifies whether or not the cardholder opted into dynamic currency
conversion.
Value | Description
------|--------------------------------------------------------------------------------------
0 | Convertible but declined by cardholder (cardholder chose to pay
in merchant currency)
1 | Converted (cardholder opted to pay in their currency)
2 | Nonconvertible (DCC cannot be used)
DCCDiffOverECB:
type: string
maxLength: 5
example: '0.35'
description: >
Difference of GB Reference Rate over ECB Reference Rate in percentage
(%), if applicable including decimal. This field is applicable only for
conversion between currencies of EU countries, e.g. EUR --> DKK or SEK
--> CZK.
This field will not be returned if the transaction is not in Scope of EU
Regulation 2019/518.
DCCMarginOverECB:
type: string
maxLength: 5
example: '2.85'
description: >
Markup of offered exchange rate over ECB Reference Rate in percentage
(%), if applicable. This field is applicable only for conversion between
currencies of EU countries, e.g. EUR --> DKK or SEK --> CZK.
This field will not be returned if the transaction is not in scope of EU
Regulation 2019/518.
DCCDisplayUnit:
type: number
example: 2
description: >
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` = 2 will
show JPY in 100 (10^2) units: JPY 100 = EUR 0.7961
DCCProvider:
type: string
enum:
- WAY4
- GLOBAL_BLUE
example: GLOBAL_BLUE
description: |
DCC Provider
DCCTransactionRequest:
type: object
description: >
Object containing Dynamic Currency Conversion (DCC) information. Must
contain all fields received in the [DCC Rate
Lookup](/apis/payments-platform-rest/openapi/dcc/dccratelookup)
response.
**Conditional: must be included in the request if the cardholder was
given the option to pay in their currency, even if they opted out.**
properties:
rateTimeStamp:
$ref: '#/components/schemas/DCCRateTimeStamp'
currencyCode:
$ref: '#/components/schemas/DCCCurrencyCode'
foreignAmount:
$ref: '#/components/schemas/DCCForeignAmount'
conversionRate:
$ref: '#/components/schemas/DCCConversionRate'
marginPercentage:
$ref: '#/components/schemas/DCCMarginPercentage'
currencyMinorUnits:
$ref: '#/components/schemas/DCCCurrencyMinorUnits'
transactionId:
$ref: '#/components/schemas/DCCTransactionID'
conversionIndicator:
$ref: '#/components/schemas/DCCConversionIndicator'
diffOverEcb:
$ref: '#/components/schemas/DCCDiffOverECB'
marginOverEcb:
$ref: '#/components/schemas/DCCMarginOverECB'
displayUnit:
$ref: '#/components/schemas/DCCDisplayUnit'
provider:
$ref: '#/components/schemas/DCCProvider'
SurchargePercentage:
type: number
example: 2
maximum: 99.99
description: |
The surcharge percentage that can be applied to a transaction.
SurchargeRequest:
type: object
description: >
**Conditional: Must be sent in the request if a surcharge is applied to
the transaction.**
properties:
percentage:
$ref: '#/components/schemas/SurchargePercentage'
transactions_authorization_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
exemptionAction:
$ref: '#/components/schemas/TransactionExemptionAction'
exemptionReason:
$ref: '#/components/schemas/TransactionExemptionReason'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
CardTokenSerialNumber:
description: >
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 specify the serial number for the account where the
card token is stored.
type: string
maxLength: 10
example: '266'
CardTokenRequiredLegacy:
type: object
required:
- value
properties:
value:
$ref: '#/components/schemas/CardTokenValue'
serialNumber:
$ref: '#/components/schemas/CardTokenSerialNumber'
transactions_authorization_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
exemptionAction:
$ref: '#/components/schemas/TransactionExemptionAction'
exemptionReason:
$ref: '#/components/schemas/TransactionExemptionReason'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
P2PEData:
type: string
maxLength: 2048
example: >-
027101801F2D1E00939B%*432100******1119^VS/DUAL
TRACK^2212******?*;432100******1119=2212******?*CECE3FCE7781142BEC8D0E267AE89F5D3C7E235BF1A70E637951E8D93003E5A2586C336CA4A3B31F6639B04005BB12A716D8BC4D3AB125C27AB11A9DDC02816569D42A20B036EE5E2C71CB70565FB43B000000000000000000000000000000000000000000000000000000000000000000000000000000003434345434363138343962994950010038200415953903
description: |
The full output of a P2PE keypad/magnetic swipe reader (MSR).
P2PEFormatIDTech:
type: string
minLength: 2
maxLength: 2
enum:
- '01'
- '02'
example: '01'
description: |
Classifies the type of payment device being used for P2PE.
Value|Description
-----|-----------
01 | IDTech Enhanced Encryption format (Keyboard Mode)
02 | IDTech Enhanced Encryption format (USB HID Mode)
P2PEType0102IDTECH:
type: object
required:
- data
- format
properties:
data:
$ref: '#/components/schemas/P2PEData'
format:
$ref: '#/components/schemas/P2PEFormatIDTech'
transactions_authorization_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
apiOptions:
- ALLOWPARTIALAUTH
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
present: 'Y'
clerk:
numericId: 1576
p2pe:
data: >-
02df00801f2e1e00939b252a323232312a2a2a2a2a2a2a2a303030395e4d43322f4455414c20545241434b5e2a2a2a2a2a2a2a2a2a2a3f2a3b323232312a2a2a2a2a2a2a2a303030393d2a2a2a2a2a2a2a2a2a2a3f2aa0744ac45073ef2e516cd6b1111c990effb75fbe6521e40be763593c385c6c7cdcd41ffbabb59cd6c999bfe636dff9ef8408e38906db0fdc7497df96a3e8f564b9a4e1bd802f326eb9848b447512384700000000000000000000000000000000000000000000000000000000000000000000000000000000383237543839303939306299495001000000000521d503
format: '02'
transaction:
invoice: '192029'
notes: Transaction notes are added here
hotel:
estimatedDays: 5
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
AccountType:
type: string
example: '00'
minLength: 2
maxLength: 2
description: >
The type of financial institution account.
**Conditional: Must be sent if processing Interac debit EMV contact
transactions**
| Value | Description |
|-------|--------------|
| 00 | Chequing |
| 01 | Savings |
TransactionPinBlock:
type: string
maxLength: 16
example: '1234567890123456'
description: >
Encrypted PIN data received from a POS-controlled PIN pad (not
controlled by the UTG).
TransactionPinKsn:
type: string
maxLength: 20
example: FFFF4950010293927772
description: >
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 leading ‘F’s.
TransactionPin:
type: object
writeOnly: true
description: >
**Conditional: Include in the request for PIN debit and EMV Online PIN
transactions. This object does not apply to UTG-controlled devices.**
properties:
block:
$ref: '#/components/schemas/TransactionPinBlock'
ksn:
$ref: '#/components/schemas/TransactionPinKsn'
DeviceModel:
type: string
maxLength: 50
example: A800
description: |
**Conditional: Required when using a non-UTG-controlled device.**
Specifies the model of the device.
DeviceCapabilityContactlessEMV:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 for all transactions on the device, then the value
'N' should be sent.
DeviceCapabilityContactlessMSR:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 disabled for all transactions on the device, then the value
'N' should be sent.
DeviceCapabilityEMV:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 transactions on the device, then the value 'N' should
be sent.
DeviceCapabilityManualEntry:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 all transactions on the device, then the value
'N' should be sent.
DeviceCapabilityMagstripe:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 transactions on the device, then the value 'N' should
be sent.
DeviceCapabilityPIN:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 currently disabled for all transactions on the device, then
the value 'N' should be sent.
DeviceCapabilityQuickChip:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 all transactions on the device, then the value 'N' should
be sent.
DeviceCapabilitySignature:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 for all transactions on the device, then the value
'N' should be sent.
DeviceCapability:
type: object
writeOnly: true
description: |
**Conditional: Required when using a non-UTG-controlled device.**
properties:
contactlessEMV:
$ref: '#/components/schemas/DeviceCapabilityContactlessEMV'
contactlessMSR:
$ref: '#/components/schemas/DeviceCapabilityContactlessMSR'
EMV:
$ref: '#/components/schemas/DeviceCapabilityEMV'
manualEntry:
$ref: '#/components/schemas/DeviceCapabilityManualEntry'
magstripe:
$ref: '#/components/schemas/DeviceCapabilityMagstripe'
PIN:
$ref: '#/components/schemas/DeviceCapabilityPIN'
quickChip:
$ref: '#/components/schemas/DeviceCapabilityQuickChip'
signature:
$ref: '#/components/schemas/DeviceCapabilitySignature'
P2PEFormatType05:
type: string
minLength: 2
maxLength: 2
enum:
- '05'
example: '05'
description: >
Classifies the type of payment device being used for P2PE.
Value|Description
-----|-----------
05 | [Shift4 TDES DUKPT
format](/guides/core-concepts/p2pe-format#tdes-dukpt---format-05)
P2PEKSN:
type: string
maxLength: 20
example: '6299495001100E200041'
description: |
The key serial number which was used to encrypt the P2PE data.
P2PEType05TDESDUKPTEMV:
type: object
description: >
See [P2PE Format 05 TDES
DUKPT](/guides/core-concepts/p2pe-format#tdes-dukpt---format-05) for
more information.
required:
- format
- ksn
properties:
format:
$ref: '#/components/schemas/P2PEFormatType05'
ksn:
$ref: '#/components/schemas/P2PEKSN'
EMVEmptyCandidateList:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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 field is not sent, a value of 'N' is assumed.
EMVTlvData:
type: string
writeOnly: true
example: >-
4F07A0000000041010500A4D61737465724361726457203CCEB572BE7DD0A38E62E6BD70E3DAACE9B46BD3BF65E188E7D8D68D2178DE1A5A10B1794BAC083B08F0A1444F189A5493255F201A546573742F4361726420303920202020202020202020202020205F24032512315F25031511015F2D02656E5F3401018407A0000000041010950508200000009B02C8009F02060000000004449F03060000000000009F34031E03009F3704C5BF918D9F390105
description: >
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 entire TLV string encrypted and the encrypted data
will be in a TLV format using the same tag. For example, tag 5A would
look like the following:
- Encrypted: 5A103737DA95D8062F647A0FF747CC496570
- Decrypted: 5A084761739001010010
EMV:
type: object
writeOnly: true
description: >
**Conditional: Required when processing an EMV transaction without using
a UTG.**
required:
- tlvData
properties:
emptyCandidateList:
$ref: '#/components/schemas/EMVEmptyCandidateList'
tlvData:
$ref: '#/components/schemas/EMVTlvData'
CardEntryMode:
type: string
minLength: 1
maxLength: 1
enum:
- '1'
- '2'
- C
- E
- M
- Q
- R
example: M
description: >
**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 Transaction Gateway® (UTG®)-controlled PIN pad, this field
should be left blank or not sent in a request; the UTG will capture the
card entry mode and return it in the response. When P2PE data is being
sent from a non-UTG controlled device, this field is not needed**
The method used to capture a payment card in an authorization/sale
request.
Value|Description
-----|-----------
1 | Track 1 Only or Dual Track (Track 1 & 2)
2 | Track 2 Only
C | EMV Contactless via card or mobile wallet
E | EMV Chip
M | Manual Entry
Q | QR Code
R | Contactless MSD
transactions_authorization_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMV'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
format: '05'
ksn: FFFF49517300010000CA
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
EMVFallback:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
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.
EMVFallbackOnly:
type: object
description: |
**Conditional: Required when processing an EMV fallback transaction.**
properties:
fallback:
$ref: '#/components/schemas/EMVFallback'
P2PEType05TDESDUKPTMSR:
type: object
description: >
See [P2PE Format 05 TDES
DUKPT](/guides/core-concepts/p2pe-format#tdes-dukpt---format-05) for
more information.
required:
- data
- format
- ksn
properties:
data:
$ref: '#/components/schemas/P2PEData'
format:
$ref: '#/components/schemas/P2PEFormatType05'
ksn:
$ref: '#/components/schemas/P2PEKSN'
transactions_authorization_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMVFallbackOnly'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
notes: Transaction notes are added here
hotel:
estimatedDays: 5
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
P2PEDataOnguardSDEEMV:
type: string
maxLength: 2048
example: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
description: >
EMV TLV Data for tags 5A and 57 encrypted with AES 256 DUKPT. Contains
the following information, separated by colons:
Value | Description
----------------|------------
ksn | The key serial number (24 byte hex)
track indicator | `E` indicating EMV TLV Data
length | The length of the encrypted data
encrypted data | Encrypted TLV containing tags 57 and 5A
Example:
`FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9`
P2PEFormatOnguardSDE:
type: string
minLength: 2
maxLength: 2
enum:
- '03'
example: '03'
description: |
Classifies the type of payment device being used for P2PE.
Value|Description
-----|-----------
03 | Ingenico Onguard SDE Format
P2PEType03OnguardSDEEMV:
type: object
description: >
See [P2PE Format 03 Ingenico On-Guard
SDE](/guides/core-concepts/p2pe-format#ingenico-on-guard-sde---format-03)
for more information.
required:
- data
- format
properties:
data:
$ref: '#/components/schemas/P2PEDataOnguardSDEEMV'
format:
$ref: '#/components/schemas/P2PEFormatOnguardSDE'
EMVTlvDataOnguardSDE:
type: string
writeOnly: true
example: >-
4F07A0000000041010500A4D6173746572436172645F201A546573742F4361726420303920202020202020202020202020205F24032512315F25031511015F2D02656E5F3401018407A0000000041010950508200000009B02C8009F02060000000004449F03060000000000009F34031E03009F3704C5BF918D9F390105
description: >
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.
EMVOnguardSDE:
type: object
writeOnly: true
description: >
**Conditional: Required when processing an EMV transaction without using
a UTG.**
required:
- tlvData
properties:
emptyCandidateList:
$ref: '#/components/schemas/EMVEmptyCandidateList'
tlvData:
$ref: '#/components/schemas/EMVTlvDataOnguardSDE'
transactions_authorization_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
$ref: '#/components/schemas/EMVOnguardSDE'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: 2023-124-13T09:18:23.283-07:00
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
P2PEDataOnguardSDEMSR:
type: string
maxLength: 2048
example: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
description: >
Track information encrypted with AES 256 DUKPT. Contains the following
information, separated by colons:
|Value | Description
|----------------|------------
|ksn | The key serial number (24 byte hex)
|track indicator | `1` = track 1 only
`2` = track 2 only
`3` =
manual entry
`4` = dual track
|length | The length of the encrypted data
|encrypted data | Encrypted track/manual entry data
Dual Track Example:
`FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270`
Manual entry Example:
`FFFF495A0000000200000006:3:0032:E394820DB97AF927B9B5E05F356750BBF5DFCCB3BC18B87E8FC3C9BC596229E7`
P2PEType03OnguardSDEMSR:
type: object
description: >
See [P2PE Format 03 Ingenico On-Guard
SDE](/guides/core-concepts/p2pe-format#ingenico-on-guard-sde---format-03)
for more information.
required:
- data
- format
properties:
data:
$ref: '#/components/schemas/P2PEDataOnguardSDEMSR'
format:
$ref: '#/components/schemas/P2PEFormatOnguardSDE'
transactions_authorization_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMVFallbackOnly'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: 2023-124-13T09:18:23.283-07:00
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
notes: Transaction notes are added here
hotel:
estimatedDays: 5
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
CardNumber:
type: string
maxLength: 32
example: '4321000000001119'
description: >
The payment card number entered in an initial authorization/sale
request. This field will always be masked when returned in a response.
transactions_authorization_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- customer
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
exemptionAction:
$ref: '#/components/schemas/TransactionExemptionAction'
exemptionReason:
$ref: '#/components/schemas/TransactionExemptionReason'
card:
type: object
required:
- entryMode
- number
- expirationDate
- securityCode
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
entryMode:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: >
The method used to capture a payment card in an
authorization/sale request.
Value|Description
-----|-----------
M | Manual Entry
present:
$ref: '#/components/schemas/CardPresent'
customer:
type: object
required:
- postalCode
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
present: 'N'
securityCode:
indicator: '1'
value: '333'
type: VS
clerk:
numericId: 1576
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
ExtendedCardData:
type: string
maxLength: 4096
example: >-
eyJ0aHJlZURTZWN1cmUiOnsiY3J5cHRvZ3JhbSIgOiAiRUhYRjhoZmpBaVhOQUtJQUFBQldYQUFERWhFUiIsInNlY3VyaXR5TGV2ZWxJbmRpY2F0b3IiIDogIjI0MSJ9LCJjYXJkQnJhbmRUb2tlbiI6eyJyZXF1ZXN0b3JJZCIgOiAiMDEyMzQ1Njc4OTAxIn19
description: >
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 via i4Go.
transactions_authorization_3dsecurei4Go:
title: Wallet/3D Secure Using i4Go
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- extendedCardData
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
extendedCardData:
$ref: '#/components/schemas/ExtendedCardData'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
extendedCardData: >-
eyJjYXJkQnJhbmRUb2tlbiI6eyJyZXF1ZXN0b3JJZCI6IjA0MDAxMDAzMDI3MyJ9LCJ0aHJlZURTZWN1cmUiOnsicHJvZ3JhbVByb3RvY29sIjoxLCJlY29tbUluZGljYXRvciI6NywieGlkIjoiRkU4OTRBN0NDNzI3NDVCRTIyRThBRkMzNjE2OUM2NUI5QkIwMjIxM0NGMTFBNDAzMTI0MjBDNUQ0MDU0RDY5QyIsImNyeXB0b2dyYW0iOiJCRC91UWZVQU9mMythTVVDbHV0eE1BQUNBQUE9Iiwic2VjdXJpdHlMZXZlbEluZGljYXRvciI6MjQxLCJhdXRoZW50aWNhdGlvblNvdXJjZSI6MSwid2FsbGV0SUQiOjEwM319
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
ThreeDSecureCryptogram:
type: string
example: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
maxLength: 80
description: |
Ecommerce Cryptogram information
ThreeDSecureEcommIndicator:
type: string
enum:
- '5'
- '6'
- '7'
example: '5'
maxLength: 1
description: >
E-commerce Indicator as provided by the application generating the
cryptogram.
Value| Description
-----|------------
5 | Secure electronic commerce transaction
6 | Authentication attempted, non-authenticated security transaction
7 | Non-authenticated Security Transaction
ThreeDSecureSecurityLevelIndicator:
type: string
example: '241'
maxLength: 3
description: >
This field contains the electronic commerce indicators representing the
security level and cardholder authentication associated with the
transaction. This field must be present in all Auth Request messages for
electronic commerce transactions.
First 2 positions:
Value| Description
-----|------------
21 | Channel encryption; cardholder certificate not used (preferred
value for Mastercard SecureCode, Identity Check, and all eCommerce)
22 | Masterpass-generated transaction
24 | Digital Secure Remote Payment (DSRP) with UCAF Data
91 | No security protocol; cardholder certificate not used
Third position:
Value| Description
-----|------------
0 | UCAF Data collection is not supported by the merchant; or the
merchant supports SecureCode or Identity Check but has chosen not to
undertake it on this transaction; or authentication failed and merchant
desires to proceed with the transaction.
1 | UCAF data collection is supported by the merchant and UCAF data
must be present and contain an attempt AAV
2 | UCAF data collection is supported by the merchant and UCAF data
must be present and contain a fully authenticated AAV
3 | UCAF data collection is supported by the merchant and UCAF
(Mastercard assigned Static Accountholder Authentication Value) data
must be present. Note that the UCAF Data is required for Static AAV
transactions. This value identifies participation in one of the
following programs: Maestro Recurring Payments Program, Mastercard
Utility Payment Program, Maestro Static AAV for Masterpass
4 | Merchant has chosen to share authentication data within
authorization; UCAF data collection not supported
ThreeDSecureProgramProtocol:
type: string
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
example: '2'
maxLength: 1
description: >
Indicates the 3D Secure protocol version.
**Required when processing for merchants in the United States. For
merchants outside of the United States use the `threeDSecure.version`
field instead.**
|Value| Description
|-----|----------------------------|
| 1 | EMV 3-D Secure Version 2.1 |
| 2 | EMV 3-D Secure Version 2.2 |
| 3 | EMV 3-D Secure Version 2.3 |
| 4 | EMV 3-D Secure Version 2.4 |
| 5 | EMV 3-D Secure Version 2.5 |
| 6 | EMV 3-D Secure Version 2.6 |
| 7 | EMV 3-D Secure Version 2.7 |
| 8 | EMV 3-D Secure Version 2.8 |
| 9 | EMV 3-D Secure Version 2.9 |
ThreeDSecureVersion:
type: string
enum:
- '2.0'
- 2.1.0
- 2.2.0
example: '2'
maxLength: 1
description: >
Indicates the 3D Secure protocol version.
**Required when processing for merchants outside of the United States.
For merchants in the United States use the
`threeDSecure.programProtocol` field instead.**
ThreeDSecureDirectoryServerTranId:
type: string
example: 07e54000-2721-4df9-aa51-04fa0e079aa8
maxLength: 36
description: >
The Directory Server Transaction ID is generated by the EMV 3DS
Mastercard Directory Server during the authentication transaction and
passed back to the merchant with the authentication results. This field
allows the merchant to pass the Directory Server Transaction ID during
authorization in order to link authentication and authorization data for
Mastercard Identity Check.
ThreeDSecureAuthenticationSource:
type: string
enum:
- '2'
writeOnly: true
example: '2'
minLength: 1
maxLength: 1
description: |
Authentication Source for the cryptogram value.
Value| Description
-----|------------
2 | ACS
ThreeDSecureCAVVResult:
type: string
example: '2'
maxLength: 1
description: >
This is a response field that contains 3–D Secure Electronic Commerce
Transaction Response Code that contains the Visa Cardholder
Authentication Verification Value (CAVV) or the American Express
Verification Value (AEVV) results code.
Value | Description
------|------------
Blank | CAVV not present or CAVV not verified, issuer has not selected
CAVV verification option
0 | CAVV could not be verified or CAVV data was not provided when
expected
1 | CAVV failed verification-cardholder authentication
2 | CAVV passed verification-cardholder authentication
3 | CAVV passed verification-attempted authentication. A 3-D Secure
Authentication Results Code value of 07 from the Issuer Attempts Server
indicates that authentication was attempted. Issuer attempts CAVV key
was used to generate the CAVV.
4 | CAVV failed verification-attempted authentication. A 3-D Secure
Authentication Results Code value of 07 from the Issuer Attempts Server
indicates authentication was attempted. Issuer attempts CAVV key was
used to generate the CAVV.
5 | Reserved for future use
6 | Reserved for future use
7 | CAVV failed verification-attempted authentication. A 3-D Secure
Authentication Results Code value of 07 from Visa Attempts Service
indicates that an authentication attempt was performed. Visa attempts
CAVV key was used to generate the CAVV. Note that Results Code value of
7 is also valid for American Express SafeKey responses, including those
for non-U.S. cards.
8 | CAVV passed verification-attempted authentication. A 3-D Secure
Authentication Results Code value of 07 from Visa Attempts Service
indicates that an authentication attempt was performed. Visa attempts
CAVV key was used to generate the CAVV. Note that Results Code value of
8 is also valid for American Express SafeKey responses, including those
for non-U.S. cards.
9 | CAVV failed verification-attempted authentication. A 3-D Secure
Authentication Results Code value of 08 from Visa Attempts Service
indicates that an authentication attempt was performed when the Issuer
ACS was not available. Visa attempts CAVV key was used to generate the
CAVV. Note that Results Code value of 9 is also for American Express
SafeKey responses, including those for non-U.S. cards.
A | CAVV passed verification-attempted authentication. A 3-D Secure
Authentication Results Code value of 08 from Visa Attempts Service
indicates that an authentication attempt was performed when the Issuer
ACS was not available. Visa attempts CAVV key was used to generate the
CAVV. Note that Results Code value of A is also for American Express
SafeKey responses, including those for non-U.S. cards.
B | CAVV passed verification-attempted authentication, no liability
shift. Only Visa generates this code; issuers do not.
C | CAVV was not verified-attempted authentication (for Visa use
only). If 3-D Secure Authentication Results Code value is 07 in the CAVV
and the issuer did not return a CAVV results code in the authorization
response, or CAVV results code = 0 in the response message and the CAVV
encryption keys do not exist in V.I.P., V.I.P. sets the value to C in
CAVV results code.
D | CAVV was not verified-cardholder authentication (for Visa use
only). If 3-D Secure Authentication Results Code value is 00 in the CAVV
and the issuer did not return a CAVV results code in the authorization
response, or CAVV results code = 0 in the response message and the CAVV
encryption keys do not exist in V.I.P., V.I.P. sets the value to D in
CAVV results code.
U | CAVV Unchecked [AX]
ThreeDSecureAuthenticationValue:
type: string
writeOnly: true
example: Y2FyZGluYWxjb21tZXJjZWF1dGg=
maxLength: 80
description: >
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 (3DS) validation for token-based card-on-file,
e-commerce, and application-based e-commerce transactions. Visa will
allow two separate cryptograms in the authorization; one for token
validation (TAVV) and one for cardholder authentication (Cardholder
Authentication Verification Value).
ThreeDSecureTAVVResult:
type: string
example: '2'
maxLength: 1
description: |
TAVVResult (Visa token authentication verification value).
Value| Description
-----|------------
1 | TAVV cryptogram failed validation
2 | TAVV cryptogram passed validation
ThreeDSecureWalletID:
type: string
writeOnly: true
example: '103'
maxLength: 3
description: >
Provides information about transactions initiated through the Masterpass
Online platform or through the Mastercard Digital Enablement Service
(MDES) and identifies the Wallet Provider.
Value| Description
-----|------------
103 | Apple Pay
216 | Google Pay
217 | Samsung Pay
327 | Merchant tokenization program
ThreeDSecure:
type: object
required:
- cryptogram
- ecommIndicator
- securityLevelIndicator
- directoryServerTranId
- authenticationSource
- programProtocol
- version
properties:
cryptogram:
$ref: '#/components/schemas/ThreeDSecureCryptogram'
ecommIndicator:
$ref: '#/components/schemas/ThreeDSecureEcommIndicator'
securityLevelIndicator:
$ref: '#/components/schemas/ThreeDSecureSecurityLevelIndicator'
programProtocol:
$ref: '#/components/schemas/ThreeDSecureProgramProtocol'
version:
$ref: '#/components/schemas/ThreeDSecureVersion'
directoryServerTranId:
$ref: '#/components/schemas/ThreeDSecureDirectoryServerTranId'
authenticationSource:
$ref: '#/components/schemas/ThreeDSecureAuthenticationSource'
cavvResult:
$ref: '#/components/schemas/ThreeDSecureCAVVResult'
authenticationValue:
$ref: '#/components/schemas/ThreeDSecureAuthenticationValue'
tavvResult:
$ref: '#/components/schemas/ThreeDSecureTAVVResult'
walletID:
$ref: '#/components/schemas/ThreeDSecureWalletID'
CardBrandTokenRequestorID:
type: string
writeOnly: true
example: '12345678901'
maxLength: 12
description: >
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 token vault.
For Apple Pay requests, this is mapped from the
`token.paymentData.data.deviceManufacturerIdentifier` field
CardBrandTokenAssuranceLevel:
type: string
readOnly: true
example: '01'
maxLength: 2
description: >
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-to-PAN/cardholder binding.
CardBrandTokenPANLast4:
type: string
readOnly: true
example: '6810'
maxLength: 4
description: >
This is a response field that contains 4 characters that represent the
last 4 digits of the actual cardholder PAN.
CardBrandTokenAcctRangeStatus:
type: string
readOnly: true
example: 'N'
maxLength: 1
description: >
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.
Value| Description
-----|------------
space| Blank/no value
R | Regulated
N | Non-Regulated
CardBrandToken:
type: object
required:
- requestorId
properties:
requestorId:
$ref: '#/components/schemas/CardBrandTokenRequestorID'
assuranceLevel:
$ref: '#/components/schemas/CardBrandTokenAssuranceLevel'
panLast4:
$ref: '#/components/schemas/CardBrandTokenPANLast4'
acctRangeStatus:
$ref: '#/components/schemas/CardBrandTokenAcctRangeStatus'
transactions_authorization_3dsecurecardnumber:
title: 3D Secure Using Card Number
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecure'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
programProtocol: '2'
authenticationSource: '2'
cavvResult: '2'
authenticationValue: Y2FyZGluYWxjb21tZXJjZWF1dGg=
tavvResult: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
walletID: '327'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_authorization_3dsecuretoken_gtv:
title: 3D Secure Using GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecure'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
programProtocol: '2'
authenticationSource: '2'
cavvResult: '2'
authenticationValue: Y2FyZGluYWxjb21tZXJjZWF1dGg=
tavvResult: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
walletID: '327'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_authorization_3dsecuretoken_legacy:
title: 3D Secure Using Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecure'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
programProtocol: '2'
authenticationSource: '2'
cavvResult: '2'
authenticationValue: Y2FyZGluYWxjb21tZXJjZWF1dGg=
tavvResult: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
walletID: '327'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
ThreeDSecureAuthenticationSourceWallet:
type: string
enum:
- '1'
writeOnly: true
example: '1'
minLength: 1
maxLength: 1
description: |
Authentication Source for the cryptogram value.
Value| Description
-----|------------
1 | inApp
ThreeDSecureCryptogramWallet:
type: string
example: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
maxLength: 80
description: >
Ecommerce Cryptogram information
For Apple Pay transactions this is mapped from the
`token.paymentData.data.paymentData.onlinePaymentCryptogram` field.
For Google Pay transactions this is mapped from the
`paymentMethodDetails.cryptogram` field.
For Samsung Pay transactions this is mapped from the
`3DS.data.cryptogram` field.
ThreeDSecureEcommIndicatorWallet:
type: string
enum:
- '5'
- '6'
- '7'
example: '5'
maxLength: 1
description: >
E-commerce Indicator as provided by the application generating the
cryptogram.
Value| Description
-----|------------
5 | Secure electronic commerce transaction
6 | Authentication attempted, non-authenticated security transaction
7 | Non-authenticated Security Transaction
For Apple Pay transactions this is mapped from the
`token.paymentData.data.paymentData.eciIndicator` field.
For Google Pay transactions this is mapped from the
`paymentMethodDetails.eciIndicator` field.
For Samsung Pay transactions this is mapped from the
`3DS.data.eci_indicator` field.
ThreeDSecureSecurityLevelIndicatorWallet:
type: string
writeOnly: true
example: '241'
maxLength: 3
description: >
This field contains the electronic commerce indicators representing the
security level and cardholder authentication associated with the
transaction. This field must be present in all Auth Request messages for
electronic commerce transactions.
For Apple Pay and Google Pay transactions this value should be sent as
`241`
First 2 positions:
Value| Description
-----|------------
24 | Digital Secure Remote Payment (DSRP) with UCAF Data
Third position:
Value| Description
-----|------------
1 | UCAF data collection is supported by the merchant and UCAF data
must be present and contain an attempt AAV
ThreeDSecureXIDWallet:
type: string
example: hq0BA9EAAAGXIJcAGAAAABKU0+s=
maxLength: 80
description: >
Unique tracking number set by the merchant and sent to the Issuer
Authentication/Service in the Authentication Request message.
For Apple Pay transactions this is mapped from the
`token.transactionIdentifier` field.
For Google Pay transactions this is mapped from the `messageId` field.
For Samsung Pay transactions this is mapped from the `3DS.data.utc`
field.
ThreeDSecureProgramProtocolWallet:
type: string
enum:
- '1'
- '2'
writeOnly: true
example: '2'
maxLength: 1
description: >
Program Protocol must be provided by the merchant if they are
participating in Mastercard 3D Secure and have previously authenticated
using the Mastercard Identity Check or SecureCode program. It identifies
the type of 3D-Secure program.
Value| Description
-----|------------
2 | EMV 3-D Secure [3DS 2.0]
For Apple Pay and Google Pay transactions this should always be sent as
`2`.
ThreeDSecureWallet:
type: object
properties:
authenticationSource:
$ref: '#/components/schemas/ThreeDSecureAuthenticationSourceWallet'
cryptogram:
$ref: '#/components/schemas/ThreeDSecureCryptogramWallet'
ecommIndicator:
$ref: '#/components/schemas/ThreeDSecureEcommIndicatorWallet'
securityLevelIndicator:
$ref: '#/components/schemas/ThreeDSecureSecurityLevelIndicatorWallet'
xid:
$ref: '#/components/schemas/ThreeDSecureXIDWallet'
programProtocol:
$ref: '#/components/schemas/ThreeDSecureProgramProtocolWallet'
walletID:
$ref: '#/components/schemas/ThreeDSecureWalletID'
transactions_authorization_applepay:
title: Apple Pay
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecureWallet'
cardBrandToken:
type: object
properties:
requestorId:
$ref: '#/components/schemas/CardBrandTokenRequestorID'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
authenticationSource: '1'
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
walletID: '103'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_authorization_googlepay:
title: Google Pay
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecureWallet'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
authenticationSource: '1'
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
walletID: '216'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
AmountTotalIncremental:
type: number
maxLength: 14
example: 160
description: >
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 processing an incremental authorization the high balance amount
must be sent. For example, if the original authorization is $100 and
the transaction is being incremented by $60 then the total amount would
be sent as $160.
AmountIncremental:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested. All other fields are for informational purposes and
must also be included in the `total` field. For example, a purchase of
$100 with a $20 tip and $8 tax would be `128.00` in the `total` field,
`20.00` in the `tip` field and `8.00` in the `tax` field.
Note: For merchants that are configured to allow multiple currencies,
the amount fields can specify up to three decimal places. However, the
number of decimal places can not exceed the number allowed for the
specified currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
required:
- total
- tax
properties:
total:
$ref: '#/components/schemas/AmountTotalIncremental'
tax:
$ref: '#/components/schemas/AmountTax'
taxIndicator:
$ref: '#/components/schemas/AmountTaxIndicator'
tip:
$ref: '#/components/schemas/AmountTip'
surcharge:
$ref: '#/components/schemas/AmountSurcharge'
TransactionInvoiceIncremental:
type: string
maxLength: 10
example: '0510093358'
description: >
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 batch in Shift4's Gateway. For incremental
authorizations the invoice must match the invoice from the original
authorization request.
**Note: Although the invoice number is sent as a JSON string it is a
numeric value. No alpha characters are allowed.**
transactions_authorization_incremental:
title: Incremental
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountIncremental'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceIncremental'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
authType:
$ref: '#/components/schemas/TransactionAuthType'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
mPos:
$ref: '#/components/schemas/mPOS'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
invoice: '192029'
CardExpirationDateResponse:
type: integer
minLength: 3
maxLength: 4
format: MMYY
example: 1230
description: >
**Conditional: Requires API Option "RETURNEXPDATE".**
Card expiration date in MMYY format. This value will only be populated
if "RETURNEXPDATE" is included in the `apiOptions` array.
CardLevelResult:
type: string
readOnly: true
example: 2C
minLength: 2
maxLength: 2
description: >
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 Level
Results]/guides/appendices/card-level-results) for a complete list of
values.
CardMaskedNumber:
type: string
maxLength: 32
example: XXXXXXXXXXXX1119
description: |
The card number field will always be masked when returned in a response.
CardTypeResp:
type: string
enum:
- AX
- AP
- BC
- CI
- DB
- GC
- JC
- MC
- NS
- PL
- SC
- VS
- WP
- YC
example: VS
description: >
An abbreviation used to specify the type of card that was used when
processing a transaction.
Value| Description
-----|------------
AX | American Express
AP | Alipay
BC | Backed Card
CI | Citgo
DB | Debit card
GC | Gift Card
JC | JCB
MC | Mastercard
NS | Discover/JCB/Novus
PL | Private Label
SC | Sears Canada
VS | Visa
WP | WeChat Pay
YC | IT’S YOUR CARD
BalanceAmount:
type: number
readOnly: true
maxLength: 14
example: 24.33
description: >
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 stored value card.
CardBalance:
type: object
readOnly: true
properties:
amount:
$ref: '#/components/schemas/BalanceAmount'
CardSecurityCodeResponse:
type: object
description: |
**Conditional: Returned if card.securityCode was sent in the request.**
properties:
result:
$ref: '#/components/schemas/CardSecurityCodeResult'
valid:
$ref: '#/components/schemas/CardSecurityCodeValid'
CardTokenResponse:
type: object
properties:
value:
$ref: '#/components/schemas/CardTokenValue'
CardDebitType:
type: string
enum:
- girocard
- eftpos
- Interac
- Visa Interlink
- Visa US Common Debit
- Maestro Int'l
- Maestro US Common Debit
- Amex US Common Debit
- Discover US Common Debit
- DNA Debit
- UnionPay
example: girocard
description: >
Specifies the type of debit card that was used when processing a
transaction.
Only returned if `card.type` = `DB`
CardResponse:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
levelResult:
$ref: '#/components/schemas/CardLevelResult'
number:
$ref: '#/components/schemas/CardMaskedNumber'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeResp'
balance:
$ref: '#/components/schemas/CardBalance'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeResponse'
token:
$ref: '#/components/schemas/CardTokenResponse'
debitType:
$ref: '#/components/schemas/CardDebitType'
CustomerFirstNameResponse:
type: string
maxLength: 30
example: John
description: >
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 cardholder name.
CustomerLastNameResponse:
type: string
maxLength: 30
example: Smith
description: >
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 name.
ClerkResponse:
type: object
properties:
numericId:
$ref: '#/components/schemas/ClerkNumericId'
DCCTransactionResponse:
type: object
description: >
Object containing Dynamic Currency Conversion (DCC) information.
**Conditional: Returned in the response if DCC was offered during the
payment flow of a UTG/Commerce Engine controlled device or if the `dcc`
object was included in the request.**
required:
- rateTimeStamp
- currencyCode
- foreignAmount
- conversionRate
- marginPercentage
- currencyMinorUnits
- transactionId
- conversionIndicator
properties:
rateTimeStamp:
$ref: '#/components/schemas/DCCRateTimeStamp'
currencyCode:
$ref: '#/components/schemas/DCCCurrencyCode'
foreignAmount:
$ref: '#/components/schemas/DCCForeignAmount'
conversionRate:
$ref: '#/components/schemas/DCCConversionRate'
marginPercentage:
$ref: '#/components/schemas/DCCMarginPercentage'
currencyMinorUnits:
$ref: '#/components/schemas/DCCCurrencyMinorUnits'
transactionId:
$ref: '#/components/schemas/DCCTransactionID'
conversionIndicator:
$ref: '#/components/schemas/DCCConversionIndicator'
diffOverEcb:
$ref: '#/components/schemas/DCCDiffOverECB'
marginOverEcb:
$ref: '#/components/schemas/DCCMarginOverECB'
displayUnit:
$ref: '#/components/schemas/DCCDisplayUnit'
provider:
$ref: '#/components/schemas/DCCProvider'
DeviceTerminalIdRequired:
type: string
maxLength: 32
example: '1742'
description: >
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.
DeviceOnlyTIDResponse:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
EMVTlvDataResponse:
type: string
readOnly: true
example: 910A0102030405060708090A
description: |
This field will contain the EMV response tags in standard TLV format.
EMVResponse:
type: object
description: |
Returned when processing a full EMV or EMV fallback transaction.
properties:
fallback:
$ref: '#/components/schemas/EMVFallback'
tlvData:
$ref: '#/components/schemas/EMVTlvDataResponse'
Receipt:
type: object
properties:
key:
type: string
maxLength: 100
example: ApplicationIdentifier
description: >
The identifier the interface vendor can use to programmatically
determine where to print a specific value.
printName:
type: string
maxLength: 100
example: AID
description: >
The label that relates to the `printValue` field. When present in
the response, this must be printed to the left of the `printValue`.
printValue:
type: string
maxLength: 350
example: AID
description: >
The value that relates to the `printName` field. This must be
printed to the right of the `printName`.
ReceiptArray:
type: array
items:
$ref: '#/components/schemas/Receipt'
example:
- key: ApplicationIdentifier
printName: AID
printValue: A0000000031010
- key: TerminalVerificationResults
printName: TVR
printValue: '8000'
- key: IssuerApplicationData
printName: IAD
printValue: 06010A03A40002
- key: TransactionStatusIndicator
printName: TSI
printValue: E800
- key: AuthorizationResponseCode
printName: ARC
printValue: '00'
- key: TransactionCurrencyCode
printValue: USD$
- key: ApplicationLabel
printValue: CREDITO DE VISA
description: |
Array of receipt key/value pairs that should be printed on the receipt.
MerchantMID:
type: number
maxLength: 10
example: 15877
description: |
The merchant ID associated with the merchant account.
MerchantName:
type: string
maxLength: 22
example: Merchant XYZ
description: |
The merchant’s business name as configured with Shift4.
MerchantResponse:
type: object
properties:
mid:
$ref: '#/components/schemas/MerchantMID'
name:
$ref: '#/components/schemas/MerchantName'
SignatureData:
type: string
maxLength: 4194304
example: >-
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
description: >
The base64-encoded data sent when a signature is captured as a Portable
Network Graphics (PNG) file.
SignatureFormat:
type: string
minLength: 1
maxLength: 1
example: P
enum:
- P
description: |
The data format the signature data will be in. "P" for PNG format.
Signature:
type: object
properties:
data:
$ref: '#/components/schemas/SignatureData'
format:
$ref: '#/components/schemas/SignatureFormat'
SurchargeResult:
type: string
enum:
- P
- F
description: |
Result of the surcharge eligibility check:
| Value | Description |
|-------|---------------------------------------------|
| P | Pass - Card is eligible for surcharging |
| F | Fail - Card is not eligible for surcharging |
RulesTransactionId:
type: string
readOnly: true
maxLength: 20
description: |
Transaction ID for the rule check
SurchargeTransactionResponse:
type: object
description: >
Object containing surcharge information.
**Conditional: Returned in the response if Surcharge was applied during
the payment flow of a Commerce Engine controlled device.**
properties:
result:
$ref: '#/components/schemas/SurchargeResult'
transactionId:
$ref: '#/components/schemas/RulesTransactionId'
percentage:
$ref: '#/components/schemas/SurchargePercentage'
TransactionAuthorizationCode:
type: string
maxLength: 6
example: '198399'
description: >
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 a referral response, it is also specified in [Manual
Sale](/apis/payments-platform-rest/openapi/transactions/manualsale)
requests.
TransactionAuthSource:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: E
enum:
- E
- O
- A
- F
description: >
In a response, a code returned by the processor to indicate which host
issued the response.
Value | Description
-------|----------------------------
E | Engine (Online)
O | Offline
A | APM (Online)
F | Payment Platform (Online)
HostResponseReasonCode:
type: string
maxLength: 3
example: '04'
description: >
Returns a response code from the host.
Value |Category|Description
------|--------|-----------
04 | 1 | Pick Up Card
07 | 1 | Pick Up Card, Special Condition
12 | 1 | Invalid Transaction
15 | 1 | No Such Issuer
41 | 1 | Lost Card
43 | 1 | Stolen Card
46 | 1 | Closed Account
57 | 1 | Trans. not Permitted to Cardholder
R0 | 1 | Stop Payment Order
R1 | 1 | Revocation of Auth Order
R3 | 1 | Revocation of all Authorization
03 | 2 | Invalid Merchant
19 | 2 | Re-enter Transaction
51 | 2 | Not sufficient funds
59 | 2 | Suspected Fraud
61 | 2 | Exceeds approval amount limit
62 | 2 | Restricted Card (card invalid in region or country)
65 | 2 | Exceeds withdrawal frequency limit
75 | 2 | Allowable number of PIN-entry tried exceeded
78 | 2 | Blocked, first used
86 | 2 | Cannot Verify PIN
91 | 2 | Issuer or switch inoperative
93 | 2 | Transaction cannot be completed - violation of law
96 | 2 | System malfunction
N3 | 2 | Cash service not available
N4 | 2 | Cash request exceeds issuer of approved limit
14 | 3 | Invalid Account
54 | 3 | Expired card or expiration date missing
55 | 3 | PIN incorrect or missing
70 | 3 | PIN data required
82 | 3 | Negative Online CAM, dCVV, iCVV, or CVV results
1A | 3 | Additional customer authentication required
N7 | 3 | Decline for CVV2 Failure
05 | 4 | Do not honor
06 | 4 | General error
08 | 4 | Honor MasterCard with ID
13 | 4 | Invalid amount
21 | 4 | Invalid amount
30 | 4 | Format error
39 | 4 | No credit account
52 | 4 | No checking account
53 | 4 | No savings account
58 | 4 | Transaction not permitted-Terminal
63 | 4 | Security violation
66 | 4 | Card Acceptor call Acquirer’s security dept
67 | 4 | Hard capture (requires ATM pick-up)
68 | 4 | Response received too late
71 | 4 | PIN Not Changed
76 | 4 | Unsolicited reversal
77 | 4 | Invalid Data including AVS failures.
79 | 4 | Already reversed at switch
80 | 4 | No Financial impact
81 | 4 | Cryptographic error
92 | 4 | Unable to route transaction
94 | 4 | Duplicate Transaction
B1 | 4 | Surcharge amount not permitted on debit cards or
EBTfoodstamps
B2 | 4 | Surcharge amount not supported by debit network issuer
CV | 4 | Card Type VerificationError
EA | 4 | Acct Length Err
EB | 4 | Check Digit Err
EC | 4 | CID Format Error
HV | 4 | Hierarchy Verification Error
N0 | 4 | Force STIP
P5 | 4 | PIN Change/Unblock failed
P6 | 4 | New PIN not accepted
Z3 | 4 | Unable to go online; offline-declined
\-38 | 4 | The transaction has been denied by the Gateway because
3D secure Authentication failed. Reason: {}
Note: The “Reason”
part is optional and may appear according to detected reason. |
D2 | 4 | Decline Retry Later
All other, generic declines may be classified as a Category 4 response
code.
HostResponseReasonDescription:
type: string
maxLength: 73
example: Pick Up Card
description: |
Returns a description from the host.
HostResponseReattemptPermission:
type: string
maxLength: 40
example: Reattempt not permitted
description: >
Returns one of the following values:
Value |Description
----------------------------------------|-----------
Reattempt not permitted | Returned when the reasonCode
returned is classified as a Category 1 response code.
Reattempt permitted 15 times in 30 days | Returned when the reasonCode
returned is classified as a Category 2 or Category 3 response code.
Reattempts permitted | Returned when the reasonCode
returned is classified as a Category 4 response code.
HostResponse:
type: object
description: |
Returns the response code detailing why the transaction was declined.
**Notes:**
- **For Visa, the response codes are categorized, detailing how declined transactions may be re-attempted for approval. To avoid fees, merchants are responsible for preventing additional attempts based on the information returned.**
- **Support for this field is dependent on the processor. Our demo environment does not return this field in the response.**
properties:
reasonCode:
$ref: '#/components/schemas/HostResponseReasonCode'
reasonDescription:
$ref: '#/components/schemas/HostResponseReasonDescription'
reattemptPermission:
$ref: '#/components/schemas/HostResponseReattemptPermission'
TransactionResponseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- C
- D
- e
- f
- P
- R
- X
- S
- I
description: >
Code indicating the Shift4 host response.
Value |
Description
| Details
-------|---------------------------------------------------------------------------------------|--------
A |
Approved
| The transaction is approved.
C |
Approved
| The transaction is approved without requiring additional authorization
because it is less than or equal to a ceiling amount. (The ceiling
amount is the original authorization amount multiplied by the tolerance
per the merchant’s settings with Shift4.)
D |
Declined
| The transaction is declined. Note: Shift4 automatically declines
AVS/CSC failures if the [POSHANDLEAVSFAIL Api
Option](/guides/appendices/api-options#poshandleavsfail) was not sent in
the request.
e |
[Error](/guides/appendices/error-codes)
| There is an error condition.
f | [AVS or CSC
failure](/guides/response-handling/understanding-avs-and-csc-verification)|
An AVS or CSC failure has occurred (credit card only). Note: This
value will only be returned if the [POSHANDLEAVSFAIL Api
Option](/guides/appendices/api-options#poshandleavsfail) was sent in the
request.
P | [Partial
approval](/guides/advanced-concepts/partial-approval)
| A partial approval has occurred. Check `amount.total` for the
approved amount.
R | Voice
referral
| The transaction requires a voice referral.
[blank]| Status is
unknown
| The approval status is unknown.
X | Expired
card
| There is an error condition due to the card being expired.
S | SCA Online PIN
required |
The contactless EMV transaction requires strong customer authentication
to continue. The terminal must gather the online PIN if supported by the
device form factor and CVM list then resubmit the transaction request.
I | SCA Interface switch
required | The
contactless EMV transaction requires strong customer authentication to
continue. The terminal must look at the form factor indicator to
determine if the transaction should be declined, switched to EMV contact
or tapped again using CDCVM.
J | Soft decline after exemption
request | Transaction
was soft declined. Returned when requesting an exemption by sending
`transaction.exemptionAction = 02` and the card issuer rejects the
exemption.
TransactionRetrievalReference:
type: string
readOnly: true
maxLength: 12
example: 402F9H0230S0
description: >
Reference retrieval number assigned by the authorizing agency. This
value is printed on some receipts.
TransactionSaleFlag:
type: string
maxLength: 1
readOnly: true
example: S
enum:
- A
- C
- S
description: >
Specifies a transaction is a sale (‘S’) or credit (‘C’). In an [Invoice
Information](/apis/payments-platform-rest/openapi/transactions/getinvoice)
request, an 'A' may be returned to differentiate an authorization from a
sale.
AVSPostalCodeVerified:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Identifies whether the ZIP/postal code was verified (‘Y’) or not (‘N’)
in an AVS check with a processor.
AVSResult:
type: string
minLength: 1
maxLength: 1
example: X
enum:
- A
- E
- G
- 'N'
- R
- S
- U
- W
- X
- 'Y'
- Z
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
description: >
Identifies the response code returned from an Address Verification
System (AVS) check with a processor.
Value|Description
-----|-----------
A | Street address matched, but ZIP/postal code did not match.
E | Error (AVS data is invalid or not allowed).
G | Card issuer does not participate in AVS.
N | No street address and no ZIP/postal code match.
R | Card issuer system is unavailable.
S | AVS service not supported.
U | Street address information unavailable.
W | Street address did not match, but ZIP/postal code matched.
X | Street address and 9-digit ZIP/postal code matched.
Y | Street address and 5-digit ZIP code matched.
Z | Only the ZIP/postal code matched.
1 | Cardholder name and ZIP match
2 | Cardholder name, address, and ZIP match
3 | Cardholder name, address match
4 | Cardholder name matches
5 | Cardholder name incorrect, ZIP matches
6 | Cardholder name incorrect; address and ZIP match
7 | Cardholder name incorrect; address matches
8 | Cardholder name, address, and ZIP do not match
AVSStreetVerified:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Identifies whether the street number was verified (‘Y’) or not (‘N’) in
an AVS check with a processor.
AVSValid:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Simplified AVS result based on the merchant’s list of accepted responses
as configured with Shift4: (‘Y’) if accepted or (‘N’) if not accepted.
AVS:
type: object
readOnly: true
properties:
postalCodeVerified:
$ref: '#/components/schemas/AVSPostalCodeVerified'
result:
$ref: '#/components/schemas/AVSResult'
streetVerified:
$ref: '#/components/schemas/AVSStreetVerified'
valid:
$ref: '#/components/schemas/AVSValid'
RiskTranId:
type: string
example: DDWT0P3LG6LL
description: >
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 transaction within the 3rd party risk provider's UI.
RiskAssessmentDeny:
type: string
enum:
- D
example: D
description: |
This is the answer to the risk assessment.
Value| Description
-----|------------
D | Deny. Try another payment method
RiskResponseDeny:
type: object
description: |
Returned if risk assessment was performed and not approved.
properties:
tranId:
$ref: '#/components/schemas/RiskTranId'
assessment:
$ref: '#/components/schemas/RiskAssessmentDeny'
UniversalTokenValue:
type: string
maxLength: 50
example: 97032276-5944-00000001-16985FD179D
description: |
An identifier for a card or payment account across all Shift4 merchants.
UniversalToken:
type: object
properties:
value:
$ref: '#/components/schemas/UniversalTokenValue'
PaymentAccountReference:
type: string
maxLength: 35
example: 05280D8G7Q04UZBI7NOSPGSURP130
description: >
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 directly with the cardholder's account.
This value enables merchants, acquirers, and payment processors to link
a payment token to a cardholder’s underlying payment account.
LighthouseResponse:
type: object
readOnly: true
properties:
data:
$ref: '#/components/schemas/LighthouseDataResponse'
AmountTaxNotRequired:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested. All other fields are for informational purposes and
must also be included in the `total` field. For example, a purchase of
$100 with a $20 tip and $8 tax would be `128.00` in the `total` field,
`20.00` in the `tip` field and `8.00` in the `tax` field.
required:
- total
properties:
cashback:
$ref: '#/components/schemas/AmountCashback'
iiasAmounts:
$ref: '#/components/schemas/IIASAmountsArray'
surcharge:
$ref: '#/components/schemas/AmountSurcharge'
tax:
$ref: '#/components/schemas/AmountTax'
taxIndicator:
$ref: '#/components/schemas/AmountTaxIndicator'
tip:
$ref: '#/components/schemas/AmountTip'
total:
$ref: '#/components/schemas/AmountTotal'
checkTotal:
$ref: '#/components/schemas/AmountCheckTotal'
AutoDistanceDriven:
type: integer
maxLength: 5
example: 167
description: |
The amount of distance the cardholder drove the vehicle.
AutoDistanceUnit:
type: string
minLength: 1
maxLength: 1
enum:
- M
- K
description: |
The unit of measure that corresponds to the `distanceDriven` field.
Value|Description
-----|-----------
M | Miles
K | Kilometers
AutoLateAdjustment:
type: number
maxLength: 14
example: 35
description: >
A dollar amount for late adjustment fees for an auto rental, including
refueling charges, a surcharge, or charges for damage incurred during
use.
AutoNoShowIndicator:
type: string
minLength: 1
maxLength: 1
example: 'N'
enum:
- 'Y'
- 'N'
description: |
Indicates whether or not the cardholder picked up a reserved rental car.
Value|Description
-----|-----------
Y | customer did not pick up the rental car
N | customer did pick up the rental car
AutoAdditionalChargesGasoline:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
AutoAdditionalChargesLateReturn:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
AutoAdditionalChargesMileage:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
AutoAdditionalChargesOneWayServiceFee:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
AutoAdditionalChargesViolationFee:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
AutoAdditionalCharges:
type: object
description: >
The codes used to provide a reason for additional charges in an auto
rental sale. Multiple codes can be specified for the same transaction.
properties:
gasoline:
$ref: '#/components/schemas/AutoAdditionalChargesGasoline'
lateReturn:
$ref: '#/components/schemas/AutoAdditionalChargesLateReturn'
mileage:
$ref: '#/components/schemas/AutoAdditionalChargesMileage'
oneWayServiceFee:
$ref: '#/components/schemas/AutoAdditionalChargesOneWayServiceFee'
violationFee:
$ref: '#/components/schemas/AutoAdditionalChargesViolationFee'
AutoDriverLicense:
type: string
maxLength: 20
example: '1889624485'
description: |
The cardholder's driver's license number.
AutoDriverName:
type: string
maxLength: 35
example: John Smith
description: >
In a sale/authorization request for an auto rental, the customer’s name
exactly as it appears on their driver’s license.
AutoDriverTaxNumber:
type: string
maxLength: 20
example: '192012838'
description: |
This field contains the driver’s Tax Identification Number.
AutoDriver:
type: object
properties:
license:
$ref: '#/components/schemas/AutoDriverLicense'
name:
$ref: '#/components/schemas/AutoDriverName'
taxNumber:
$ref: '#/components/schemas/AutoDriverTaxNumber'
AutoRentalAgreement:
type: string
maxLength: 9
example: '123203592'
description: |
Contract number for an auto rental agreement.
AutoRentalCity:
type: string
maxLength: 18
example: Las Vegas
description: |
City where rental car was picked up.
AutoRentalCountryCode:
type: string
maxLength: 3
example: '840'
description: |
Country where rental card was picked up.
AutoRentalPostalCode:
type: string
maxLength: 9
example: '83145'
description: >
Postal Code where rental car was picked up in U.S. postal abbreviation
format.
AutoRentalRegion:
type: string
maxLength: 2
example: NV
description: >
Region (State) where rental car was picked up in U.S. postal
abbreviation format.
AutoRental:
type: object
description: |
Information relating to where the rental card was picked up.
properties:
agreement:
$ref: '#/components/schemas/AutoRentalAgreement'
city:
$ref: '#/components/schemas/AutoRentalCity'
countryCode:
$ref: '#/components/schemas/AutoRentalCountryCode'
dateTime:
$ref: '#/components/schemas/DateTime'
postalCode:
$ref: '#/components/schemas/AutoRentalPostalCode'
region:
$ref: '#/components/schemas/AutoRentalRegion'
AutoReturnCity:
type: string
maxLength: 18
example: Las Vegas
description: |
City where rental car was returned.
AutoReturnCountryCode:
type: string
maxLength: 3
example: '840'
description: |
Country where rental card was returned.
AutoReturnPostalCode:
type: string
maxLength: 9
example: '17721'
description: >
Postal Code where rental car was returned in U.S. postal abbreviation
format.
AutoReturnRegion:
type: string
maxLength: 2
example: NV
description: >
Region (State) where rental car was returned in U.S. postal abbreviation
format.
AutoReturn:
type: object
description: |
Information relating to where the rental car was returned
properties:
city:
$ref: '#/components/schemas/AutoReturnCity'
countryCode:
$ref: '#/components/schemas/AutoReturnCountryCode'
dateTime:
$ref: '#/components/schemas/DateTime'
postalCode:
$ref: '#/components/schemas/AutoReturnPostalCode'
region:
$ref: '#/components/schemas/AutoReturnRegion'
AutoCheckOut:
type: object
description: |
**Conditional: Utilize this object for Auto Rental transactions**
properties:
distanceDriven:
$ref: '#/components/schemas/AutoDistanceDriven'
distanceUnit:
$ref: '#/components/schemas/AutoDistanceUnit'
lateAdjustment:
$ref: '#/components/schemas/AutoLateAdjustment'
noShowIndicator:
$ref: '#/components/schemas/AutoNoShowIndicator'
additionalCharges:
$ref: '#/components/schemas/AutoAdditionalCharges'
driver:
$ref: '#/components/schemas/AutoDriver'
rental:
$ref: '#/components/schemas/AutoRental'
return:
$ref: '#/components/schemas/AutoReturn'
CardOnFileTypeCapture:
type: string
enum:
- U08
example: U08
description: >
This field specifies the type of the card-on-file transaction.
| Value | Initiator | Recurring | 3D Secure |
Description
|
|--------|------------|-----------|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| U08 | Merchant | No | No | Identifies a transaction
as an Incremental COF transaction. For example, a hotel which authorized
a customer’s card for one night at check-in might increase the
authorization amount to cover two nights when the customer decides to
extend their stay. Shift4 automatically detects this scenario and sends
the appropriate value to the processor. |
See the [Card On File
Transactions](/guides/advanced-concepts/card-on-file-transactions)
section for additional details.
HotelArrivalDateTime:
type: string
example: '2021-04-12T15:39:01.594-07:00'
description: >
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 straight sale (such as advanced deposit, no-show
charge, and late charges), the arrival date needs to be one day before
the sale date.
HotelDepartureDateTime:
type: string
example: '2021-04-15T09:18:23.283-07:00'
description: >
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 straight sale (such as advanced deposit, no-show
charge, and late charges), the departure date needs to be the day of the
sale.
HotelPrimaryChargeType:
type: integer
minLength: 1
maxLength: 1
example: 1
enum:
- 1
- 2
- 3
description: |
Guest’s transaction type at a hotel.
Value|Description
-----|-----------
1 | Lodging
2 | Restaurant
3 | Gift Shop
HotelSpecialCode:
type: integer
minLength: 1
maxLength: 1
example: 1
enum:
- 1
- 2
- 3
- 4
- 5
- 6
description: >
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 of ‘1’ should be sent in the request.
When a value of ‘4’ is sent, the `additionalCharges` field needs to be
sent as well.
Value|Description
-----|-----------
1 | No Special Code
2 | Assured Reservation/No Show
3 | Advance Deposit
4 | Delayed Charge
5 | Express Check-Out Service
6 | Assured Reservation/Normal
HotelAdditionalChargesGiftShop:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
HotelAdditionalChargesLaundry:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
HotelAdditionalChargesMiniBar:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
HotelAdditionalChargesOther:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
HotelAdditionalChargesRestaurant:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
HotelAdditionalChargesTelephone:
type: string
minLength: 1
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
HotelAdditionalCharges:
type: object
description: >
Reason codes for additional charges in a lodging sale request at the
time a consumer checks out.
properties:
giftShop:
$ref: '#/components/schemas/HotelAdditionalChargesGiftShop'
laundry:
$ref: '#/components/schemas/HotelAdditionalChargesLaundry'
miniBar:
$ref: '#/components/schemas/HotelAdditionalChargesMiniBar'
other:
$ref: '#/components/schemas/HotelAdditionalChargesOther'
restaurant:
$ref: '#/components/schemas/HotelAdditionalChargesRestaurant'
telephone:
$ref: '#/components/schemas/HotelAdditionalChargesTelephone'
HotelRoomRatesNights:
type: integer
maxLength: 2
example: 2
description: |
The number of nights being charged at this rate.
HotelRoomRatesRate:
type: number
maxLength: 14
example: 159.95
description: |
The per night room rate.
HotelRoomRates:
type: object
properties:
nights:
$ref: '#/components/schemas/HotelRoomRatesNights'
rate:
$ref: '#/components/schemas/HotelRoomRatesRate'
HotelRoomRatesArray:
type: array
items:
$ref: '#/components/schemas/HotelRoomRates'
example:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
description: |
Room rates broken down by rate and number of nights.
HotelCheckOut:
type: object
description: |
**Conditional: Utilize this object for Hotel transactions**
properties:
arrivalDateTime:
$ref: '#/components/schemas/HotelArrivalDateTime'
departureDateTime:
$ref: '#/components/schemas/HotelDepartureDateTime'
primaryChargeType:
$ref: '#/components/schemas/HotelPrimaryChargeType'
specialCode:
$ref: '#/components/schemas/HotelSpecialCode'
additionalCharges:
$ref: '#/components/schemas/HotelAdditionalCharges'
roomRates:
$ref: '#/components/schemas/HotelRoomRatesArray'
transactions_capture_token_gtv:
title: GTV Token
required:
- dateTime
- amount
- card
- clerk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
amount:
$ref: '#/components/schemas/AmountTaxNotRequired'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
clerk:
$ref: '#/components/schemas/Clerk'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
type: object
description: >
**Conditional: Send this object only if the capture amount
exceeds the authorized amount.**
See the [Card On File
Transactions](/guides/advanced-concepts/card-on-file-transactions)
section for more information.
properties:
type:
$ref: '#/components/schemas/CardOnFileTypeCapture'
transactionId:
$ref: '#/components/schemas/CardOnFileTransactionId'
transactionLinkId:
$ref: '#/components/schemas/CardOnFileTransactionLinkId'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'N'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'N'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_capture_token_legacy:
title: Legacy TrueToken
required:
- dateTime
- amount
- card
- clerk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
amount:
$ref: '#/components/schemas/AmountTaxNotRequired'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
clerk:
$ref: '#/components/schemas/Clerk'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
type: object
description: >
**Conditional: Send this object only if the capture amount
exceeds the authorized amount.**
See the [Card On File
Transactions](/guides/advanced-concepts/card-on-file-transactions)
section for more information.
properties:
type:
$ref: '#/components/schemas/CardOnFileTypeCapture'
transactionId:
$ref: '#/components/schemas/CardOnFileTransactionId'
transactionLinkId:
$ref: '#/components/schemas/CardOnFileTransactionLinkId'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'N'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'N'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
CardToken:
type: object
description: |
**Conditional: Send this object when using a card on file.**
properties:
value:
$ref: '#/components/schemas/CardTokenValue'
AmountTipBasis:
type: number
maxLength: 14
example: 130
description: >
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.total` in a scenario where the percentage
calculations must be made on an amount other than the total amount.
For example, you have a $130 check and you make an initial payment of
$30 using a gift card leaving a $100 remaining balance. When you process
the remaining balance and you want to calculate the tip percentages
based on the original $130 check total you would send `amount.total =
100` and `amount.tipBaiss = 130`
AmountObjectCommerceEngineSale:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested. All other fields are for informational purposes and
must also be included in the `total` field. For example, a purchase of
$100 with a $20 tip and $8 tax would be `128.00` in the `total` field,
`20.00` in the `tip` field and `8.00` in the `tax` field.
Note: For merchants that are configured to allow multiple currencies,
the amount fields can specify up to three decimal places. However, the
number of decimal places can not exceed the number allowed for the
specified currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
required:
- total
- tax
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
taxIndicator:
$ref: '#/components/schemas/AmountTaxIndicator'
cashback:
$ref: '#/components/schemas/AmountCashback'
iiasAmounts:
$ref: '#/components/schemas/IIASAmountsArray'
tip:
$ref: '#/components/schemas/AmountTip'
tipBasis:
$ref: '#/components/schemas/AmountTipBasis'
checkTotal:
$ref: '#/components/schemas/AmountCheckTotal'
transactions_sale_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- clerk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectCommerceEngineSale'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
tip:
$ref: '#/components/schemas/TipObject'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_sale_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectCommerceEngineSale'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
$ref: '#/components/schemas/DeviceCommerceEngineCloud'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
tip:
$ref: '#/components/schemas/TipObject'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_sale_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
terminalId: '1742'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
LighthouseDataRequest:
type: string
example: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
description: >
**Conditional: Send only when processing SkyTab transactions.**
Base64 encoded JSON formatted data that will be passed through to
Lighthouse for SkyTab transactions. This data will contain variable
information.
LighthouseRequest:
type: object
writeOnly: true
properties:
data:
$ref: '#/components/schemas/LighthouseDataRequest'
transactions_sale_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
exemptionAction:
$ref: '#/components/schemas/TransactionExemptionAction'
exemptionReason:
$ref: '#/components/schemas/TransactionExemptionReason'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
exemptionAction:
$ref: '#/components/schemas/TransactionExemptionAction'
exemptionReason:
$ref: '#/components/schemas/TransactionExemptionReason'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
apiOptions:
- ALLOWPARTIALAUTH
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
present: 'Y'
clerk:
numericId: 1576
p2pe:
data: >-
02df00801f2e1e00939b252a323232312a2a2a2a2a2a2a2a303030395e4d43322f4455414c20545241434b5e2a2a2a2a2a2a2a2a2a2a3f2a3b323232312a2a2a2a2a2a2a2a303030393d2a2a2a2a2a2a2a2a2a2a3f2aa0744ac45073ef2e516cd6b1111c990effb75fbe6521e40be763593c385c6c7cdcd41ffbabb59cd6c999bfe636dff9ef8408e38906db0fdc7497df96a3e8f564b9a4e1bd802f326eb9848b447512384700000000000000000000000000000000000000000000000000000000000000000000000000000000383237543839303939306299495001000000000521d503
format: '02'
transaction:
invoice: '192029'
notes: Transaction notes are added here
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMV'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
format: '05'
ksn: FFFF49517300010000CA
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMVFallbackOnly'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
notes: Transaction notes are added here
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
$ref: '#/components/schemas/EMVOnguardSDE'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMVFallbackOnly'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
notes: Transaction notes are added here
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- customer
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
exemptionAction:
$ref: '#/components/schemas/TransactionExemptionAction'
exemptionReason:
$ref: '#/components/schemas/TransactionExemptionReason'
card:
type: object
required:
- entryMode
- number
- expirationDate
- securityCode
properties:
entryMode:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: >
The method used to capture a payment card in an
authorization/sale request.
Value|Description
-----|-----------
M | Manual Entry
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
type: object
required:
- postalCode
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
lighthouse:
$ref: '#/components/schemas/LighthouseRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
present: 'N'
securityCode:
indicator: '1'
value: '333'
type: VS
clerk:
numericId: 1576
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
lighthouse:
data: >-
eyJsaWdodGhvdXNlIjp7ImVtcGxveWVlaWQiOjEyMzQsImRldmljZWlkIjoiMTIzU0FCViJ9fQ==
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_3dsecurei4Go:
title: Wallet/3D Secure Using i4Go
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- extendedCardData
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
extendedCardData:
$ref: '#/components/schemas/ExtendedCardData'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
extendedCardData: >-
eyJjYXJkQnJhbmRUb2tlbiI6eyJyZXF1ZXN0b3JJZCI6IjA0MDAxMDAzMDI3MyJ9LCJ0aHJlZURTZWN1cmUiOnsicHJvZ3JhbVByb3RvY29sIjoxLCJlY29tbUluZGljYXRvciI6NywieGlkIjoiRkU4OTRBN0NDNzI3NDVCRTIyRThBRkMzNjE2OUM2NUI5QkIwMjIxM0NGMTFBNDAzMTI0MjBDNUQ0MDU0RDY5QyIsImNyeXB0b2dyYW0iOiJCRC91UWZVQU9mMythTVVDbHV0eE1BQUNBQUE9Iiwic2VjdXJpdHlMZXZlbEluZGljYXRvciI6MjQxLCJhdXRoZW50aWNhdGlvblNvdXJjZSI6MSwid2FsbGV0SUQiOjEwM319
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_3dsecurecardnumber:
title: 3D Secure Using Card Number
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecure'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
authenticationSource: '2'
cavvResult: '2'
authenticationValue: Y2FyZGluYWxjb21tZXJjZWF1dGg=
tavvResult: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
walletID: '327'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_3dsecuretoken_gtv:
title: 3D Secure Using GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecure'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
authenticationSource: '2'
cavvResult: '2'
authenticationValue: Y2FyZGluYWxjb21tZXJjZWF1dGg=
tavvResult: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
walletID: '327'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_3dsecuretoken_legacy:
title: 3D Secure Using Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecure'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
authenticationSource: '2'
cavvResult: '2'
authenticationValue: Y2FyZGluYWxjb21tZXJjZWF1dGg=
tavvResult: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
walletID: '327'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_applepay:
title: Apple Pay
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
- cardBrandToken
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecureWallet'
cardBrandToken:
type: object
properties:
requestorId:
$ref: '#/components/schemas/CardBrandTokenRequestorID'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
authenticationSource: '1'
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
walletID: '103'
cardBrandToken:
requestorId: '012345678901'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_sale_googlepay:
title: Google Pay
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- threeDSecure
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
threeDSecure:
$ref: '#/components/schemas/ThreeDSecureWallet'
customer:
$ref: '#/components/schemas/Customer'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
clerk:
numericId: 1576
transaction:
invoice: '192029'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
threeDSecure:
authenticationSource: '1'
cryptogram: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
ecommIndicator: '5'
securityLevelIndicator: '241'
xid: hq0BA9EAAAGXIJcAGAAAABKU0+s=
programProtocol: '2'
walletID: '216'
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
TaxFree:
type: object
description: >
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.
properties:
maskedPAN:
type: string
example: 476173******0043
description: |
The masked pan containing the first 6 and last 4 digits.
cardCountry:
type: string
example: '124'
description: |
Card issuing country in ISO 3166-1 (3 numeric digits) format
cardBrand:
type: string
enum:
- VISA
- MASTER
- DINERS
- JCB
- AMEX
- CUP
description: |
Card brand
| Value | Decription |
|--------|-------------------------------------|
| VISA | Visa Credit/Debit
| MASTER | Mastercard Credit/Debit and Maestro |
| DINERS | Discover/Diners |
| JCB | JCB |
| AMEX | American Express |
| CUP | Unionpay Credit/Debit |
cardType:
type: string
enum:
- CreditCard
- DebitCard
- Prepaid
description: |
Card type
expiryMonth:
type: string
example: '12'
description: |
Expiration month
expiryYear:
type: string
example: '31'
description: |
Expiration year
cardholderName:
type: string
example: TaxFree Shopper
description: |
Cardholder name
pspReferenceNumber:
type: string
example: 112215bf-93a3-4856-b1ca-23d175dd2fa9
description: |
Shift4 transaction reference number shared with Global Blue.
AmountRefund:
type: object
required:
- tax
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
TransactionOriginalInvoice:
type: string
maxLength: 10
example: '192029'
description: >
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
sent as a JSON string it is a numeric value. No alpha characters are
allowed.**
**For processing outside of the US and Canada alpha characters are
allowed.**
AirlineCreditReasonIndicator:
type: string
maxLength: 1
enum:
- A
- B
- C
- O
- P
example: P
description: >
Indicates the reason for a credit to the cardholder. This field should
contain spaces or one of the below codes.
Value | Description
-------|---------------
A | Passenger transport ancillary purchase cancellation
B | Airline ticket and passenger transport ancillary purchase
cancellation
C | Airline ticket cancellation
O | Other
P | Partial refund of airline ticket
AirlineRequestRefund:
type: object
description: |
**Conditional: Utilize this object for Airline transactions**
required:
- carrierCode
- carrierName
- creditReasonIndicator
- conjunctionTicketIndicator
- documentType
- electronicTicketIndicator
- internetIndicator
- issueDate
- numberOfCities
- numberOfCarriers
- numberOfPassengers
- passengerArrivalDate
- passengerDepartureDate
- passengerNameRecord
- restrictedTicketIndicator
- ticketChangeIndicator
- ticketTranType
- tickets
- flightLegs
- typeIndicator
properties:
carrierCode:
$ref: '#/components/schemas/AirlineCarrierCode'
carrierName:
$ref: '#/components/schemas/AirlineCarrierName'
conjunctionTicketIndicator:
$ref: '#/components/schemas/AirlineConjunctionTicketIndicator'
creditReasonIndicator:
$ref: '#/components/schemas/AirlineCreditReasonIndicator'
documentType:
$ref: '#/components/schemas/AirlineDocumentType'
electronicTicketIndicator:
$ref: '#/components/schemas/AirlineElectronicTicketIndicator'
internetIndicator:
$ref: '#/components/schemas/AirlineInternetIndicator'
issueDate:
$ref: '#/components/schemas/AirlineIssueDate'
numberOfCities:
$ref: '#/components/schemas/AirlineNumberOfCities'
numberOfCarriers:
$ref: '#/components/schemas/AirlineNumberOfCarriers'
numberOfPassengers:
$ref: '#/components/schemas/AirlineNumberOfPassengers'
passengerArrivalDate:
$ref: '#/components/schemas/AirlinePassengerArrivalDate'
passengerDepartureDate:
$ref: '#/components/schemas/AirlinePassengerDepartureDate'
passengerNameRecord:
$ref: '#/components/schemas/AirlinePassengerNameRecord'
restrictedTicketIndicator:
$ref: '#/components/schemas/AirlineRestrictedTicketIndicator'
ticketChangeIndicator:
$ref: '#/components/schemas/AirlineTicketChangeIndicator'
ticketTranType:
$ref: '#/components/schemas/AirlineTicketTranType'
typeIndicator:
$ref: '#/components/schemas/AirlineTypeIndicator'
tickets:
$ref: '#/components/schemas/AirlineTicketsArray'
flightLegs:
$ref: '#/components/schemas/AirlineFlightLegsArray'
ancillaryServices:
$ref: '#/components/schemas/AirlineAncillaryServicesArray'
travelAgencyCode:
$ref: '#/components/schemas/AirlineTravelAgencyCode'
travelAgencyName:
$ref: '#/components/schemas/AirlineTravelAgencyName'
exchangeTicketNumber:
$ref: '#/components/schemas/AirlineExchangeTicketNumber'
HotelCheckOutRefund:
type: object
description: |
**Conditional: Utilize this object for Hotel transactions**
properties:
arrivalDateTime:
$ref: '#/components/schemas/HotelArrivalDateTime'
departureDateTime:
$ref: '#/components/schemas/HotelDepartureDateTime'
PurchaseCardRefund:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
destinationPostalCode:
$ref: '#/components/schemas/PurchaseCardDestinationPostalCode'
productDescriptors:
$ref: '#/components/schemas/PurchaseCardProductDescriptors'
CardPresentRefund:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
Indicates whether a card was present (‘Y’) or not (‘N’) at the time the
refund transaction took place.
transactions_refund_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
present: 'Y'
clerk:
numericId: 1576
transaction:
invoice: '192050'
originalInvoice: '182177'
notes: Transaction notes are added here
transactions_refund_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
$ref: '#/components/schemas/DeviceCommerceEngineCloud'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
present: 'Y'
clerk:
numericId: 1576
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192050'
originalInvoice: '182177'
notes: Transaction notes are added here
transactions_refund_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
present: 'Y'
clerk:
numericId: 1576
device:
terminalId: '1742'
transaction:
invoice: '192050'
originalInvoice: '182177'
notes: Transaction notes are added here
transactions_refund_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresentRefund'
token:
$ref: '#/components/schemas/CardTokenRequired'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
invoice: '192050'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresentRefund'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
invoice: '192050'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_p2pe_idtech:
title: P2PE - IDTECH - EMV/MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
present: 'Y'
clerk:
numericId: 1576
p2pe:
data: >-
02df00801f2e1e00939b252a323232312a2a2a2a2a2a2a2a303030395e4d43322f4455414c20545241434b5e2a2a2a2a2a2a2a2a2a2a3f2a3b323232312a2a2a2a2a2a2a2a303030393d2a2a2a2a2a2a2a2a2a2a3f2aa0744ac45073ef2e516cd6b1111c990effb75fbe6521e40be763593c385c6c7cdcd41ffbabb59cd6c999bfe636dff9ef8408e38906db0fdc7497df96a3e8f564b9a4e1bd802f326eb9848b447512384700000000000000000000000000000000000000000000000000000000000000000000000000000000383237543839303939306299495001000000000521d503
format: '02'
transaction:
invoice: '192029'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMV'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
format: '05'
ksn: FFFF49517300010000CA
transaction:
invoice: '192029'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMVFallbackOnly'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
$ref: '#/components/schemas/EMVOnguardSDE'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
transaction:
invoice: '192029'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- present
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresentRefund'
type:
$ref: '#/components/schemas/CardType'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMVFallbackOnly'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_refund_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountRefund'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequestRefund'
hotel:
$ref: '#/components/schemas/HotelCheckOutRefund'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardRefund'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
source:
$ref: '#/components/schemas/TransactionSource'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
card:
type: object
required:
- number
- expirationDate
- present
properties:
entryMode:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: >
**Conditional: The Card Entry Mode should be sent in an initial
request; in subsequent requests, it should be left blank or not
sent.**
The method used to capture a payment card in an
authorization/sale request.
Value|Description
-----|-----------
M | Manual Entry
present:
$ref: '#/components/schemas/CardPresentRefund'
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
customer:
type: object
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 10.05
total: 121.83
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
present: 'N'
type: VS
clerk:
numericId: 1576
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
transaction:
invoice: '192029'
originalInvoice: '182177'
notes: Transaction notes are added here
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
CardResponseVoid:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
number:
$ref: '#/components/schemas/CardMaskedNumber'
type:
$ref: '#/components/schemas/CardTypeResp'
token:
$ref: '#/components/schemas/CardTokenResponse'
TransactionManualTranId:
type: string
maxLength: 15
example: '123456789012345'
description: >
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 field.
transactions_manualauthorization_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- clerk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_manualauthorization_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
$ref: '#/components/schemas/DeviceCommerceEngineCloud'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_manualauthorization_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
terminalId: '1742'
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_manualauthorization_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
apiOptions:
- ALLOWPARTIALAUTH
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
present: 'Y'
clerk:
numericId: 1576
p2pe:
data: >-
02df00801f2e1e00939b252a323232312a2a2a2a2a2a2a2a303030395e4d43322f4455414c20545241434b5e2a2a2a2a2a2a2a2a2a2a3f2a3b323232312a2a2a2a2a2a2a2a303030393d2a2a2a2a2a2a2a2a2a2a3f2aa0744ac45073ef2e516cd6b1111c990effb75fbe6521e40be763593c385c6c7cdcd41ffbabb59cd6c999bfe636dff9ef8408e38906db0fdc7497df96a3e8f564b9a4e1bd802f326eb9848b447512384700000000000000000000000000000000000000000000000000000000000000000000000000000000383237543839303939306299495001000000000521d503
format: '02'
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
hotel:
estimatedDays: 5
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMV'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
format: '05'
ksn: FFFF49517300010000CA
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
hotel:
estimatedDays: 5
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
$ref: '#/components/schemas/EMVOnguardSDE'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
hotel:
estimatedDays: 5
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualauthorization_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- customer
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckIn'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckIn'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- number
- expirationDate
- securityCode
properties:
entryMode:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: >
**Conditional: The Card Entry Mode should be sent in an initial
request; in subsequent requests, it should be left blank or not
sent.**
The method used to capture a payment card in an
authorization/sale request.
Value|Description
-----|-----------
M | Manual Entry
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
type: object
required:
- postalCode
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
present: 'N'
securityCode:
indicator: '1'
value: '333'
type: VS
clerk:
numericId: 1576
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
transaction:
hotel:
estimatedDays: 5
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- clerk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_manualsale_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
$ref: '#/components/schemas/DeviceCommerceEngineCloud'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_manualsale_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
apiOptions:
- ALLOWPARTIALAUTH
card:
present: 'Y'
clerk:
numericId: 1576
device:
terminalId: '1742'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
transactions_manualsale_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: '8048471746471119'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
expirationDate: 1225
present: 'N'
token:
value: 11191pn83hbkkety
serialNumber: '123456'
clerk:
numericId: 1576
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Cookie
- Fries
- Hamburger
- Soda
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
apiOptions:
- ALLOWPARTIALAUTH
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
present: 'Y'
clerk:
numericId: 1576
p2pe:
data: >-
02df00801f2e1e00939b252a323232312a2a2a2a2a2a2a2a303030395e4d43322f4455414c20545241434b5e2a2a2a2a2a2a2a2a2a2a3f2a3b323232312a2a2a2a2a2a2a2a303030393d2a2a2a2a2a2a2a2a2a2a3f2aa0744ac45073ef2e516cd6b1111c990effb75fbe6521e40be763593c385c6c7cdcd41ffbabb59cd6c999bfe636dff9ef8408e38906db0fdc7497df96a3e8f564b9a4e1bd802f326eb9848b447512384700000000000000000000000000000000000000000000000000000000000000000000000000000000383237543839303939306299495001000000000521d503
format: '02'
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMV'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
format: '05'
ksn: FFFF49517300010000CA
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- amount
- clerk
- transaction
- device
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
$ref: '#/components/schemas/EMVOnguardSDE'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: E
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- clerk
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
pin:
$ref: '#/components/schemas/TransactionPin'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardType'
customer:
$ref: '#/components/schemas/Customer'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: '1'
present: 'Y'
clerk:
numericId: 1576
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
transactions_manualsale_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- clerk
- transaction
- card
- customer
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountObjectNoSurcharge'
clerk:
$ref: '#/components/schemas/Clerk'
transaction:
type: object
required:
- invoice
- purchaseCard
- authorizationCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
manualTranId:
$ref: '#/components/schemas/TransactionManualTranId'
notes:
$ref: '#/components/schemas/TransactionNotes'
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
amex:
$ref: '#/components/schemas/TransactionAmex'
auto:
$ref: '#/components/schemas/AutoCheckOut'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCard'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- number
- expirationDate
- securityCode
properties:
entryMode:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: >
**Conditional: The Card Entry Mode should be sent in an initial
request; in subsequent requests, it should be left blank or not
sent.**
The method used to capture a payment card in an
authorization/sale request.
Value|Description
-----|-----------
M | Manual Entry
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
customer:
type: object
required:
- postalCode
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
receiptColumns:
$ref: '#/components/schemas/ReceiptColumns'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
reportingData:
$ref: '#/components/schemas/ReportingData'
statementSuffix:
$ref: '#/components/schemas/StatementSuffix'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
apiOptions:
- ALLOWPARTIALAUTH
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
present: 'N'
securityCode:
indicator: '1'
value: '333'
type: VS
clerk:
numericId: 1576
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
transaction:
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
invoice: '192029'
authorizationCode: '189746'
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
tokens_add_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
properties:
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2024-05-27T09:18:23.283-07:00'
tokens_add_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
properties:
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceCommerceEngineCloud'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2024-05-27T09:18:23.283-07:00'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
tokens_add_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
properties:
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
terminalId: '1742'
tokens_add_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
p2pe:
data: >-
027101801F2D1E00939B%*432100******1119^VS/DUAL
TRACK^2212******?*;432100******1119=2212******?*CECE3FCE7781142BEC8D0E267AE89F5D3C7E235BF1A70E637951E8D93003E5A2586C336CA4A3B31F6639B04005BB12A716D8BC4D3AB125C27AB11A9DDC02816569D42A20B036EE5E2C71CB70565FB43B000000000000000000000000000000000000000000000000000000000000000000000000000000003434345434363138343962994950010038200415953903
format: '01'
apiOptions:
- RETURNEXPDATE
tokens_add_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
$ref: '#/components/schemas/EMV'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
format: '05'
ksn: FFFF49517300010000CA
apiOptions:
- RETURNEXPDATE
tokens_add_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
apiOptions:
- RETURNEXPDATE
tokens_add_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
$ref: '#/components/schemas/EMVOnguardSDE'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
apiOptions:
- RETURNEXPDATE
tokens_add_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
apiOptions:
- RETURNEXPDATE
CardEntryModeManual:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: |
The method used to capture a payment card.
Value|Description
-----|-----------
M | Manual Entry
P2PEDataAESMCE:
type: string
maxLength: 2048
example: 86B43D77B12EA757544520C7678A05DD8B7E4770FE05F3320E9D856A7401ADEF
description: >
Manual card entry information encrypted with AES 128. The decrypted
information must be in the following format:
`pan=|exp=|cvv=`
|Value | Description
|----------------|------------
|pan | Credit card number
|exp | Expiration date in MMYY format
|cvv | Card security code (optional)
The unencrypted data must be padded with \x00 to be a muliple of 16
before encrypting.
Example: `pan=4761730000000011|exp=1226\x00\x00\x00`
P2PEFormatAES:
type: string
minLength: 2
maxLength: 2
enum:
- '07'
example: '07'
description: |
Classifies the type of payment device being used for P2PE.
Value|Description
-----|-----------
07 | AES-128 or AES-256
P2PEKIDAES:
type: string
example: AESKEY1
description: |
The key identifier for the key that was used to encrypt the P2PE data.
**Note: The encryption key will be exchanged manually per customer.**
P2PEType07AESMCE:
type: object
required:
- data
- format
- kid
properties:
data:
$ref: '#/components/schemas/P2PEDataAESMCE'
format:
$ref: '#/components/schemas/P2PEFormatAES'
kid:
$ref: '#/components/schemas/P2PEKIDAES'
tokens_add_p2pe_aes_mce:
title: P2PE - AES - Manual
type: object
required:
- dateTime
- p2pe
- card
properties:
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryModeManual'
dateTime:
$ref: '#/components/schemas/DateTime'
p2pe:
$ref: '#/components/schemas/P2PEType07AESMCE'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
$ref: '#/components/schemas/Customer'
example:
card:
entryMode: M
dateTime: '2024-01-31T09:18:23.283-07:00'
p2pe:
data: 86B43D77B12EA757544520C7678A05DD8B7E4770FE05F3320E9D856A7401ADEF
format: '07'
kid: AESKEY1
apiOptions:
- RETURNEXPDATE
tokens_add_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
type: object
properties:
indicator:
$ref: '#/components/schemas/CardSecurityCodeIndicator'
value:
$ref: '#/components/schemas/CardSecurityCodeValue'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
customer:
type: object
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
number: '4321000000001119'
expirationDate: 1230
securityCode:
indicator: '1'
value: '333'
apiOptions:
- RETURNEXPDATE
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
ACHAccountNumber:
type: string
maxLength: 17
example: '1234567890'
description: >
Bank Account Number. Do not include any dashes, spaces, or additional
zeros.
ACHRoutingNumber:
type: string
maxLength: 9
minLength: 9
example: '121000248'
description: |
The routing number identifying the bank.
ACHAccountType:
type: string
example: PC
minLength: 2
maxLength: 2
description: |
Bank account type
Value | Description
------|---------------
PC | Personal Checking
PS | Personal Savings
CC | Corporate Checking
CS | Corporate Savings
ACHAccountHolderName:
type: string
maxLength: 22
example: John Smith
description: |
ACH account holder's name
ACHAccountVerified:
type: boolean
example: true
description: |
Send as `true` if the ACH account was verified through a 3rd party.
ACHVerificationType:
type: string
example: P
enum:
- P
- M
- B
description: |
The type of verification used to validate the account.
Value | Description
------|---------------
P | Prenotification
M | Micro Deposits
B | Bank Login
tokens_add_ach:
title: ACH
type: object
required:
- dateTime
- ach
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
ach:
type: object
required:
- accountNumber
- routingNumber
- accountType
- accountHolderName
- accountVerified
- verificationType
properties:
accountNumber:
$ref: '#/components/schemas/ACHAccountNumber'
routingNumber:
$ref: '#/components/schemas/ACHRoutingNumber'
accountType:
$ref: '#/components/schemas/ACHAccountType'
accountHolderName:
$ref: '#/components/schemas/ACHAccountHolderName'
accountVerified:
$ref: '#/components/schemas/ACHAccountVerified'
verificationType:
$ref: '#/components/schemas/ACHVerificationType'
example:
dateTime: '2023-02-10T09:18:23.283-07:00'
ach:
accountNumber: '1234567890'
routingNumber: '121000248'
accountType: PC
accountHolderName: John Smith
accountVerified: true
verificationType: M
tokens_add_response_card:
title: Card Data
type: object
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
number:
$ref: '#/components/schemas/CardMaskedNumber'
type:
$ref: '#/components/schemas/CardTypeResp'
token:
$ref: '#/components/schemas/CardTokenResponse'
customer:
$ref: '#/components/schemas/Customer'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
card:
entryMode: '2'
number: XXXXXXXXXXX2221
token:
value: '8038471748812221'
type: AX
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: U2API01CE
TokenValueACH:
type: string
maxLength: 16
example: '9829283019231234'
description: |
The token representing the customer's bank account credentials.
TokenTypeACH:
type: string
example: ACH
readOnly: true
enum:
- ACH
description: |
Specifies the type of token. Value = `ACH`
TokenACH:
type: object
required:
- value
properties:
value:
$ref: '#/components/schemas/TokenValueACH'
type:
$ref: '#/components/schemas/TokenTypeACH'
tokens_add_response_ach:
title: ACH
type: object
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
token:
$ref: '#/components/schemas/TokenACH'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
merchant:
mid: 15877
name: Merchant XYZ
token:
value: '9829283019231234'
type: ACH
server:
name: TM01CE
CardFourWords:
type: string
maxLength: 28
example: cat blue washington enter
description: >
Four words that reference cardholder data (CHD). The four words can be
entered into Shift4’ 4Word® web app separated by spaces to temporarily
reveal CHD. In addition, the four words can be entered during an Online
Entry or Offline Entry transaction in [Lighthouse Transaction
Manager](https://ltm.shift4test.com/) to securely charge the
corresponding card number.
CardMaskedNumberGC:
type: string
maxLength: 32
example: XXXXXXXXXXXX8774
description: |
The card number field will always be masked when returned in a response.
CardResponseFourWords:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
fourWords:
$ref: '#/components/schemas/CardFourWords'
number:
$ref: '#/components/schemas/CardMaskedNumberGC'
MerchantAddressLine1:
type: string
maxLength: 38
example: 456 Fake St
description: |
First line in the merchant’s business address as configured with Shift4.
MerchantAddressLine2:
type: string
maxLength: 38
example: Suite 100
description: >
Second line in the merchant’s business address as configured with
Shift4.
MerchantCity:
type: string
maxLength: 13
example: Las Vegas
description: |
City of the merchant’s business address as configured with Shift4.
MerchantDayEndingTime:
type: string
maxLength: 6
example: '010000'
description: >
The time the merchant’s business day ends as configured with Shift4.
**Note: This is only applicable for merchants based in the USA. If the
merchant is not based in the USA, this field will not be returned.**
MerchantDefaultCurrency:
type: string
format: ISO 4217 3 Character Alphabetic Code
example: USD
description: >
Merchant's default currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
MerchantSupportedCurrencies:
type: string
format: ISO 4217 3 Character Alphabetic Code
example: USD,EUR,GBP
description: >
Comma separated list of currnecies the merchant supports. See the
[Currency Codes](/guides/appendices/currency-codes) section for details.
MerchantIndustry:
type: string
minLength: 1
maxLength: 1
enum:
- A
- F
- H
- M
- R
- P
example: F
description: |
Classifies the merchant type for a merchant’s account with Shift4.
Value|Description
-----|-----------
A | Auto Rental
F | Food & Beferage (F&B)
H | Hotel
M | Mail order/Telephone Order (MOTO) or E-Commerce
R | Retail
P | Passenger Transport
MerchantRegion:
type: string
maxLength: 3
example: NV
description: >
Region (State) of the merchant’s business address as configured with
Shift4.
MerchantPhone:
type: string
maxLength: 15
example: 702-123-4567
description: |
The merchant’s business telephone number as configured with Shift4.
MerchantPostalCode:
type: string
maxLength: 9
example: '78402'
description: >
ZIP/Postal Code of the merchant’s business address as configured with
Shift4.
MerchantSerialNumber:
type: string
maxLength: 11
example: '00000044444'
description: |
The serial number of the merchant's account with Shift4.
MerchantCardTypesAccountNumber:
type: string
maxLength: 20
example: '192019202'
description: >
The merchant’s account number as configured with Shift4. This field is
returned in response to a [Merchant
Information](/apis/payments-platform-rest/openapi/merchants/merchantsmerchant)
request because the clerk is required to provide it when attempting to
obtain a voice authorization code. This information must be displayed to
the clerk.
MerchantCardTypesPhoneNumber:
type: string
maxLength: 20
example: 1-800-444-5566
description: >
The phone number a clerk must call to obtain a voice authorization code.
This field is returned in response to a [Merchant
Information](/apis/payments-platform-rest/openapi/merchants/merchantsmerchant)
request. This information must be displayed to the clerk.
VoiceCenter:
type: object
properties:
accountNumber:
$ref: '#/components/schemas/MerchantCardTypesAccountNumber'
phoneNumber:
$ref: '#/components/schemas/MerchantCardTypesPhoneNumber'
MerchantCardTypes:
type: object
properties:
type:
$ref: '#/components/schemas/CardTypeResp'
voiceCenter:
$ref: '#/components/schemas/VoiceCenter'
MerchantCardTypesArray:
type: array
items:
$ref: '#/components/schemas/MerchantCardTypes'
example:
- type: VS
voiceCenter:
accountNumber: '2919201'
phoneNumber: 1-800-444-5566
- type: MC
voiceCenter:
accountNumber: '2919201'
phoneNumber: 1-800-444-5566
- type: AX
voiceCenter:
accountNumber: '65168416'
phoneNumber: 1-800-123-1126
- type: NS
voiceCenter:
accountNumber: '68406848684'
phoneNumber: 1-888-320-1640
- type: YC
voiceCenter:
accountNumber: '2919201'
phoneNumber: 1-800-444-5566
description: |
Array of Merchant Card Types
MerchantDCCEnabled:
type: string
example: 'Y'
enum:
- 'Y'
- 'N'
description: |
Determines whether the merchant has dynamic currency conversion enabled.
Value|Description
-----|-----------
Y | DCC is enabled
N | DCC is not enabled
MerchantDCCSecondaryLookupDisclaimer:
type: string
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Determines whether the merchant must perform a secondary rate lookup
before capture and if a secondary disclaimer is required.
Value|Description
-----|-----------
Y | Yes - Secondary rate-lookup on capture, accept/decline screen,
and larger disclaimer on printed receipt required.
N | No - Secondary rate-lookup, accept/decline screen, and larger
disclaimer NOT required
MerchantCardTypeProcessor:
type: string
readOnly: true
example: TSYSVLLA
description: |
The processor configured for the card type.
MerchantDCCCardTypesArray:
type: array
items:
type: object
properties:
type:
$ref: '#/components/schemas/CardTypeResp'
processor:
$ref: '#/components/schemas/MerchantCardTypeProcessor'
example:
- type: VS
processor: TSYSVLLA
- type: MC
processor: TSYSVLLA
- type: AX
processor: TSYSVLLA
- type: NS
processor: TSYSVLLA
description: |
Array of DCC supported card types
MerchantDCCObject:
type: object
properties:
enabled:
$ref: '#/components/schemas/MerchantDCCEnabled'
secondaryLookupDisclaimer:
$ref: '#/components/schemas/MerchantDCCSecondaryLookupDisclaimer'
cardTypes:
$ref: '#/components/schemas/MerchantDCCCardTypesArray'
example:
enabled: 'Y'
secondaryLookupDisclaimer: 'N'
cardTypes:
- type: VS
processor: TSYSVLLA
- type: MC
processor: TSYSVLLA
- type: AX
processor: TSYSVLLA
- type: NS
processor: TSYSVLLA
MerchantGTVEnabled:
type: string
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Indicates whether merchant is configured to support Tokenization using
Shift4’s Global Token Vault (GTV) solution.
Value|Description
-----|-----------
Y | GTV is enabled
N | GTV is not enabled
MerchantGTVObject:
type: object
properties:
enabled:
$ref: '#/components/schemas/MerchantGTVEnabled'
MerchantSurchargeEnabled:
type: string
example: 'Y'
enum:
- 'Y'
- 'N'
description: |
Indicates whether merchant is configured to support Surcharging.
Value|Description
-----|-----------
Y | Surcharging is enabled
N | Surcharging is not enabled
MerchantSurchargeObject:
type: object
properties:
enabled:
$ref: '#/components/schemas/MerchantSurchargeEnabled'
MerchantAutoCloseEnabled:
type: string
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Indicates whether merchant has Auto Close enabled for transaction
batches.
Value|Description
-----|-----------
Y | Auto Close is enabled
N | Auto Close is not enabled
MerchantAutoCloseObject:
type: object
properties:
enabled:
$ref: '#/components/schemas/MerchantAutoCloseEnabled'
MerchantCardTypeRangesLower:
type: string
example: '40000000'
description: |
Lower limit for the card range
MerchantCardTypeRangesUpper:
type: string
example: '49999999'
description: |
Upper limit for the card range
MerchantCardTypeRangesLengths:
type: string
example: 13,16,17,18,19
description: |
Comma separated list of possible lengths for the card range.
MerchantCardTypeRangesLuhnCheck:
type: boolean
example: true
description: |
Specifies whether or not the card range will pass the luhn check.
MerchantCardTypesRangesObject:
type: object
properties:
lower:
$ref: '#/components/schemas/MerchantCardTypeRangesLower'
upper:
$ref: '#/components/schemas/MerchantCardTypeRangesUpper'
lengths:
$ref: '#/components/schemas/MerchantCardTypeRangesLengths'
lunhCheck:
$ref: '#/components/schemas/MerchantCardTypeRangesLuhnCheck'
MerchantCardTypesRangesArray:
type: array
items:
$ref: '#/components/schemas/MerchantCardTypesRangesObject'
description: |
Array of card ranges
MerchantCardTypesReturnProcessors:
type: object
properties:
type:
$ref: '#/components/schemas/CardTypeResp'
processor:
$ref: '#/components/schemas/MerchantCardTypeProcessor'
ranges:
$ref: '#/components/schemas/MerchantCardTypesRangesArray'
voiceCenter:
$ref: '#/components/schemas/VoiceCenter'
MerchantCardTypesReturnProcessorsArray:
type: array
items:
$ref: '#/components/schemas/MerchantCardTypesReturnProcessors'
example:
- type: VS
processor: TSYSVLLA
ranges:
- lower: '40000000'
upper: '49999999'
lengths: 13,16,17,18,19
luhnCheck: true
voiceCenter:
accountNumber: '2919201'
phoneNumber: 1-800-444-5566
- type: MC
processor: TSYSVLLA
ranges:
- lower: '51000000'
upper: '55999999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '22210000'
upper: '27209999'
lengths: 16,17,18,19
luhnCheck: true
voiceCenter:
accountNumber: '2919201'
phoneNumber: 1-800-444-5566
- type: AX
processor: TSYSVLLA
ranges:
- lower: '34000000'
upper: '34999999'
lengths: '15'
luhnCheck: true
- lower: '37000000'
upper: '37999999'
lengths: '15'
luhnCheck: true
voiceCenter:
accountNumber: '65168416'
phoneNumber: 1-800-123-1126
- type: NS
processor: TSYSVLLA
ranges:
- lower: '60110000'
upper: '60110999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '60112000'
upper: '60114999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '60117400'
upper: '60117499'
lengths: 16,17,18,19
luhnCheck: true
- lower: '60117700'
upper: '60117999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '60118600'
upper: '60119999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '62400000'
upper: '62699999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '62820000'
upper: '62889999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '65000000'
upper: '65999999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '62212600'
upper: '62292599'
lengths: 16,17,18,19
luhnCheck: true
- lower: '62292600'
upper: '62379699'
lengths: 16,17,18,19
luhnCheck: true
- lower: '64400000'
upper: '64999999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '62109400'
upper: '62109499'
lengths: 13,16,17,18,19
luhnCheck: true
- lower: '81000000'
upper: '81719999'
lengths: 16,17,18,19
luhnCheck: true
- lower: '36000000'
upper: '36999999'
lengths: 14,15,16,17,18,19
luhnCheck: true
- lower: '38000000'
upper: '38999999'
lengths: 14,15,16,17,18,19
luhnCheck: true
- lower: '39000000'
upper: '39999999'
lengths: 14,15,16,17,18,19
luhnCheck: true
- lower: '30000000'
upper: '30999999'
lengths: 14,15,16,17,18,19
luhnCheck: true
- lower: '20140000'
upper: '20149999'
lengths: '15'
luhnCheck: true
- lower: '21490000'
upper: '21499999'
lengths: '15'
luhnCheck: true
voiceCenter:
accountNumber: '68406848684'
phoneNumber: 1-888-320-1640
- type: YC
processor: IYC
ranges:
- lower: '00000001'
upper: '09999999'
lengths: '16'
luhnCheck: true
voiceCenter:
accountNumber: '2919201'
phoneNumber: 1-800-444-5566
description: |
Array of Merchant Card Types
AmountTotalGC:
type: number
maxLength: 14
example: 20
description: >
The amount which should be added to the card's balance. Amount cannot
be zero.
AmountGC:
type: object
description: >
Object containing information regarding the amount being added onto the
card or removed from the card.
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotalGC'
checkTotal:
$ref: '#/components/schemas/AmountCheckTotal'
giftcards_activate_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
transaction:
invoice: '192029'
DeviceComEngCloud:
type: object
required:
- cloud
- manufacturer
- serialNumber
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
giftcards_activate_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- card
- device
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192029'
giftcards_activate_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
terminalId: '1742'
transaction:
invoice: '192029'
CardExpirationDateGC:
type: integer
minLength: 3
maxLength: 4
format: MMYY
example: 1230
description: >
**Conditional: Send in the request for manually entered or token
transactions if the card has an expiration date. This field should not
be specified when using an encrypted device.**
Card expiration date in MMYY format.
giftcards_activate_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
expirationDate: 1225
present: 'Y'
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_activate_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
expirationDate: 1225
present: 'Y'
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
giftcards_activate_p2pe_idtech:
title: P2PE - ID TECH - MSR/Manual
type: object
required:
- dateTime
- amount
- card
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
p2pe:
data: >-
02B600C0170018009292;000442******0006=3012?*61A0453AB7145F1FA7685D2F27A745E129525EDAEA5BB7DBBAF49A5F876E3EE5000000000000000000000000000000000000000034343454343631383439629949500100382003E6FF4D03
format: '01'
transaction:
invoice: '192029'
giftcards_activate_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
giftcards_activate_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
CardNumberGC:
type: string
maxLength: 32
example: 2664654648774
description: >
The payment card number. This field will always be masked when returned
in a response.
CardSecurityCodeValueGC:
type: string
maxLength: 4
writeOnly: true
example: '333'
description: >
**Conditional: May be required for gift card transactions.**
The three- or four-digit Card Security Code associated with gift card.
This value may be required for requests depending on a card's settings.
It should not be stored by the interface.
CardSecurityCodeGC:
type: object
properties:
value:
$ref: '#/components/schemas/CardSecurityCodeValueGC'
giftcards_activate_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
- number
properties:
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumberGC'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
number: '2664654648774'
expirationDate: 1230
transaction:
invoice: '192029'
AmountTotalGCResponse:
type: number
maxLength: 14
example: 20
description: >
For
[Activate](/apis/payments-platform-rest/openapi/gift-cards/activate),
[Allocate](/apis/payments-platform-rest/openapi/gift-cards/allocate) or
[Reload](/apis/payments-platform-rest/openapi/gift-cards/reload)
requests, this is the amount which was added to the card's balance.
For [Cashout](/apis/payments-platform-rest/openapi/gift-cards/cashout)
requests, this is the amount of cash that should be provided to the
customer.
AmountGCResponse:
type: object
description: >
Object containing information regarding the amount being added onto the
card or removed from the card.
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotalGCResponse'
CardTypeGCResp:
type: string
enum:
- GC
- YC
example: YC
description: >
An abbreviation used to specify the type of card that was used when
processing a transaction.
Value| Description
-----|------------
GC | Gift Card
YC | IT’S YOUR CARD
CardTokenValueGC:
description: >
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 to store this card token for future use. The latest
card token received should be used in any subsequent request that
references the same card data.
type: string
maxLength: 16
example: 87743q5p3ffhv67y
CardTokenGCResponse:
type: object
properties:
value:
$ref: '#/components/schemas/CardTokenValueGC'
CardResponseGC:
type: object
properties:
number:
$ref: '#/components/schemas/CardMaskedNumberGC'
type:
$ref: '#/components/schemas/CardTypeGCResp'
balance:
$ref: '#/components/schemas/CardBalance'
token:
$ref: '#/components/schemas/CardTokenGCResponse'
ProgramId:
type: string
maxLength: 16
example: '123529291'
description: |
The ID value for the program you are allocating a gift card under.
CardDeactivationReason:
type: string
maxLength: 32
example: Lost or Stolen
description: >
In a Gift Card
[Deactivate](/apis/payments-platform-rest/openapi/gift-cards/deactivate)
or [Cashout](/apis/payments-platform-rest/openapi/gift-cards/cashout)
request, specifies the reason for deactivation. In a Gift Card
redemption or inquiry response, specifies the reason for denial sent by
the processor.
giftcards_deactivate_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
transaction:
invoice: '192029'
giftcards_deactivate_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192029'
giftcards_deactivate_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
device:
terminalId: '1742'
transaction:
invoice: '192029'
giftcards_deactivate_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
- token
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
expirationDate: 1225
present: 'N'
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_deactivate_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
- token
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
expirationDate: 1225
present: 'N'
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
giftcards_deactivate_p2pe_idtech:
title: P2PE - ID TECH - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
p2pe:
data: >-
02B600C0170018009292;000442******0006=3012?*61A0453AB7145F1FA7685D2F27A745E129525EDAEA5BB7DBBAF49A5F876E3EE5000000000000000000000000000000000000000034343454343631383439629949500100382003E6FF4D03
format: '01'
transaction:
invoice: '192029'
giftcards_deactivate_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'Y'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
giftcards_deactivate_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'Y'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
giftcards_deactivate_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
- number
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumberGC'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
expirationDate: 1230
number: '2664654648774'
present: 'N'
transaction:
invoice: '192029'
CardResponseDeact:
type: object
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
entryMode:
$ref: '#/components/schemas/CardEntryMode'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
number:
$ref: '#/components/schemas/CardMaskedNumberGC'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeGCResp'
balance:
$ref: '#/components/schemas/CardBalance'
token:
$ref: '#/components/schemas/CardTokenGCResponse'
AmountTotalGCCashback:
type: number
maxLength: 14
example: 20
description: >
The amount you want to get back from the gift card. If this field is not
sent then the full balance of the card will be returned as cash.
giftcards_cashout_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
transaction:
invoice: '192029'
giftcards_cashout_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192029'
giftcards_cashout_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
device:
terminalId: '1742'
transaction:
invoice: '192029'
giftcards_cashout_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
- token
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
expirationDate: 1225
present: 'N'
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_cashout_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
- token
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
expirationDate: 1225
present: 'N'
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
giftcards_cashout_p2pe_idtech:
title: P2PE - ID TECH - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'N'
p2pe:
data: >-
02B600C0170018009292;000442******0006=3012?*61A0453AB7145F1FA7685D2F27A745E129525EDAEA5BB7DBBAF49A5F876E3EE5000000000000000000000000000000000000000034343454343631383439629949500100382003E6FF4D03
format: '01'
transaction:
invoice: '192029'
giftcards_cashout_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'Y'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
giftcards_cashout_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
card:
deactivationReason: Stolen
present: 'Y'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
giftcards_cashout_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- deactivationReason
- number
- present
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumberGC'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotalGCCashback'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
deactivationReason: Stolen
expirationDate: 1230
number: '2664654648774'
present: 'N'
transaction:
invoice: '192029'
CardResponseCashout:
type: object
properties:
deactivationReason:
$ref: '#/components/schemas/CardDeactivationReason'
entryMode:
$ref: '#/components/schemas/CardEntryMode'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
number:
$ref: '#/components/schemas/CardMaskedNumberGC'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeGCResp'
token:
$ref: '#/components/schemas/CardTokenGCResponse'
giftcards_reactivate_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
transaction:
invoice: '192029'
giftcards_reactivate_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192029'
giftcards_reactivate_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
device:
terminalId: '1742'
transaction:
invoice: '192029'
giftcards_reactivate_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
expirationDate: 1225
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_reactivate_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
expirationDate: 1225
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
giftcards_reactivate_p2pe_idtech:
title: P2PE - ID TECH - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
p2pe:
data: >-
02B600C0170018009292;000442******0006=3012?*61A0453AB7145F1FA7685D2F27A745E129525EDAEA5BB7DBBAF49A5F876E3EE5000000000000000000000000000000000000000034343454343631383439629949500100382003E6FF4D03
format: '01'
transaction:
invoice: '192029'
giftcards_reactivate_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
giftcards_reactivate_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
card:
present: 'Y'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
giftcards_reactivate_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
- number
properties:
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumberGC'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
expirationDate: 1230
number: '2664654648774'
present: 'Y'
transaction:
invoice: '192029'
giftcards_reload_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
transaction:
invoice: '192029'
giftcards_reload_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192029'
giftcards_reload_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- amount
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
terminalId: '1742'
transaction:
invoice: '192029'
giftcards_reload_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
expirationDate: 1225
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_reload_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
expirationDate: 1225
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
giftcards_reload_p2pe_idtech:
title: P2PE - ID TECH - MSR/Manual
type: object
required:
- dateTime
- amount
- card
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
p2pe:
data: >-
02B600C0170018009292;000442******0006=3012?*61A0453AB7145F1FA7685D2F27A745E129525EDAEA5BB7DBBAF49A5F876E3EE5000000000000000000000000000000000000000034343454343631383439629949500100382003E6FF4D03
format: '01'
transaction:
invoice: '192029'
giftcards_reload_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
giftcards_reload_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
giftcards_reload_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
card:
type: object
required:
- present
- number
properties:
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumberGC'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
card:
present: 'Y'
number: '2664654648774'
expirationDate: 1230
transaction:
invoice: '192029'
ApiOptionsGCBalance:
type: array
items:
type: string
example:
- RETURNHIST
writeOnly: true
description: >
API Options modify the request being made.
Value | Description
|
-----------|------------------------------------------------------------|
RETURNHIST | Return the gift card usage history in the `history` array.
|
giftcards_balance_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
transaction:
invoice: '192029'
giftcards_balance_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
transaction:
invoice: '192029'
giftcards_balance_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
device:
terminalId: '1742'
transaction:
invoice: '192029'
giftcards_balance_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
expirationDate: 1225
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_balance_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
expirationDate: 1225
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
giftcards_balance_p2pe_idtech:
title: P2PE - ID TECH - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
p2pe:
data: >-
02B600C0170018009292;000442******0006=3012?*61A0453AB7145F1FA7685D2F27A745E129525EDAEA5BB7DBBAF49A5F876E3EE5000000000000000000000000000000000000000034343454343631383439629949500100382003E6FF4D03
format: '01'
transaction:
invoice: '192029'
giftcards_balance_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
present: 'Y'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'Y'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
transaction:
invoice: '192029'
giftcards_balance_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- card
- transaction
- p2pe
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
properties:
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
card:
present: 'Y'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
transaction:
invoice: '192029'
giftcards_balance_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- present
- number
properties:
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumberGC'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateGC'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeGC'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
apiOptions:
$ref: '#/components/schemas/ApiOptionsGCBalance'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
expirationDate: 1230
number: '2664654648774'
present: 'Y'
transaction:
invoice: '192029'
AmountTotalOnly:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested.
Note: For merchants that are configured to allow multiple currencies,
the amount fields can specify up to three decimal places. However, the
number of decimal places can not exceed the number allowed for the
specified currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
giftcards_cancel_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: '8900004710343233'
transaction:
invoice: '192029'
giftcards_cancel_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: 87743q5p3ffhv67y
serialNumber: '123456'
transaction:
invoice: '192029'
cards_verify_comengdevice:
type: object
title: Commerce Engine For On Premise
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2025-11-06T09:18:23.283-07:00'
cards_verify_comengcloud:
type: object
title: Commerce Engine For Cloud
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- cloud
- manufacturer
- serialNumber
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressFinalResult:
$ref: '#/components/schemas/UISuppressFinalResult'
example:
dateTime: '2025-11-06T09:18:23.283-07:00'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
cards_verify_utgdevice:
type: object
title: UTG Controlled Device
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
terminalId: '1742'
cards_verify_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: '8048471746471119'
expirationDate: 1225
cards_verify_token_legacy:
title: Legacy TrueToken
type: object
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: 11191pn83hbkkety
serialNumber: '123456'
expirationDate: 1225
cards_verify_p2pe_idtech:
type: object
title: P2PE - ID TECH - EMV/MSR/Manual
required:
- dateTime
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
p2pe:
data: >-
027101801F2D1E00939B%*432100******1119^VS/DUAL
TRACK^2212******?*;432100******1119=2212******?*CECE3FCE7781142BEC8D0E267AE89F5D3C7E235BF1A70E637951E8D93003E5A2586C336CA4A3B31F6639B04005BB12A716D8BC4D3AB125C27AB11A9DDC02816569D42A20B036EE5E2C71CB70565FB43B000000000000000000000000000000000000000000000000000000000000000000000000000000003434345434363138343962994950010038200415953903
format: '01'
cards_verify_p2pe_tdesdukpt_emv:
type: object
title: P2PE - TDES DUKPT - EMV
required:
- dateTime
- card
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
type: object
required:
- tlvData
properties:
tlvData:
$ref: '#/components/schemas/EMVTlvData'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
entryMode: E
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
4F07A0000000041010500A4D61737465724361726457203CCEB572BE7DD0A38E62E6BD70E3DAACE9B46BD3BF65E188E7D8D68D2178DE1A5A10B1794BAC083B08F0A1444F189A5493255F201A546573742F4361726420303920202020202020202020202020205F24032512315F25031511015F2D02656E5F3401018407A0000000041010950508200000009B02C8009F02060000000004449F03060000000000009F34031E03009F3704C5BF918D9F390105
p2pe:
format: '05'
ksn: '6299495001100E200041'
cards_verify_p2pe_tdesdukpt_msr:
type: object
title: P2PE - TDES DUKPT - MSR/Manual
required:
- dateTime
- card
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
entryMode: '2'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
cards_verify_p2pe_onguardsde_emv:
type: object
title: P2PE - On-Guard SDE - EMV
required:
- dateTime
- card
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
type: object
required:
- tlvData
properties:
tlvData:
$ref: '#/components/schemas/EMVTlvDataOnguardSDE'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: 2023-124-13T09:18:23.283-07:00
card:
entryMode: E
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
cards_verify_p2pe_onguardsde_msr:
type: object
title: P2PE - On-Guard SDE - MSR/Manual
required:
- dateTime
- card
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
card:
entryMode: '2'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
cards_verify_unencryptedcard:
type: object
title: Card Number Unencrypted
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
type: object
properties:
indicator:
$ref: '#/components/schemas/CardSecurityCodeIndicator'
value:
$ref: '#/components/schemas/CardSecurityCodeValue'
transaction:
type: object
properties:
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
customer:
$ref: '#/components/schemas/Customer'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
number: '4321000000001119'
expirationDate: 1230
securityCode:
indicator: '1'
value: '333'
customer:
addressLine1: 65 Easy St
firstName: John
lastName: Smith
postalCode: '65144'
TransactionResponseCodeCardsVerify:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
- e
- f
description: >
Code indicating the Shift4 host response.
Value |
Description |
Details
-------|------------------------------------------------------------------|--------
A |
Approved | The
card was successfully verified.
D |
Declined | The
card failed verification.
e |
[Error](/guides/appendices/error-codes) | There
is an error condition.
f | [AVS or CSC
failure](/guides/response-handling/understanding-avs-and-csc-verification)|
An AVS or CSC failure has occurred (credit card only). **Note: This
value will only be returned if the [POSHANDLEAVSFAIL Api
Option](/guides/appendices/api-options#poshandleavsfail) was sent in the
request.**
ANIResponseCode:
type: string
enum:
- E
- A
- B
- C
- D
- F
- G
- H
- I
- J
- 'N'
- U
example: E
description: >
Account Name Inquiry Response Code. Returned if the `USEANI` API Option
and customer name information is sent in the request.
| ANI Response Code |
Description |
| ----------------- |
---------------------------------------------------------------------- |
| E | Full name:
match |
| A | First name: partial match, Last name:
match |
| B | First name: no match, Last name:
match |
| C | First name: match, Last name: partial
match |
| D | First name: match, Last name: no
match |
| F | First name: partial match, Last name: partial
match |
| G | First name: no match, Last name: partial
match |
| H | First name: partial match, Last name: no
match |
| I | Last name:
match |
| J | Last name: partial
match |
| N | First name: no match, Last name: no
match
or
Last name: no match |
| U | Name match not
performed |
AccountNameInquiryResponse:
type: object
properties:
aniResponseCode:
$ref: '#/components/schemas/ANIResponseCode'
cards_identify_utgdevice:
type: object
title: UTG Controlled Device
allOf:
- type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptPostalCode:
$ref: '#/components/schemas/DevicePromptPostalCode'
promptCardSecurityCode:
$ref: '#/components/schemas/DevicePromptCardSecurityCode'
promptStreetNumber:
$ref: '#/components/schemas/DevicePromptStreetNumber'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
terminalId: '1742'
cards_identify_token_gtv:
title: GTV Token
type: object
allOf:
- type: object
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: '8048471746471119'
expirationDate: 1225
cards_identify_token_legacy:
title: Legacy TrueToken
type: object
allOf:
- type: object
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: 11191pn83hbkkety
serialNumber: '123456'
expirationDate: 1225
cards_identify_p2pe_idtech:
type: object
title: P2PE - ID TECH - EMV/MSR/Manual
required:
- dateTime
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
p2pe:
data: >-
027101801F2D1E00939B%*432100******1119^VS/DUAL
TRACK^2212******?*;432100******1119=2212******?*CECE3FCE7781142BEC8D0E267AE89F5D3C7E235BF1A70E637951E8D93003E5A2586C336CA4A3B31F6639B04005BB12A716D8BC4D3AB125C27AB11A9DDC02816569D42A20B036EE5E2C71CB70565FB43B000000000000000000000000000000000000000000000000000000000000000000000000000000003434345434363138343962994950010038200415953903
format: '01'
cards_identify_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- card
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
emv:
type: object
required:
- tlvData
properties:
tlvData:
$ref: '#/components/schemas/EMVTlvData'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
entryMode: E
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
emv:
tlvData: >-
4F07A0000000041010500A4D61737465724361726457203CCEB572BE7DD0A38E62E6BD70E3DAACE9B46BD3BF65E188E7D8D68D2178DE1A5A10B1794BAC083B08F0A1444F189A5493255F201A546573742F4361726420303920202020202020202020202020205F24032512315F25031511015F2D02656E5F3401018407A0000000041010950508200000009B02C8009F02060000000004449F03060000000000009F34031E03009F3704C5BF918D9F390105
p2pe:
format: '05'
ksn: '6299495001100E200041'
cards_identify_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
allOf:
- type: object
required:
- dateTime
- card
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
entryMode: '2'
device:
manufacturer: PAX
model: A930
serialNumber: '1170301234'
capability:
contactlessEMV: 'N'
contactlessMSR: 'Y'
EMV: 'Y'
magstripe: 'Y'
manualEntry: 'Y'
quickChip: 'Y'
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
cards_identify_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
allOf:
- type: object
required:
- dateTime
- card
- device
- emv
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
emv:
type: object
required:
- tlvData
properties:
tlvData:
$ref: '#/components/schemas/EMVTlvDataOnguardSDE'
example:
dateTime: '2023-12-13T09:18:23.283-07:00'
card:
entryMode: E
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401018407A00000000310109F100706010A03A0A0009F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
cards_identify_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
allOf:
- type: object
required:
- dateTime
- card
- device
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
device:
type: object
required:
- manufacturer
- model
- serialNumber
- capability
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
example:
dateTime: 2023-124-13T09:18:23.283-07:00
card:
entryMode: '2'
device:
manufacturer: Ingenico
model: Axium DX8000
serialNumber: 20ACCD801843
capability:
contactlessEMV: 'Y'
contactlessMSR: 'N'
EMV: 'Y'
manualEntry: 'Y'
magstripe: 'Y'
PIN: 'Y'
quickChip: 'Y'
signature: 'Y'
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
cards_identify_unencryptedcard:
type: object
title: Card Number Unencrypted
allOf:
- type: object
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- number
- expirationDate
- entryMode
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
entryMode:
type: string
minLength: 1
maxLength: 1
enum:
- M
example: M
description: >
**Conditional: The Card Entry Mode should be sent in an
initial request; in subsequent requests, it should be left
blank or not sent.**
The method used to capture a payment card in an
authorization/sale request.
Value|Description
-----|-----------
M | Manual Entry
securityCode:
type: object
properties:
indicator:
$ref: '#/components/schemas/CardSecurityCodeIndicator'
value:
$ref: '#/components/schemas/CardSecurityCodeValue'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
number: '4321000000001119'
expirationDate: 1230
securityCode:
indicator: '1'
value: '333'
CardBin:
type: string
readOnly: true
maxLength: 8
example: '541333'
description: |
The first 6 or 8 digits of the card.
CardDccCapable:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
In BIN management, specifies whether or not the card is dynamic currency
conversion (DCC) capable.
CardDebitCapable:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
In BIN management, specifies whether a card can be processed as debit
(‘Y’) or not (‘N’).
CardLevelResultIdentify:
type: string
example: 1P
description: >
In BIN management, specifies the detailed card type. For a complete list
of potential values, see the [Card Level
Results]/guides/appendices/card-level-results) section in this
document's appendix.
CardResponseIdentify:
type: object
properties:
bin:
$ref: '#/components/schemas/CardBin'
dccCapable:
$ref: '#/components/schemas/CardDccCapable'
debitCapable:
$ref: '#/components/schemas/CardDebitCapable'
levelResult:
$ref: '#/components/schemas/CardLevelResultIdentify'
type:
$ref: '#/components/schemas/CardTypeResp'
DeviceDisplayText:
type: string
maxLength: 72
example: Please Sign
description: |
Optional field that specifies the text to display on the device.
DeviceNextStepType:
type: string
enum:
- idle
- none
- displayWait
- displayText
example: displayText
description: >
Determines the device behavior after processing the request. If no
additional request is received after 120 seconds the device will return
to idle as a failsafe.
| Value |
Description
|
| ----------- |
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
| idle | Return back to the idle
screen
|
| none | Stay on the same screen. A subsequent message must be
immediately sent or else the device will appear frozen to the
user. |
| displayWait | Displays a please wait
screen
|
| displayText | Displays custom text. The request must include at least
one of the following fields: `device.nextStep.header.value`,
`device.nextStep.subHeader.value` or `device.nextStep.text.value`. |
DeviceFormHeader:
type: object
properties:
value:
type: string
maxLength: 100
example: Header text goes here
description: |
Header text. Add `\r\n` to force a new line.
DeviceFormSubHeader:
type: object
properties:
value:
type: string
maxLength: 100
example: Sub Header text goes here
description: |
Sub Header text. Add `\r\n` to force a new line.
DeviceFormText:
type: object
properties:
value:
type: string
maxLength: 4096
example: Body text goes here
description: |
Body text. Add `\r\n` to force a new line.
DeviceNextStep:
type: object
description: >
An optional object used to control the device behavior after processing
the request. If included in the request, the `type` sub-field is
required
properties:
type:
$ref: '#/components/schemas/DeviceNextStepType'
header:
$ref: '#/components/schemas/DeviceFormHeader'
subHeader:
$ref: '#/components/schemas/DeviceFormSubHeader'
text:
$ref: '#/components/schemas/DeviceFormText'
UIRequest:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
devices_promptsignature_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
displayText:
$ref: '#/components/schemas/DeviceDisplayText'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
ui:
$ref: '#/components/schemas/UIRequest'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
devices_promptsignature_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- cloud
- manufacturer
- serialNumber
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
displayText:
$ref: '#/components/schemas/DeviceDisplayText'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
ui:
$ref: '#/components/schemas/UIRequest'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
DeviceOnlyTID:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
devices_promptsignature_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceOnlyTID'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
terminalId: '1742'
DevicePromptConfirmationQuestion:
type: string
maxLength: 64
writeOnly: true
example: Rewards Program
description: |
This field displays an inquiry prompting a consumer's confirmation.
DevicePromptConfirmationResult:
type: string
maxLength: 1
readOnly: true
enum:
- 'Y'
- 'N'
example: 'N'
description: >
In the response to a Prompt Confirmation request, this field specifies
whether the consumer has opted to confirm ('Y') or deny ('N') the
requested value.
DevicePromptConfirmationValue:
type: string
maxLength: 4096
writeOnly: true
example: Would you like to join our rewards program?
description: >
This field displays text, such as an email address or legal text, for a
consumer’s confirmation.
DevicePromptConfirmation:
type: object
properties:
question:
$ref: '#/components/schemas/DevicePromptConfirmationQuestion'
result:
$ref: '#/components/schemas/DevicePromptConfirmationResult'
value:
$ref: '#/components/schemas/DevicePromptConfirmationValue'
DevicePromptTermsAndConditionsAckCheckBox:
type: boolean
writeOnly: true
example: true
description: >
Send `true` to enable the acknowledgement check box or `false` to
disable it. Defaults to `true` if not sent.
DevicePromptTermsAndConditionsAckText:
type: string
maxLength: 100
writeOnly: true
example: I agree to the End User Agreement
description: >
Contains the text to display in the acknowledgement check box. If not
sent, the acknowledgement check box will display `I agree to the terms
and conditions`.
DevicePromptTermsAndConditionsHeader:
type: string
maxLength: 100
writeOnly: true
example: End User License Agreement
description: >
Contains the text to display in the header. If not sent, the header will
display `Terms and Conditions`.
DevicePromptTermsAndConditionsValue:
type: string
maxLength: 4096
writeOnly: true
example: Terms and Conditions
description: >
Contains the Terms and Conditions text for the UTG or Commerce Engine
controlled PIN pad to display to a consumer. Add `\r\n` to force a new
line.
DevicePromptTermsAndConditionsComEng:
type: object
required:
- value
properties:
ackCheckBox:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsAckCheckBox'
ackText:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsAckText'
header:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsHeader'
value:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsValue'
devices_termsandconditions_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- promptTermsAndConditions
properties:
promptTermsAndConditions:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsComEng'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
ui:
$ref: '#/components/schemas/UIRequest'
devices_termsandconditions_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- cloud
- manufacturer
- serialNumber
- promptTermsAndConditions
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
promptTermsAndConditions:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsComEng'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
ui:
$ref: '#/components/schemas/UIRequest'
DevicePromptTermsAndConditionsResult:
type: string
maxLength: 1
readOnly: true
enum:
- A
- D
example: A
description: >
Returns the result of the Terms and Conditions screen on the PIN pad
(based on the consumer’s input).
Value| Description
-----|------------
A | Accepted
D | Declined
DevicePromptTermsAndConditions:
type: object
required:
- value
properties:
result:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsResult'
value:
$ref: '#/components/schemas/DevicePromptTermsAndConditionsValue'
devices_termsandconditions_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
- promptTermsAndConditions
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
promptTermsAndConditions:
$ref: '#/components/schemas/DevicePromptTermsAndConditions'
DeviceLineItemsArray:
type: array
minItems: 1
maxItems: 10
items:
type: string
example:
- Hamburger
- Fries
- Soda
- Cookie
description: |
An array of line items to display on the UTG-controlled device.
DeviceTerminalIdDevicesInfo:
type: string
example: GBAIOQAN11
description: |
Terminal ID configured for the device.
DeviceModelDevicesInfo:
type: string
maxLength: 50
example: A800
description: |
Specifies the model of the device.
HardwareCPU:
type: string
example: cortex-a53 (8 cores @ 1.8 GHz)
description: |
The CPU model information.
HardwareRamMb:
type: string
example: '1854'
description: |
The total amount of RAM in megabytes.
HardwareStorageMbTotal:
type: string
example: '12297'
description: |
The amount of total storage space in megabytes.
HardwareStorageMbFree:
type: string
example: '9869'
description: |
The amout of free storage space in megabytes.
HardwareStorageMbUsed:
type: string
example: '2428'
description: |
The amout of used storage space in megabytes.
HardwareBatteryLevel:
type: string
example: '83'
description: >
The current battery level on the device. Returns `null` if the device
does not have a battery
FirmwareFirmwareVersion:
type: string
example: PayDroid_10.0.0_Eucalyptus_V20.1.28_20250915/4.11.00_20250120
description: |
The firmware version.
FirmwareAndroidVersion:
type: string
example: '10'
description: |
The Android OS version.
FirmwareEMVKernelVersion:
type: string
example: v659 2025.02.26
description: |
The EMV kernel version.
FirmwareCTLSKernelVersion:
type: string
example: >-
v558 2025.04.10;v359_02 2025.02.20;v557_01 2024.01.15;v252_01
2023.02.09;v155 2024.12.19;v353 2025.01.22;v153_02 2024.12.05;v253
2025.01.10;v153 2025.09.09
description: |
The card brand contactless kernel versions.
SecurityP2PEVersion:
type: string
example: 2.0.6.211.3.0
description: |
The P2PE application version
SecurityPCIHardwareVersion:
type: string
example: A800-0AW-RE6-10AA
description: |
The PCI hardware version
SecurityPCIFirmwareVersion:
type: string
example: secver_26.01.0128;firmver_26.01.0128
description: |
The PCI firmware version
ApplicationsArray:
type: array
items:
type: object
properties:
name:
type: string
example: Commerce Engine
description: |
Application name
packageName:
type: string
example: com.priv.shift4.commerceengine
description: |
Application package name
versionName:
type: string
example: 2.14.0
description: |
Application version name
versionCode:
type: number
example: 2140000
description: |
Application version code
example:
- name: Commerce Engine
packageName: com.priv.shift4.commerceengine
versionName: 2.14.0
versionCode: 2140000
- name: Shift4 SOLO
packageName: com.shift4.bonepony
versionName: 2.149.0
versionCode: 2149000
ConnectivityActiveInterface:
type: string
example: wifi
description: |
The network interface that is active on the device
ConnectivityIP:
type: string
example: 192.168.4.200
description: |
The device IP address
ConnectivityGateway:
type: string
example: 192.168.4.1
description: |
Default gateway
ConnectivitySubnetMask:
type: string
example: 255.255.255.0
description: |
Subnet mask
ConnectivityDNS1:
type: string
example: 8.8.8.8
description: |
Primary DNS server address
ConnectivityDNS2:
type: string
example: 8.8.4.4
description: |
Secondary DNS server address
ConnectivityInterfaces:
type: object
properties:
ethernet:
type: object
properties:
mac:
type: string
example: F4:02:23:43:69:FD
description: |
Ethernet MAC address
isUp:
type: string
enum:
- 'Y'
- 'N'
example: 'N'
description: >
Returns 'Y' if the interface is up and `N` if the interface is
down.
wifi:
type: object
properties:
mac:
type: string
example: F4:02:23:7F:57:C6
description: |
Wi-Fi MAC address
ssid:
type: string
example: MerchantWiFi
description: |
Wi-Fi SSID
isUp:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
Returns 'Y' if the interface is up and `N` if the interface is
down.
signalStrength:
type: string
example: '-46 dBm'
description: |
The Wi-Fi signal strength
cellular:
type: object
properties:
imei:
type: string
example: '354970460015528'
description: |
Cellular International Mobile Equipment Identity (IMEI) value
iccid:
type: string
example: '8901240204204081862'
description: |
Cellular Integrated Circuit Card Identifier (ICCID)
carrier:
type: string
example: T-Mobile
description: |
Cellular mobile network carrier
isUp:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
Returns 'Y' if the interface is up and `N` if the interface is
down.
signalStrength:
type: string
example: '-50 dBm'
description: |
The Cellular signal strength
example:
wifi:
mac: F4:02:23:7F:57:C6
ssid: MerchantWiFi
isUp: 'Y'
signalStrength: '-46 dBm'
cellular:
imei: '354970460015528'
iccid: '8901240204204081862'
carrier: T-Mobile
isUp: 'Y'
signalStrength: '-50 dBm'
UILanguageResponse:
type: string
example: en
description: >
ISO 639-1 2-letter language code specifying the UI display language
(e.g. "en", "fr", "de").
UISupportedLanguages:
type: array
items:
type: string
example:
- en
- fr
- es
- de
- it
- nl
- pt
- lt
- 'no'
- sv
- da
- ro
- cs
- fi
- pl
description: >
Array of ISO 639-1 2-letter language codes supported by the device (e.g.
"en", "fr", "de").
devices_info_comeng:
title: Commerce Engine
type: object
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdDevicesInfo'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModelDevicesInfo'
hardware:
type: object
properties:
cpu:
$ref: '#/components/schemas/HardwareCPU'
ramMb:
$ref: '#/components/schemas/HardwareRamMb'
storageMbTotal:
$ref: '#/components/schemas/HardwareStorageMbTotal'
storageMbFree:
$ref: '#/components/schemas/HardwareStorageMbFree'
storageMbUsed:
$ref: '#/components/schemas/HardwareStorageMbUsed'
batteryLevel:
$ref: '#/components/schemas/HardwareBatteryLevel'
firmware:
type: object
properties:
firmwareVersion:
$ref: '#/components/schemas/FirmwareFirmwareVersion'
androidVersion:
$ref: '#/components/schemas/FirmwareAndroidVersion'
emvKernelVersion:
$ref: '#/components/schemas/FirmwareEMVKernelVersion'
ctlsKernelVersion:
$ref: '#/components/schemas/FirmwareCTLSKernelVersion'
security:
type: object
properties:
p2peVersion:
$ref: '#/components/schemas/SecurityP2PEVersion'
pciHardwareVersion:
$ref: '#/components/schemas/SecurityPCIHardwareVersion'
pciFirmwareVersion:
$ref: '#/components/schemas/SecurityPCIFirmwareVersion'
applications:
$ref: '#/components/schemas/ApplicationsArray'
connectivity:
type: object
properties:
activeInterface:
$ref: '#/components/schemas/ConnectivityActiveInterface'
ip:
$ref: '#/components/schemas/ConnectivityIP'
gateway:
$ref: '#/components/schemas/ConnectivityGateway'
subnetMask:
$ref: '#/components/schemas/ConnectivitySubnetMask'
dns1:
$ref: '#/components/schemas/ConnectivityDNS1'
dns2:
$ref: '#/components/schemas/ConnectivityDNS2'
interfaces:
$ref: '#/components/schemas/ConnectivityInterfaces'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageResponse'
supportedLanguages:
$ref: '#/components/schemas/UISupportedLanguages'
server:
$ref: '#/components/schemas/Server'
DeviceInfoArray:
type: array
items:
type: string
description: |
An array of details regarding a UTG-controlled device.
example:
- NUMBER_MSR_SWIPES=1634
- NUMBER_BAD_TRACK1_READS=85
- NUMBER_BAD_TRACK2_READS=395
- NUMBER_BAD_TRACK3_READS=337
- NUMBER_SIGNATURE_TOTALS=0000
- NUMBER_REBOOTS=0760
- TERMINAL_NAME=iPP350
- UNIT_SERIAL_NUMBER=2013016PT012622
- OS_VERSION=5220
- APPLICATION_VERSION=2156
- SECURITY_LIBRARY_VERSION=0415
- TDA_VERSION=1603
- EFTL_VERSION=0000
- EFTP_VERSION=0000
- RAM_SIZE=8628
- FLASH_SIZE=111064
- MANUFACTURE_DATE=2013-01-16
- CPEM_TYPE=1
- PEN_STATUS=UNSUPPORTED_DEVICE
- APPLICATION_NAME=Retail Base
- MANUFACTURE_ID=INGNAR
- DIGITIZER_VERSION=0000
- MANUFACTURER_SERIAL_NUMBER=71429877
- DUKPT0=F876543210016F8000F7
- DUKPT4=FFFF49003614954000B9
devices_info_utgingenico:
title: UTG Ingenico
type: object
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
info:
$ref: '#/components/schemas/DeviceInfoArray'
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
device:
info:
- NUMBER_MSR_SWIPES=1634
- NUMBER_BAD_TRACK1_READS=85
- NUMBER_BAD_TRACK2_READS=395
- NUMBER_BAD_TRACK3_READS=337
- NUMBER_SIGNATURE_TOTALS=0000
- NUMBER_REBOOTS=0760
- TERMINAL_NAME=iPP350
- UNIT_SERIAL_NUMBER=2013016PT012622
- OS_VERSION=5220
- APPLICATION_VERSION=2156
- SECURITY_LIBRARY_VERSION=0415
- TDA_VERSION=1603
- EFTL_VERSION=0000
- EFTP_VERSION=0000
- RAM_SIZE=8628
- FLASH_SIZE=111064
- MANUFACTURE_DATE=2013-01-16
- CPEM_TYPE=1
- PEN_STATUS=UNSUPPORTED_DEVICE
- APPLICATION_NAME=Retail Base
- MANUFACTURE_ID=INGNAR
- DIGITIZER_VERSION=0000
- MANUFACTURER_SERIAL_NUMBER=71429877
- DUKPT0=F876543210016F8000F7
- DUKPT4=FFFF49003614954000B9
terminalId: '1742'
server:
name: U2API01CE
devices_info_utgverifone:
title: UTG Verifone
type: object
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
info:
$ref: '#/components/schemas/DeviceInfoArray'
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
device:
info:
- APPLICATION_VERSION=4.9.2-20170530
- XPI_VERSION=0052.00v-20170530
- XPI_KERNEL_VERSION=000270000
- OS_VERSION=MX200001/RFS30250600/
- PACKAGES_INSTALLED=alsa-lib:1.0.0; busybox:1.2.6.2
- GUI_MANAGER_VERSION=3.25
- UNIT_ID=288-728-276/12000000
- UNIT_MODEL=MX915
- RFIDFW_VERSION=VOS-CTLS-4.02.04A
- DEVICE_TIME=20210416180022
- SECURE_PACKETS=aes
- DUKPT0=FFFF5B0999000220024F
- ADE0=FFFF4950720008800875
terminalId: '1742'
server:
name: U2API01CE
devices_reset_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
devices_reset_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
UISuppressAll:
type: boolean
example: 'true'
description: >
When `true`, the terminal suppresses all UI.
Example use case: capturing employee/badge swipe data without displaying
Commerce Engine UI.
VolumeSuppressBeeper:
type: boolean
example: true
description: >
When `true`, the terminal suppresses all audible beeper output during
the card-read window only — Contactless tap confirmation, MSR swipe,
error/decline tones.
Volume:
type: object
properties:
suppressBeeper:
$ref: '#/components/schemas/VolumeSuppressBeeper'
Timeout:
type: number
example: 0
description: >
Optional field that will set the timeout value in seconds.
Sending `0` will set an indefinite timeout that can only be cancelled by
sending a /devices/reset request. Commerce Engine will use its default
value if not sent.
devices_promptcardread_comengdevice:
title: Commerce Engine For On Premise
required:
- dateTime
properties:
apiOptions:
$ref: '#/components/schemas/ApiOptions'
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
displayText:
$ref: '#/components/schemas/DeviceDisplayText'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressAll:
$ref: '#/components/schemas/UISuppressAll'
volume:
$ref: '#/components/schemas/Volume'
timeout:
$ref: '#/components/schemas/Timeout'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
devices_promptcardread_comengcloud:
title: Commerce Engine For Cloud
required:
- dateTime
- device
properties:
apiOptions:
$ref: '#/components/schemas/ApiOptions'
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- cloud
- manufacturer
- serialNumber
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
displayText:
$ref: '#/components/schemas/DeviceDisplayText'
ui:
type: object
properties:
language:
$ref: '#/components/schemas/UILanguageRequest'
mode:
$ref: '#/components/schemas/UIMode'
suppressAll:
$ref: '#/components/schemas/UISuppressAll'
volume:
$ref: '#/components/schemas/Volume'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
devices_promptcardread_utgdevice:
title: UTG Controlled Device
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
CardEntryModeResponseTrackOnly:
type: string
minLength: 1
maxLength: 1
enum:
- '1'
- '2'
example: '2'
description: >
The method used to capture a payment card in an authorization/sale
request.
Value|Description
-----|-----------
1 | Track 1 Only or Dual Track (Track 1 & 2)
2 | Track 2 Only
P2PEFormat:
type: string
minLength: 2
maxLength: 2
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
example: '01'
description: |
Classifies the type of payment device being used for P2PE.
Value|Description
-----|-----------
01 | IDTech Enhanced Encryption format
02 | IDTech Enhanced Encryption format USB HID
03 | Ingenico format
04 | VeriFone format
05 | Shift4 TDES DUKPT format
07 | AES 128 or 256
P2PE:
type: object
required:
- data
- format
properties:
data:
$ref: '#/components/schemas/P2PEData'
format:
$ref: '#/components/schemas/P2PEFormat'
ksn:
$ref: '#/components/schemas/P2PEKSN'
DevicePromptInputIndex:
type: string
maxLength: 3
example: '005'
description: >
This field specifies a value to be collected from a consumer using a
UTG-controlled PIN pad.
Value| Description | Return Format
-----|--------------------------------------|-------------------------
001 | Card Security Code | Numeric
002 | Street Number | Numeric
003 | ZIP Code | Numeric
004 | Social Security Number (SSN) | Numeric, no formatting
005 | Last 4 of SSN | Numeric
006 | Date of Birth | MM/DD/YYYY
007 | Annual Income | Numeric, no formatting
008 | Home Phone Number | Numeric, no formatting
009 | Business Phone Number | Numeric, no formatting
010 | Email Address (Requires Touchscreen) | Alphanumeric
011 | Driver's ID (Requires Touchscreen) | Alphanumeric
012 | Tip | Numeric
DevicePromptInputResult:
type: string
maxLength: 4096
readOnly: true
example: '981280913'
description: >
This field contains the value collected from a consumer using a
UTG-controlled PIN pad.
DevicePromptInput:
type: object
required:
- index
properties:
index:
$ref: '#/components/schemas/DevicePromptInputIndex'
result:
$ref: '#/components/schemas/DevicePromptInputResult'
devices_promptinput_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- promptInput
properties:
promptInput:
$ref: '#/components/schemas/DevicePromptInput'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
ui:
$ref: '#/components/schemas/UIRequest'
devices_promptinput_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- cloud
- manufacturer
- serialNumber
- promptInput
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
promptInput:
$ref: '#/components/schemas/DevicePromptInput'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
ui:
$ref: '#/components/schemas/UIRequest'
devices_promptinput_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
- promptInput
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
promptInput:
$ref: '#/components/schemas/DevicePromptInput'
DeviceFormButtonArray:
type: array
minItems: 1
maxItems: 4
items:
type: object
required:
- id
- text
properties:
id:
type: string
description: >
ID value used to identify which button is pressed.
The ID of the button the user selected is returned in the
`result.form.buttonSelected.id` response field.
text:
type: string
maxLength: 114
description: >
Text to display on the button.
The text of the button the user selected is returned in the
`result.form.buttonSelected.text` response field.
example:
- id: '1'
text: Accept
- id: '2'
text: Decline
description: |
Array of 1 - 4 buttons to be displayed on the device.
DeviceFormTimeout:
type: number
minimum: 1
maximum: 600
example: 120
description: >
The number of seconds until the custom form will timeout. Defaults to
120 seconds if `form.timeout` is not sent in the request.
DeviceProcessFormTypeMultiButtonScrollingText:
title: Multi Button Scrolling Text
required:
- type
- buttons
properties:
type:
type: string
enum:
- multiButtonScrollingText
description: >
Displays a form with header text, subheader text, scrolling body
text and up to 4 buttons.
When using this custom form type at least one of the following
fields must also be included in the request:
- `form.header`
- `form.subHeader`
- `form.text`
header:
$ref: '#/components/schemas/DeviceFormHeader'
subHeader:
$ref: '#/components/schemas/DeviceFormSubHeader'
text:
$ref: '#/components/schemas/DeviceFormText'
buttons:
$ref: '#/components/schemas/DeviceFormButtonArray'
timeout:
$ref: '#/components/schemas/DeviceFormTimeout'
DeviceProcessFormTypeMessage:
title: Message
type: object
required:
- type
properties:
type:
type: string
enum:
- message
description: >
Displays a message based form with header text, subheader text, and
body text.
When using this custom form type at least one of the following
fields must also be included in the request:
- `form.header`
- `form.subHeader`
- `form.text`
header:
$ref: '#/components/schemas/DeviceFormHeader'
subHeader:
$ref: '#/components/schemas/DeviceFormSubHeader'
text:
$ref: '#/components/schemas/DeviceFormText'
timeout:
$ref: '#/components/schemas/DeviceFormTimeout'
DeviceFormQRCode:
type: object
properties:
value:
type: string
minLength: 1
maxLength: 1024
example: www.shift4.com
description: >
Contains the QR Code URL string. This value will be converted to a
QR code and displayed on the device.
DeviceFormFooter:
type: object
properties:
value:
type: string
maxLength: 100
example: Footer text goes here
description: |
Footer text. Add `\r\n` to force a new line.
DeviceProcessFormTypeQRDisplay:
title: QR Display
type: object
required:
- type
- qrCode
properties:
type:
type: string
enum:
- qrDisplay
description: >
Displays a QR code based form with header text, a QR code image and
footer text.
qrCode:
$ref: '#/components/schemas/DeviceFormQRCode'
header:
$ref: '#/components/schemas/DeviceFormHeader'
footer:
$ref: '#/components/schemas/DeviceFormFooter'
timeout:
$ref: '#/components/schemas/DeviceFormTimeout'
devices_processform_comengdevice:
title: Commerce Engine For On Premise
required:
- dateTime
- form
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
form:
oneOf:
- $ref: >-
#/components/schemas/DeviceProcessFormTypeMultiButtonScrollingText
- $ref: '#/components/schemas/DeviceProcessFormTypeMessage'
- $ref: '#/components/schemas/DeviceProcessFormTypeQRDisplay'
device:
type: object
properties:
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
ui:
$ref: '#/components/schemas/UIRequest'
devices_processform_comengcloud:
title: Commerce Engine For Cloud
required:
- dateTime
- device
- form
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- cloud
- manufacturer
- serialNumber
properties:
cloud:
$ref: '#/components/schemas/DeviceCloud'
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
nextStep:
$ref: '#/components/schemas/DeviceNextStep'
form:
oneOf:
- $ref: >-
#/components/schemas/DeviceProcessFormTypeMultiButtonScrollingText
- $ref: '#/components/schemas/DeviceProcessFormTypeMessage'
- $ref: '#/components/schemas/DeviceProcessFormTypeQRDisplay'
ui:
$ref: '#/components/schemas/UIRequest'
DeviceFormName:
type: string
maxLength: 12
example: PF2
description: >
Specifies a 12-character, alphanumeric string containing the form name
to display on a UTG-controlled PIN pad. The file extension should not be
included in the value.
DeviceFormItems:
type: object
writeOnly: true
properties:
key:
type: string
writeOnly: true
maxLength: 5
example: '1'
description: >
A five-character, alphanumeric string containing the ID of the field
which you want to display a custom value on.
value:
type: string
writeOnly: true
maxLength: 200
example: John Smith
description: >
The value that should be displayed in the field specified by the
key.
DeviceFormItemsArray:
type: array
items:
$ref: '#/components/schemas/DeviceFormItems'
example:
- key: 1
value: John Smith
- key: 2
value: 123 Open St
description: |
An array of key/value pairs used to populate fields on the custom form
DeviceFormUTG:
type: object
required:
- name
properties:
name:
$ref: '#/components/schemas/DeviceFormName'
items:
$ref: '#/components/schemas/DeviceFormItemsArray'
devices_processform_utgdevice:
title: UTG Controlled Device
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
- form
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
form:
$ref: '#/components/schemas/DeviceFormUTG'
DeviceFormResult:
type: string
maxLength: 5
readOnly: true
example: '87'
description: >
A five-character, alphanumeric string containing the ID of the button
pressed by the consumer on a UTG-controlled PIN pad.
DeviceFormResponse:
type: object
properties:
name:
$ref: '#/components/schemas/DeviceFormName'
result:
$ref: '#/components/schemas/DeviceFormResult'
devices_processform_response_utg:
title: UTG Controlled Device
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
form:
$ref: '#/components/schemas/DeviceFormResponse'
server:
$ref: '#/components/schemas/Server'
devices_processform_response_comeng_message:
title: Commerce Engine Form Type message
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
server:
$ref: '#/components/schemas/Server'
devices_processform_response_comeng_multiButtonScrollingText:
title: Commerce Engine Form Type multiButtonScrollingText
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
server:
$ref: '#/components/schemas/Server'
form:
type: object
properties:
buttonSelected:
type: object
properties:
id:
type: string
example: '1'
description: >
ID value identifying which button was selected.
Matches the value recieved in the `form.buttons.id`
request field.
text:
type: string
maxLength: 114
example: Accepted
description: >
Button text value of the button that was selected.
Matches the value recieved in the `form.buttons.text`
request field.
PrintFormat:
type: string
enum:
- structured
example: structured
description: |
Specifies the receipt printing format being used.
PrintFormatVersion:
type: string
enum:
- '1.0'
example: '1.0'
description: |
Specifies the receipt printing format version being used.
PrintDataAlignment:
type: string
enum:
- center
- left
- right
example: center
description: |
Specifies where the print element should be aligned
PrintDataBMP:
title: BMP Image
type: object
description: >
Used to print images, such as a company logo in BPM format. Can also be
used to print the full receipt if the entire receipt data is formatted
into a BMP image.
required:
- type
- alignment
- value
properties:
type:
type: string
enum:
- bmp
alignment:
$ref: '#/components/schemas/PrintDataAlignment'
value:
type: string
description: |
Base64 encoded BMP image data
PrintDataArray:
type: array
items:
$ref: '#/components/schemas/PrintDataBMP'
description: |
Array containing the value to print.
example:
- type: bmp
alignment: center
value: >-
Qk1+BgAAAAAAAD4AAAAoAAAAZAAAAGQAAAABAAEAAAAAAEAGAAAjLgAAIy4AAAAAAAAAAAAAAAAAAP///wD////////////////wAAAA////////D///////8AAAAP/////3AAAP//////AAAAD/////8AAAAN/////wAAAA/////4AAAAAf////8AAAAP////4AAAAAB/////AAAAD////wAAAAAAD////wAAAA////wAAAAAAAf///8AAAAP///4AAAAAAAB////AAAAD///4AAAAAAAAH///wAAAA///8AAAAAAAAA///8AAAAP//8AAAAAAAAAD///AAAAD//+AAAAAAAAAAf//wAAAA///AAAAAAAAAAD//8AAAAP//gAAAAAAAAAAf//AAAAD//wAAAAAAAAAAD//wAAAA//4AAAAAAAAAAAf/8AAAAP/8AAAAAAAAAAAD//AAAAD/+AAAAAAAAAAAAf/wAAAA//AAAAAAAAAAAAD/8AAAAP/gAAAAAAAAAAAAf/AAAAD/4AAAAAAD/AAAAH/wAAAA/8AAAAAAA/wAAAA/8AAAAP+AAAAAAAP8AAAAH/AAAAD/gAAAAAAD/AAAAB/wAAAA/wAAAAAAA/wAAAAP8AAAAP4AAAAAAAP8AAAAD/AAAAD+AAAAAAAD/AAAAAfwAAAA/AAAAAAAA/wAAAAD8AAAAPwAAAAAAAP8AAAAA/AAAAD8AAAAAAAD/AAAAAPwAAAA+AAAAAAAA/wAAAAB8AAAAPgAAAAAAAP8AAAAAfAAAADwAAAAAAAD/AAAAADwAAAA8AAAAAAAA/wAAAAA8AAAAPAAAAAAAAP8AAAAAPAAAADgAAAAAAAD/AAAAABwAAAA4AAAD/////wAAAAAcAAAAOAAAA/////8AAAAAHAAAADgAAAf/////AAAAABwAAAAgAAAH/////wAAAAAMAAAAMAAAB/////8AAAAADAAAADAAAAf/////AAAAAAwAAAAwAAAD/////wAAAAAMAAAAMAAAAf9///8AAAAADAAAADAAAAD/AAD/AAAAAAwAAAAwAAAA/4AA/wAAAAAMAAAAIAAAAH/AAP8AAAAADAAAAAAAAAA/wAD/AAAAAAQAAAAAAAAAH+AA/wAAAAAEAAAAAAAAAB/wAP8AAAAABAAAACAAAAAP+AD/AAAAAAQAAAAgAAAAB/wA/wAAAAAMAAAAMAAAAAP8AP8AAAAADAAAADAAAAAB/gD/AAAAAAwAAAAwAAAAAf8A/wAAAAAMAAAAMAAAAAD/gP8AAAAADAAAADAAAAAAf4D/AAAAAAwAAAAwAAAAAD/A/wAAAAAMAAAAIAAAAAA/4P8AAAAADAAAADgAAAAAH/D/AAAAABwAAAA4AAAAAA/4/wAAAAAcAAAAOAAAAAAH+P8AAAAAHAAAADgAAAAAA/z/AAAAABwAAAA8AAAAAAP+/wAAAAA8AAAAPAAAAAAB//8AAAAAPAAAADwAAAAAAP//AAAAADwAAAA+AAAAAAB//wAAAAB8AAAAPgAAAAAAf/8AAAAAfAAAAD4AAAAAAD//AAAAAPwAAAA/AAAAAAAf/wAAAAD8AAAAPwAAAAAAD/8AAAAA/AAAAD+AAAAAAAf/AAAAAfwAAAA/gAAAAAAH/wAAAAH8AAAAP8AAAAAAA/8AAAAD/AAAAD/gAAAAAAH/AAAAB/wAAAA/4AAAAAAA/wAAAAf8AAAAP/AAAAAAAP8AAAAP/AAAAD/4AAAAAAB/AAAAH/wAAAA/+AAAAAAAFAAAAB/8AAAAP/wAAAAAAAAAAAA//AAAAD/+AAAAAAAAAAAAf/wAAAA//wAAAAAAAAAAAP/8AAAAP/+AAAAAAAAAAAH//AAAAD//wAAAAAAAAAAD//wAAAA//+AAAAAAAAAAB//8AAAAP//wAAAAAAAAAA///AAAAD//+AAAAAAAAAAf//wAAAA///wAAAAAAAAAP//8AAAAP///AAAAAAAAAP///AAAAD///4AAAAAAAAH///wAAAA////gAAAAAAAH///8AAAAP///8AAAAAAAD////AAAAD////wAAAAAAD////wAAAA/////AAAAAAH////8AAAAP////+AAAAAH/////AAAAD/////8AAAAP/////wAAAA//////8AAA7/////8AAAAP///////gf///////AAAAD///////+f///////wAAAA
Print:
type: object
description: >
Object contain elements for printing. See the [Supporting Built-In
Receipt Printing Capability on
Devices](/guides/core-concepts/printing-receipts#supporting-built-in-receipt-printing-capability-on-devices)
required:
- format
- version
- data
properties:
format:
$ref: '#/components/schemas/PrintFormat'
version:
$ref: '#/components/schemas/PrintFormatVersion'
data:
$ref: '#/components/schemas/PrintDataArray'
devices_print_comengdevice_structured:
title: Commerce Engine For On Premise - Structured
type: object
required:
- dateTime
- print
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
print:
$ref: '#/components/schemas/Print'
devices_print_comengcloud_structured:
title: Commerce Engine For Cloud - Structured
type: object
required:
- dateTime
- device
- print
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
print:
$ref: '#/components/schemas/Print'
ReceiptDevicesPrint:
type: object
required:
- key
- printValue
properties:
key:
type: string
maxLength: 100
example: print
description: |
Must be sent as `print`.
printValue:
type: string
example: Text to print goes here
description: |
The text that you want to print on the receipt.
ReceiptArrayDevicesPrint:
type: array
items:
$ref: '#/components/schemas/ReceiptDevicesPrint'
example:
- key: print
printValue: Text to print goes here
description: >
Array containing the receipt text data to print. See the [Supporting
Built-In Receipt Printing Capability on
Devices](/guides/core-concepts/printing-receipts#supporting-built-in-receipt-printing-capability-on-devices)
devices_print_comengdevice_legacy:
title: Commerce Engine On Premise - Legacy
type: object
required:
- dateTime
- receipt
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
receipt:
$ref: '#/components/schemas/ReceiptArrayDevicesPrint'
devices_print_comengcloud_legacy:
title: Commerce Engine Cloud - Legacy
type: object
required:
- dateTime
- device
- receipt
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
receipt:
$ref: '#/components/schemas/ReceiptArrayDevicesPrint'
devices_print_utgdevice:
title: UTG Controlled Device
type: object
required:
- dateTime
- device
- receipt
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceOnlyTID'
receipt:
$ref: '#/components/schemas/ReceiptArrayDevicesPrint'
devices_getstatus_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
devices_getstatus_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
example:
dateTime: '2024-05-21T09:18:23.283-07:00'
device:
cloud: true
manufacturer: PAX
serialNumber: '1170301234'
CloudRegistered:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Specifies whether or not the device is registerd with the cloud service.
| Value | Description |
|-------|----------------------------------------------------------|
| Y | Device is successfully registered with the cloud service |
| N | Device is not registered with the cloud service |
CloudConnected:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
Specifies whether or not the device is successfully connected to the
cloud service.
| Value | Description |
|-------|----------------------------------------------------------|
| Y | Device is successfully connected to the cloud service |
| N | Device is unable to connect to the cloud service |
OfflineMode:
type: string
enum:
- 'Y'
- 'N'
- U
example: 'N'
description: >
Specifies whether or not the device is in offline mode.
| Value | Description |
|-------|--------------------|
| Y | Device is offline |
| N | Device is online |
| U | Offline status is unknown. For example, when sending the Get
Device Status command via Commerce Engine For Cloud and the device is
not connected.|
AmountPromptTip:
type: object
required:
- total
properties:
total:
type: number
maxLength: 14
example: 100
description: >
The total transaction amount. Used as the seed for calculating the
tip amount when using preset percentages.
tipBasis:
$ref: '#/components/schemas/AmountTipBasis'
devices_prompttip_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
- amount
- tip
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountPromptTip'
tip:
$ref: '#/components/schemas/TipObject'
ui:
$ref: '#/components/schemas/UIRequest'
devices_prompttip_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- amount
- tip
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountPromptTip'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
tip:
$ref: '#/components/schemas/TipObject'
ui:
$ref: '#/components/schemas/UIRequest'
AmountTipResponse:
type: number
maxLength: 14
example: 20
description: |
The tip amount of the transaction.
TipSelectedOption:
type: string
enum:
- preset1
- preset2
- preset3
- other
- notip
example: preset2
description: |
The tip option selected by the cardholder.
| Value | Description |
|---------|------------------------------------------------|
| preset1 | The cardholder selected the preset 1 button |
| preset2 | The cardholder selected the preset 2 button |
| preset3 | The cardholder selected the preset 3 button |
| other | The cardholder selected the other button |
| notip | The cardholder selected the cash/no tip button |
ServerNameComEng:
type: string
maxLength: 50
example: Commerce Engine K
description: |
The name of the server that processed the request.
ServerComEng:
type: object
readOnly: true
properties:
name:
$ref: '#/components/schemas/ServerNameComEng'
BatchInclusiveResponse:
type: string
minLength: 1
maxLength: 1
example: 'N'
enum:
- 'Y'
- 'N'
description: >
Indicates whether or not the batch includes transactions for every day
leading up to the business date.
Value|Description
-----|-----------
Y | The batch includes transactions for every day leading up to the
specified business date
N | The batch includes transactions for only the specified business
date
BatchNetAmountResponse:
type: number
maxLength: 14
example: 5601.78
description: |
The net amount in the batch (saleAmount MINUS refundAmount)
BatchNetCountResponse:
type: integer
example: 187
description: |
The net transaction count in the batch (saleCount PLUS refundCount)
BatchRefundAmount:
type: number
maxLength: 14
readOnly: true
example: 100
description: |
The total amount of all refunds in the batch
BatchRefundCount:
type: integer
readOnly: true
example: 1
description: |
The count of all refunds in the batch
BatchSaleAmount:
type: number
maxLength: 14
readOnly: true
example: 5701.78
description: |
The total amount of all sales in the batch
BatchSaleCount:
type: integer
readOnly: true
example: 186
description: |
The count of all sales in the batch
BatchResponseNoProcessors:
type: object
properties:
inclusive:
$ref: '#/components/schemas/BatchInclusiveResponse'
netAmount:
$ref: '#/components/schemas/BatchNetAmountResponse'
netCount:
$ref: '#/components/schemas/BatchNetCountResponse'
refundAmount:
$ref: '#/components/schemas/BatchRefundAmount'
refundCount:
$ref: '#/components/schemas/BatchRefundCount'
saleAmount:
$ref: '#/components/schemas/BatchSaleAmount'
saleCount:
$ref: '#/components/schemas/BatchSaleCount'
SubmitBatchBusinessDate:
type: string
format: ISO 8601
minLength: 10
example: '2021-04-15T00:00:00.000-07:00'
description: |
The business date you want to close a batch for.
BatchInclusive:
type: string
minLength: 1
maxLength: 1
example: 'N'
enum:
- 'Y'
- 'N'
description: >
Indicates whether or not you want the batch to include transactions for
every day leading up to the `transaction.businessDate`.
Value|Description
-----|-----------
Y | The batch will contain transactions for every day leading up to
the specified `businessDate`
N | The batch will contain transactions for only the specified
`businessDate`
BatchNetAmount:
type: number
maxLength: 14
example: 5601.78
description: >
The net amount that is expected to be in the batch (sales MINUS
refunds). If this field is sent and the amount does not match, an error
will be returned, and the batch will not be closed.
BatchNetCount:
type: integer
example: 187
description: >
The net transaction count in the batch (sales PLUS refunds). If this
field is sent and the count does not match, an error will be returned,
and the batch will not be closed.
Batch:
type: object
required:
- inclusive
properties:
inclusive:
$ref: '#/components/schemas/BatchInclusive'
netAmount:
$ref: '#/components/schemas/BatchNetAmount'
netCount:
$ref: '#/components/schemas/BatchNetCount'
BatchProcessorsArchivesId:
type: integer
maxLength: 10
example: '41'
description: |
The ID that was assigned to the closed batch.
BatchProcessorsProcessor:
type: string
readOnly: true
example: TSYS
description: |
The processor which handled this batch of transactions.
BatchProcessorsCurrencyCode:
type: string
readOnly: true
example: '840'
description: |
The type of currency used for this batch of transactions.
BatchProcessors:
type: object
properties:
archivesID:
$ref: '#/components/schemas/BatchProcessorsArchivesId'
processor:
$ref: '#/components/schemas/BatchProcessorsProcessor'
currencyCode:
$ref: '#/components/schemas/BatchProcessorsCurrencyCode'
refundAmount:
$ref: '#/components/schemas/BatchRefundAmount'
refundCount:
$ref: '#/components/schemas/BatchRefundCount'
saleAmount:
$ref: '#/components/schemas/BatchSaleAmount'
saleCount:
$ref: '#/components/schemas/BatchSaleCount'
BatchProcessorsArray:
type: array
items:
$ref: '#/components/schemas/BatchProcessors'
BatchResponse:
type: object
properties:
inclusive:
$ref: '#/components/schemas/BatchInclusiveResponse'
netAmount:
$ref: '#/components/schemas/BatchNetAmountResponse'
netCount:
$ref: '#/components/schemas/BatchNetCountResponse'
refundAmount:
$ref: '#/components/schemas/BatchRefundAmount'
refundCount:
$ref: '#/components/schemas/BatchRefundCount'
saleAmount:
$ref: '#/components/schemas/BatchSaleAmount'
saleCount:
$ref: '#/components/schemas/BatchSaleCount'
processors:
$ref: '#/components/schemas/BatchProcessorsArray'
TransactionSaleFlagQR:
type: string
maxLength: 1
example: S
enum:
- A
- S
description: >
Specifies a transaction is a sale (‘S’) or authorization (‘A’). Value
sent in the [Get QR
Code](/apis/payments-platform-rest/openapi/qr-payments/getqrcode)
request will be returned in the [Get QR
Details](/apis/payments-platform-rest/openapi/qr-payments/getqrdetails)
response.
QRCodeResponseValue:
type: string
example: https://pay.skytab.com/A3KD42J
maxLength: 1024
description: >
Contains the QR Code URL string. This string can be converted to a QR
code for printing on receipts or displaying on devices.
QRCodeResponse:
type: object
properties:
value:
$ref: '#/components/schemas/QRCodeResponseValue'
QRCodeRequestValue:
type: string
example: https://pay.skytab.com/A3KD42J
maxLength: 1024
description: >
Contains the QR Code URL string. This must match the value received in
the [Get QR
Code](/apis/payments-platform-rest/openapi/qr-payments/getqrcode)
response.
QRCodeRequest:
type: object
required:
- value
properties:
value:
$ref: '#/components/schemas/QRCodeRequestValue'
QRPayConfigSplitEnabled:
type: string
minLength: 1
maxLength: 1
enum:
- 'Y'
- 'N'
description: >
Specifies whether split check processing is enabled or disabled for QR
Code Payments
Value|Description
-----|-----------
Y | Split check proessing is enabled.
N | Split check proessing is disabled.
QRPayConfigTipEnabled:
type: string
minLength: 1
maxLength: 1
enum:
- 'Y'
- 'N'
description: |
Specifies whether tip prompting is enabled or disabled for the merchant
Value|Description
-----|-----------
Y | Tip prompting is enabled.
N | Tip prompting is disabled.
QRPayConfigTipPresetsArray:
type: array
items:
type: string
example:
- '15'
- '18'
- '20'
readOnly: true
description: |
Tip preset percentages configured by the merchant.
QRPayConfig:
type: object
readOnly: true
properties:
splitEnabled:
$ref: '#/components/schemas/QRPayConfigSplitEnabled'
tipEnabled:
$ref: '#/components/schemas/QRPayConfigTipEnabled'
tipPresets:
$ref: '#/components/schemas/QRPayConfigTipPresetsArray'
TransactionResponseCodeQRPaymentStatus:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: V
enum:
- A
- C
- T
description: >
Code indicating that the status of the QR code payment
Value |Description
-------|-----------
A | The QR Payment was processed and approved.
C | The QR Payment was cancelled. The QR code had not been used for
payment or the payment was not successful.
T | The QR Payment was cancelled. The QR code had already been used
for payment and was approved. The approval was reversed.
TransactionResponseCodeQRCancel:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: C
enum:
- C
- T
description: >
Code indicating that the QR code was cancelled and if it was reversed
Value |Description
-------|-----------
C | The QR Payment was cancelled. The QR code had not been used for
payment or the payment was not successful.
T | The QR Payment was cancelled. The QR code had already been used
for payment and was approved. The approval was reversed.
TransactionAuthSourceMode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: O
enum:
- E
- O
description: |
Indicates whether the UTG is online or offline.
Value | Description
-------|----------------------------
E | Online
O | Offline
TransactionToShip:
type: string
maxLength: 1
example: 'Y'
enum:
- 'Y'
- 'N'
description: |
Merchants acknowledgement to ship/process the order.
TransactionOrderId:
type: string
example: '92282831'
description: |
Merchant’s Order Number
CardTypeRisk:
type: string
enum:
- AP
- CC
- PP
- GC
example: CC
description: |
Payment Type submitted by merchant:
Value| Description
-----|------------
AP | Apple Pay
CC | Credit Card
PP | PayPal
GC | Gift Card
AmountRisk:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested. All other fields are for informational purposes and
must also be included in the `total` field. For example, a purchase of
$100 with $8 tax would be “108.00” in the `total` field and "8.00" in
the `tax` field.
Note: For merchants that are configured to allow multiple currencies,
the amount fields can specify up to three decimal places. However, the
number of decimal places can not exceed the number allowed for the
specified currency. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
RiskSessionId:
type: string
maxLength: 32
example: 123420552ab34024b461455de4bcb482
description: |
Unique Session ID. Must be unique over a 30-day span.
SourceIP:
type: string
example: 63.57.84.101
description: >
Public source IP Address where the request originates, not the IP
Address of the web server.
BillingEmailAddress:
type: string
example: firstname.lastname@email.com
description: |
This is the email address submitted by the customer.
BillingFullName:
type: string
example: John Smith
description: |
Name submitted with the order
BillingAddressLine1:
type: string
example: 65 Easy St
description: |
Billing street address - Line 1
BillingAddressLine2:
type: string
example: c/o John Doe
description: |
Billing street address - Line 2
BillingCity:
type: string
example: Las Vegas
description: |
Billing address - City
BillingRegion:
type: string
maxLength: 3
example: NV
description: |
Billing address - State/Province
BillingPostalCode:
type: string
minLength: 5
maxLength: 9
example: '65144'
description: |
Billing address - Postal Code
BillingCountry:
type: string
example: US
description: |
Billing address - Country
BillingPhoneNumber:
type: string
example: '+13110001234'
description: |
Bill-to Phone Number
ShippingAddressLine1:
type: string
example: 65 Easy St
maxLength: 30
description: |
Shipping street address - Line 1
ShippingAddressLine2:
type: string
example: c/o John Doe
maxLength: 30
description: |
Shipping street address - Line 2
ShippingCity:
type: string
example: Las Vegas
maxLength: 30
description: |
Shipping address - City
ShippingCountry:
type: string
example: US
maxLength: 2
description: |
Shipping address - 2 character ISO Country Code.
ShippingEmailAddress:
type: string
example: firstname.lastname@email.com
description: |
Shipping address - Email address of recipient
ShippingFullName:
type: string
example: John 'Smith'
description: |
Shipping address - Name of recipient
ShippingPostalCode:
type: string
minLength: 5
maxLength: 9
example: '65144'
description: |
Shipping address - Postal Code
ShippingPhoneNumber:
type: string
example: '+13110001234'
description: |
Ship-to Phone Number
ShippingRegion:
type: string
example: NV
maxLength: 3
description: >
Shipping address - A level 2 country subdivision code according to
ISO-3166-2.
ShippingType:
type: string
maxLength: 1
example: 'Y'
enum:
- SD
- ND
- 2D
- ST
description: |
Shipping type.
Value| Description
-----|------------
SD | Same Day
ND | Next Day
2D | Second Day
ST | Standard
ShoppingCartType:
type: string
example: Deodarant
description: >
Shopping cart data array attribute high level or generalized description
of the item added to the shopping cart; this value should be free from
any markup or Unicode values. This value should be passed as plain text.
ShoppingCartDescription:
type: string
example: New Spice Fiji
description: >
Shopping cart data array attribute for a specific description of the
item being purchased.
ShoppingCartSKU:
type: string
example: '579446588'
description: >
Shopping cart data array attribute typically the SKU for an item; this
value should be free from any markup or Unicode values. This value
should be passed as plain text.
ShoppingCartQuantity:
type: integer
example: 4
description: >
Shopping cart data array attribute signifying the quantity of the item
being purchased.
ShoppingCartPrice:
type: number
example: 1000
description: >
Shopping cart data array attribute for the price of the single item.
Must be a natural number including 0.
ShoppingCartArray:
type: array
items:
type: object
properties:
type:
$ref: '#/components/schemas/ShoppingCartType'
description:
$ref: '#/components/schemas/ShoppingCartDescription'
sku:
$ref: '#/components/schemas/ShoppingCartSKU'
quantity:
$ref: '#/components/schemas/ShoppingCartQuantity'
price:
$ref: '#/components/schemas/ShoppingCartPrice'
example:
- type: Deodarant
sku: '579446588'
description: New Spice Fiji
quantity: '5'
price: 4
- type: Toothbrush
sku: '135488945'
description: Electric Model
quantity: '1'
price: 104.99
description: |
Array of objects detailing the individual items being purchased
risk_assess_unencryptedcard:
type: object
title: Card Number Unencrypted
allOf:
- type: object
required:
- dateTime
- card
- transaction
- amount
- currencyCode
- risk
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
transaction:
type: object
required:
- invoice
properties:
toShip:
$ref: '#/components/schemas/TransactionToShip'
orderId:
$ref: '#/components/schemas/TransactionOrderId'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
card:
type: object
required:
- number
- type
properties:
type:
$ref: '#/components/schemas/CardTypeRisk'
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
amount:
$ref: '#/components/schemas/AmountRisk'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
risk:
type: object
required:
- sessionId
properties:
sessionId:
$ref: '#/components/schemas/RiskSessionId'
sourceIp:
$ref: '#/components/schemas/SourceIP'
customer:
type: object
properties:
emailAddress:
$ref: '#/components/schemas/BillingEmailAddress'
fullName:
$ref: '#/components/schemas/BillingFullName'
addressLine1:
$ref: '#/components/schemas/BillingAddressLine1'
addressLine2:
$ref: '#/components/schemas/BillingAddressLine2'
city:
$ref: '#/components/schemas/BillingCity'
region:
$ref: '#/components/schemas/BillingRegion'
postalCode:
$ref: '#/components/schemas/BillingPostalCode'
country:
$ref: '#/components/schemas/BillingCountry'
phoneNumber:
$ref: '#/components/schemas/BillingPhoneNumber'
shipping:
type: object
properties:
addressLine1:
$ref: '#/components/schemas/ShippingAddressLine1'
addressLine2:
$ref: '#/components/schemas/ShippingAddressLine2'
city:
$ref: '#/components/schemas/ShippingCity'
country:
$ref: '#/components/schemas/ShippingCountry'
emailAddress:
$ref: '#/components/schemas/ShippingEmailAddress'
fullName:
$ref: '#/components/schemas/ShippingFullName'
postalCode:
$ref: '#/components/schemas/ShippingPostalCode'
phoneNumber:
$ref: '#/components/schemas/ShippingPhoneNumber'
region:
$ref: '#/components/schemas/ShippingRegion'
type:
$ref: '#/components/schemas/ShippingType'
shoppingCart:
$ref: '#/components/schemas/ShoppingCartArray'
example:
dateTime: '2022-02-07T12:36:42.948061-05:00'
transaction:
toShip: 'Y'
orderId: orderId
invoice: '0207123502'
vendorReference: simulator1.0:0207123502
card:
type: CC
number: '342877777777705'
expirationDate: 1123,
entryMode: M
present: 'N'
amount:
total: 76001.99
currencyCode: USD
risk:
sessionId: 123420552ab34024b461455de4bcb482
sourceIp: 10.249.11.239
customer:
emailAddress: firstname.lastname@email.com
shoppingCart':
- type: Deodarant
description: New Spice Fiji
sku: '579446588'
quantity: '5'
price: 4
- type: Toothbrush
description: Electric Model
sku: '135488945'
quantity: '1'
price: 104.99
CardTypeRiskToken:
type: string
enum:
- TK
example: TK
description: |
Payment Type submitted by merchant:
Value| Description
-----|------------
TK | Token
risk_assess_token_gtv:
title: GTV Token
type: object
allOf:
- type: object
required:
- dateTime
- card
- transaction
- amount
- currencyCode
- risk
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
transaction:
type: object
required:
- invoice
properties:
toShip:
$ref: '#/components/schemas/TransactionToShip'
orderId:
$ref: '#/components/schemas/TransactionOrderId'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
purchaseCard:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
card:
type: object
required:
- token
- type
properties:
type:
$ref: '#/components/schemas/CardTypeRiskToken'
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
amount:
$ref: '#/components/schemas/AmountRisk'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
risk:
type: object
required:
- sessionId
properties:
sessionId:
$ref: '#/components/schemas/RiskSessionId'
sourceIp:
$ref: '#/components/schemas/SourceIP'
customer:
type: object
properties:
emailAddress:
$ref: '#/components/schemas/BillingEmailAddress'
fullName:
$ref: '#/components/schemas/BillingFullName'
addressLine1:
$ref: '#/components/schemas/BillingAddressLine1'
addressLine2:
$ref: '#/components/schemas/BillingAddressLine2'
city:
$ref: '#/components/schemas/BillingCity'
region:
$ref: '#/components/schemas/BillingRegion'
postalCode:
$ref: '#/components/schemas/BillingPostalCode'
country:
$ref: '#/components/schemas/BillingCountry'
phoneNumber:
$ref: '#/components/schemas/BillingPhoneNumber'
shipping:
type: object
properties:
addressLine1:
$ref: '#/components/schemas/ShippingAddressLine1'
addressLine2:
$ref: '#/components/schemas/ShippingAddressLine2'
city:
$ref: '#/components/schemas/ShippingCity'
country:
$ref: '#/components/schemas/ShippingCountry'
emailAddress:
$ref: '#/components/schemas/ShippingEmailAddress'
fullName:
$ref: '#/components/schemas/ShippingFullName'
postalCode:
$ref: '#/components/schemas/ShippingPostalCode'
phoneNumber:
$ref: '#/components/schemas/ShippingPhoneNumber'
region:
$ref: '#/components/schemas/ShippingRegion'
type:
$ref: '#/components/schemas/ShippingType'
shoppingCart:
$ref: '#/components/schemas/ShoppingCartArray'
example:
dateTime: '2022-02-07T12:36:42.948061-05:00'
transaction:
toShip: 'Y'
orderId: orderId
invoice: '0207123502'
vendorReference: simulator1.0:0207123502
card:
type: TK
token:
value: '8048471746471119'
entryMode: M
present: 'N'
amount:
total: 76001.99
currencyCode: USD
risk:
sessionId: 123420552ab34024b461455de4bcb482
sourceIp: 10.249.11.239
customer:
emailAddress: firstname.lastname@email.com
shoppingCart':
- type: Deodarant
description: New Spice Fiji
sku: '579446588'
quantity: '5'
price: 4
- type: Toothbrush
description: Electric Model
sku: '135488945'
quantity: '1'
price: 104.99
RiskAssessment:
type: string
enum:
- A
- D
- R
- E
example: A
description: >
This is the answer to the risk assessment. If the response is Escalate
then transaction needs 3DS authentication.
Value| Description
-----|------------
A | Approve. Continue with the payment transaction.
D | Deny. Try another payment method
R | Review. Continue with the payment transaction.
E | Escalate. The transaction needs 3DS authentication.
TransactionS4RiskId:
type: string
example: EC52377F-5A8E-4534-BE7A-CF779A35BE45
description: >
Unique transaction identification number generated by Shift4 to identify
a specific risk transaction and a field that can be searched in LTM.
HostResponseReasonCodeRisk:
type: string
maxLength: 4
example: '271'
description: >
Returns a response code from the host.
Value |Reason Description
------|------------------
201 | Missing version of provider, this is built into SDK but must be
supplied by merchant if not using the SDK
202 | The mode type for post is missing.
203 | The six digit Merchant ID was not sent
204 | The unique session ID was not sent
205 | Transaction ID number
211 | The currency was missing in the RISK submission
212 | The total amount was missing
221 | The email address was missing
222 | For MODE = P RISK inquiries the caller ID is missing
223 | The website identifier that was created in the Agent Web Console
(DEFAULT is the default website ID) is missing
231 | The payment type is missing.
232 | The credit card information is missing
233 | Missing Magnetic Ink Character Recognition string
234 | The PayPal Payer ID is missing
235 | The payment token is missing.
241 | The IP address is missing
251 | The merchant acknowledgement is missing
261 | The RISK query submitted to provider contained no data
271 | The shopping cart data array attribute is missing.
272 | The shopping cart data array attribute is missing.
273 | The shopping cart data array attribute is missing.
274 | The shopping cart data array attribute is missing.
275 | The shopping cart data array attribute is missing.
301 | The version of provider supplied by merchant does not fit the
four integer parameter
302 | The mode type is invalid.
303 | The six digit Merchant ID is malformed or wrong
304 | The unique session ID is invalid. Refer to the Data Collector
305 | Transaction ID number is malformed
311 | The currency was wrong in the RISK submission
312 | The total amount is wrong. TOTL is the whole number amount
charged to customer
321 | The email address does not meet required format or is greater
than 64 characters in length
322 | For MODE = P RISK inquiries the caller ID is malformed
323 | The website identifier that was created in the Agent Web Console
(DEFAULT is the default w website ID) does not match what was created in
the AWC.
324 | The specified format is wrong. Format options are key value
pairs, XML, JSON, YAML
331 | The payment type is wrong.
332 | The credit card information is malformed or wrong, test cards do
not work in the production environment
333 | Malformed or improper Magnetic Ink Character Recognition string.
334 | The PayPal Payer ID is malformed or corrupt.
335 | Malformed or improper Google Checkout Account ID string.
336 | Malformed or improper Bill Me Later account number.
337 | The encryption method specified is wrong.
338 | The GreenDot payment token is not a valid payment token
339 | When payment type equals CARD, PTYP = CARD and payment
encryption type equals KHASH, `PENC = KHASH the value must be 20
characters in length.
340 | Invalid or excessive characters in the PTOK field
341 | The IP address does not match specifications
342 | The Gift Card payment token is invalid due to invalid
characters, null, or exceeding character length
351 | The merchant acknowledgement must be Y or N
362 | There is a discrepancy in the shopping cart key count and the
number of items actually being sent in the cart
371 | The shopping cart data array attribute is missing.
372 | The shopping cart data array attribute is corrupt or missing.
373 | The shopping cart data array attribute is corrupt or missing.
374 | The shopping cart data array attribute is corrupt or missing.
375 | The shopping cart data array attribute is corrupt or missing.
399 | A UDF has been mistyped or does not exist in the Agent Web
Console
401 | RISK keys submitted by merchant were not part of SDK
404 | When PTYP equals NONE and a PTOK is submitted
413 | The RISK Post to provider exceeded the 4K limit.
501 | Error regarding certificate - Using test certificate in prod
502 | Invalid Merchant ID has been entered
601 | Unspecified system error - Contact Merchant Services
602 | Provider will not process particular transaction
701 | No header found with merchantId = [XXXXX], session_id =
[htot2kk5khpamo45f777q455], trans=[122347] This error occurs when a RISK
request goes to the database and there is no data available in the
reply. The Update post had an invalid transaction ID#. Check all
required fields for update post and confirm they are being passed
correctly.
HostResponseReasonDescriptionRisk:
type: string
maxLength: 73
example: The credit card information is missing
description: |
Returns a description from the host.
CustomerCity:
type: string
example: Las Vegas
maxLength: 30
description: |
Customer address city.
CustomerCountry:
type: string
example: US
maxLength: 2
description: >
2 character ISO Country Code. See the
[ISO](https://www.iso.org/obp/ui/#search/code/) website for details.
CustomerPhoneNumber:
type: string
example: '3110001234'
maxLength: 32
description: |
Customer phone number
CustomerPhoneCountry:
type: string
example: '1'
minLength: 1
maxLength: 3
description: |
Country calling code of the phone number.
Required when sending `customer.phoneNumber`.
CustomerRegion:
type: string
maxLength: 3
example: NV
description: |
A level 2 country subdivision code according to ISO-3166-2.
CustomerExternalId:
type: string
example: OD-123
description: |
Your external identifier for the Customer
CustomerEnrollDate:
type: string
format: ISO 8601
example: '2019-03-14T11:16:42.896-07:00'
description: >
Date of the user's first transaction in your system, regardless of
payment method used. The date and time must be passed in ISO 8601
format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm)
OTAChangeGuest:
type: string
example: 'Y'
enum:
- 'Y'
- 'N'
description: >
Whether the guest (the person being served) is able to be changed.
Fraudsters tend to pay for services that can change the guest.
OTAServiceEndDate:
type: string
format: YYYY-MM-DD
example: '2024-04-20'
description: >
OTA service end date in YYYY-MM-DD format. A consumer booking a service
such as a hotel for too many days elevates risk.
OTAServiceStartDate:
type: string
format: YYYY-MM-DD
example: '2024-04-18'
description: >
OTA service start date in YYYY-MM-DD format. A service start date that
is very close to the transaction date elevates risk.
OTAStartCity:
type: string
example: Las Vegas
description: |
OTA start city.
OTAStartCountry:
type: string
format: ISO 3166 Alpha-2
example: US
description: >
OTA start country in ISO 3166 Alpha-2 format.; for example, country
where bus ticket was purchased.
OTAStartZipCode:
type: string
example: '89134'
description: |
OTA start zip code.
OTAType:
type: array
items:
type: string
enum:
- hotel
- trainticket
- ferry
- bus
- multimodal
- airline
- cruise
- carrental
example:
- hotel
- airline
- trainticket
description: |
OTA transaction type array.
OTARequestPayPal:
type: object
description: >
**Conditional: Utilize this object for Online Travel Agency
transactions**
required:
- changeGuest
- serviceEndDate
- serviceStartDate
- startCity
- startCountry
- startZipCode
- type
properties:
changeGuest:
$ref: '#/components/schemas/OTAChangeGuest'
serviceEndDate:
$ref: '#/components/schemas/OTAServiceEndDate'
serviceStartDate:
$ref: '#/components/schemas/OTAServiceStartDate'
startCity:
$ref: '#/components/schemas/OTAStartCity'
startCountry:
$ref: '#/components/schemas/OTAStartCountry'
startZipCode:
$ref: '#/components/schemas/OTAStartZipCode'
type:
$ref: '#/components/schemas/OTAType'
PayPalClientMetaDataId:
type: string
example: 6f52ab38539f7e1037e8aa8e7b95407b
description: >
Identifier for completing risk check. Returned if `transaction.ota` is
sent in the request.
PayPalClientToken:
type: string
example: >-
eyJ2ZXJzaW9uIjoyLCJhdXRob3JpemF0aW9uRmluZ2VycHJpbnQiOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpGVXpJMU5pSXNJbXRwWkNJNklqSXdNVGd3TkRJMk1UWXRjMkZ1WkdKdmVDSXNJbWx6Y3lJNkltaDBkSEJ6T2k4dllYQnBMbk5oYm1SaWIzZ3VZbkpoYVc1MGNtVmxaMkYwWlhkaGVTNWpiMjBpZlEuZXlKbGVIQWlPakUzTVRNMk1qWXdNelVzSW1wMGFTSTZJbVl6WVRFek9EQm1MVFJpTURRdE5ERXpOQzA1WWpFMExUY3haalV5T0RKbVlXRTVOeUlzSW5OMVlpSTZJblkyY3pKemJXSTNObUptT1Rad2REUWlMQ0pwYzNNaU9pSm9kSFJ3Y3pvdkwyRndhUzV6WVc1a1ltOTRMbUp5WVdsdWRISmxaV2RoZEdWM1lYa3VZMjl0SWl3aWJXVnlZMmhoYm5RaU9uc2ljSFZpYkdsalgybGtJam9pZGpaek1uTnRZamMyWW1ZNU5uQjBOQ0lzSW5abGNtbG1lVjlqWVhKa1gySjVYMlJsWm1GMWJIUWlPbVpoYkhObGZTd2ljbWxuYUhSeklqcGJJbTFoYm1GblpWOTJZWFZzZENKZExDSnpZMjl3WlNJNld5SkNjbUZwYm5SeVpXVTZWbUYxYkhRaVhTd2liM0IwYVc5dWN5STZleUp0WlhKamFHRnVkRjloWTJOdmRXNTBYMmxrSWpvaVlYQnROSEZoSW4xOS5fNW9hUm9WSkxYWGZTWnM0ZUNxUVdTYkF5X3A3UFZuOUdfbjYteDE4Q0tPUUFuYmxRN2tHVExJOW5OOHM0OW52NW92Y1YwYXJnVHNNUkw5bjF6TXU3USIsImNvbmZpZ1VybCI6Imh0dHBzOi8vYXBpLnNhbmRib3guYnJhaW50cmVlZ2F0ZXdheS5jb206NDQzL21lcmNoYW50cy92NnMyc21iNzZiZjk2cHQ0L2NsaWVudF9hcGkvdjEvY29uZmlndXJhdGlvbiIsIm1lcmNoYW50QWNjb3VudElkIjoiYXBtNHFhIiwiZ3JhcGhRTCI6eyJ1cmwiOiJodHRwczovL3BheW1lbnRzLnNhbmRib3guYnJhaW50cmVlLWFwaS5jb20vZ3JhcGhxbCIsImRhdGUiOiIyMDE4LTA1LTA4IiwiZmVhdHVyZXMiOlsidG9rZW5pemVfY3JlZGl0X2NhcmRzIl19LCJjbGllbnRBcGlVcmwiOiJodHRwczovL2FwaS5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tOjQ0My9tZXJjaGFudHMvdjZzMnNtYjc2YmY5NnB0NC9jbGllbnRfYXBpIiwiZW52aXJvbm1lbnQiOiJzYW5kYm94IiwibWVyY2hhbnRJZCI6InY2czJzbWI3NmJmOTZwdDQiLCJhc3NldHNVcmwiOiJodHRwczovL2Fzc2V0cy5icmFpbnRyZWVnYXRld2F5LmNvbSIsImF1dGhVcmwiOiJodHRwczovL2F1dGgudmVubW8uc2FuZGJveC5icmFpbnRyZWVnYXRld2F5LmNvbSIsInZlbm1vIjoib2ZmIiwiY2hhbGxlbmdlcyI6W10sInRocmVlRFNlY3VyZUVuYWJsZWQiOnRydWUsImFuYWx5dGljcyI6eyJ1cmwiOiJodHRwczovL29yaWdpbi1hbmFseXRpY3Mtc2FuZC5zYW5kYm94LmJyYWludHJlZS1hcGkuY29tL3Y2czJzbWI3NmJmOTZwdDQifSwicGF5cGFsRW5hYmxlZCI6dHJ1ZSwicGF5cGFsIjp7ImJpbGxpbmdBZ3JlZW1lbnRzRW5hYmxlZCI6dHJ1ZSwiZW52aXJvbm1lbnROb05ldHdvcmsiOmZhbHNlLCJ1bnZldHRlZE1lcmNoYW50IjpmYWxzZSwiYWxsb3dIdHRwIjp0cnVlLCJkaXNwbGF5TmFtZSI6ImFwbTRxYSIsImNsaWVudElkIjoiQWVvaGtSQk93UUtCZXJfZ0x2ZnJqTWR4aDhra2tiSm1YZG84WEtORzBwSUFpYlFwWjNTWDdqTXRQTnhwSFlJTmNEVlFVeHlnaHJrVkJydTQiLCJiYXNlVXJsIjoiaHR0cHM6Ly9hc3NldHMuYnJhaW50cmVlZ2F0ZXdheS5jb20iLCJhc3NldHNVcmwiOiJodHRwczovL2NoZWNrb3V0LnBheXBhbC5jb20iLCJkaXJlY3RCYXNlVXJsIjpudWxsLCJlbnZpcm9ubWVudCI6Im9mZmxpbmUiLCJicmFpbnRyZWVDbGllbnRJZCI6Im1hc3RlcmNsaWVudDMiLCJtZXJjaGFudEFjY291bnRJZCI6ImFwbTRxYSIsImN1cnJlbmN5SXNvQ29kZSI6IlVTRCJ9fQ==
description: |
A Base64 encoded string used to initialize client SDKs.
PayPalPayerId:
type: string
example: 6CB2GS6AQRS5S
description: |
The ID belonging to the PayPal account.
PayPalPaymentMethodNonce:
type: string
example: 7fd66f90e-c8ec-0363-6b45-aeb930175e43
description: >
A payment method nonce is a secure, one-time-use reference to payment
information. It's the key element that allows your server to communicate
sensitive payment information to Braintree without ever touching the raw
data.
PayPalPaymentMethodIdUsage:
type: string
example: S
enum:
- S
- M
description: >
Dictates whether paymentMethodId returned will be single or multi-use
payment token
Value|Description
-----|-----------
S | Single Use
M | Multiple Use
PayPalDeviceData:
type: string
example: '{"correlation_id":"010e4 a744d78644f971fc5f9dc1c43aa"}'
description: |
The customer's device information.
AirlineTaxAmount:
type: number
maxLength: 14
example: 15
description: |
The tax amount
AirlineFlightLegsPayPal:
type: object
required:
- destAirportCode
- fareBasis
- flightNumber
- legDepartureDateTime
- originAirportCode
- serviceClass
- stopOverCode
properties:
carrierCode:
$ref: '#/components/schemas/AirlineFlightLegsCarrierCode'
conjunctionTicketIndicator:
$ref: '#/components/schemas/AirlineConjunctionTicketIndicator'
couponNumber:
$ref: '#/components/schemas/AirlineFlightLegsCouponNumber'
destAirportCode:
$ref: '#/components/schemas/AirlineFlightLegsDestAirportCode'
exchangeTicketNumber:
$ref: '#/components/schemas/AirlineExchangeTicketNumber'
fareBasis:
$ref: '#/components/schemas/AirlineFlightLegsFareBasis'
flightNumber:
$ref: '#/components/schemas/AirlineFlightLegsFlightNumber'
legArrivalDateTime:
$ref: '#/components/schemas/AirlineFlightLegsLegArrivalDateTime'
legDepartureDateTime:
$ref: '#/components/schemas/AirlineFlightLegsLegDepartureDateTime'
originAirportCode:
$ref: '#/components/schemas/AirlineFlightLegsOriginAirportCode'
restrictedTicketIndicator:
$ref: '#/components/schemas/AirlineRestrictedTicketIndicator'
serviceClass:
$ref: '#/components/schemas/AirlineFlightLegsServiceClass'
stopOverCode:
$ref: '#/components/schemas/AirlineFlightLegsStopOverCode'
taxAmount:
$ref: '#/components/schemas/AirlineTaxAmount'
AirlineFlightLegsArrayPayPal:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/AirlineFlightLegsPayPal'
example:
- destAirportCode: YXX
fareBasis: YE3MAU
flightNumber: '2490'
legDepartureDateTime: '2021-04-12T15:39:01.594-07:00'
originAirportCode: AUH
serviceClass: FC
stopOverCode: X
- destAirportCode: LAS
fareBasis: YE3MAU
flightNumber: '8495'
legDepartureDateTime: '2021-04-12T19:39:01.594-07:00'
originAirportCode: YXX
serviceClass: FC
stopOverCode: X
description: >
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.
AirlinePassengerBirthDate:
type: string
format: YYYY-MM-DD
example: '2001-04-14'
description: |
The passenger's date of birth in YYYY-MM-DD format
AirlinePassengerCode:
type: string
maxLength: 17
example: 12AD9S8
description: >
The code supplied by the customer using a purchase card. Maximum 17
characters.
AirlinePassengerCountryCode:
type: string
format: ISO 3166 Alpha-2
example: US
description: |
The passenger's nationality in ISO 3166 Alpha-2 format.
AirlineTicketsPayPal:
type: object
required:
- passengerName
- ticketNumber
properties:
passengerName:
$ref: '#/components/schemas/AirlineTicketsPassengerName'
ticketNumber:
$ref: '#/components/schemas/AirlineTicketsTicketNumber'
ticketFare:
$ref: '#/components/schemas/AirlineTicketsTicketFare'
AirlineTicketsArrayPayPal:
type: array
writeOnly: true
items:
$ref: '#/components/schemas/AirlineTicketsPayPal'
example:
- ticketNumber: 412345678901234
passengerName: Jane Doe
ticketFare: 350
- ticketNumber: 412345678901236
passengerName: John Smith
ticketFare: 250
description: >
Array of ticket number and passenger name. Note: At least one instance
of ticket number and passenger name info should be provided.
AirlineRequestPayPal:
type: object
description: |
**Conditional: Utilize this object for Airline transactions**
required:
- carrierCode
- flightLegs
- issueDate
- tickets
properties:
carrierCode:
$ref: '#/components/schemas/AirlineCarrierCode'
flightLegs:
$ref: '#/components/schemas/AirlineFlightLegsArrayPayPal'
issueDate:
$ref: '#/components/schemas/AirlineIssueDate'
passengerArrivalDate:
$ref: '#/components/schemas/AirlinePassengerArrivalDate'
passengerBirthDate:
$ref: '#/components/schemas/AirlinePassengerBirthDate'
passengerCode:
$ref: '#/components/schemas/AirlinePassengerCode'
passengerCountryCode:
$ref: '#/components/schemas/AirlinePassengerCountryCode'
restrictedTicketIndicator:
$ref: '#/components/schemas/AirlineRestrictedTicketIndicator'
taxAmount:
$ref: '#/components/schemas/AirlineTaxAmount'
tickets:
$ref: '#/components/schemas/AirlineTicketsArrayPayPal'
travelAgencyCode:
$ref: '#/components/schemas/AirlineTravelAgencyCode'
travelAgencyName:
$ref: '#/components/schemas/AirlineTravelAgencyName'
CustomerBrowserType:
type: string
example: >-
Mozilla\\/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko\\/20100101
Firefox\\/98.0
description: |
Internet browser or simply a browser.
PayPalTransactionId:
type: string
example: dHJhbnNhY3Rpb25fazd6cDB5ZzA
description: |
Unique identifier.
PayPalLegacyId:
type: string
example: k7zp0yg0
description: |
Legacy unique identifier.
PayPalOrderId:
type: string
example: 444106-8010720-0414151800-4371
description: |
Additional information about the transaction.
PayPalStatus:
type: string
example: AUTHORIZED
description: |
The current status of this transaction.
PayPalAuthorizationId:
type: string
example: 6W6361048T1775802
description: >
If the transaction was successfully authorized, the PayPal ID for the
authorization.
PayPalCaptureId:
type: string
example: 3EK61497JE2934158
description: >
If funds for the transaction have settled, the PayPal ID for the capture
of funds.
PayPalPaymentMethodId:
type: string
example: dda7z0fq
description: |
Identifier for a single or multi-use payment token
CustomerAddressLine1ThreeDSecure:
type: string
maxLength: 30
example: 65 Easy St
description: >
Cardholder’s street address exactly as it appears on their billing
statement. This field is used in AVS.
**Recommended for increasing the possibility of frictionless flow**
CustomerAddressLine2:
type: string
example: Apt 124
maxLength: 30
description: |
Customer address line 2.
CustomerCityThreeDSecure:
type: string
example: Las Vegas
maxLength: 30
description: |
Customer address city.
**Recommended for increasing the possibility of frictionless flow**
CustomerRegionThreeDSecure:
type: string
maxLength: 3
example: NV
description: |
A level 2 country subdivision code according to ISO-3166-2.
**Recommended for increasing the possibility of frictionless flow**
CustomerPostalCodeThreeDSecure:
type: string
minLength: 1
maxLength: 9
example: '65144'
description: >
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 alphanumeric characters (a-z, A-Z, 0-9).
Special characters including - are not allowed. If you are sending in
zip+4 you must not include the dash so 89134-1234 would be sent as
891341234**
**Recommended for increasing the possibility of frictionless flow**
CustomerCountryThreeDSecure:
type: string
example: US
maxLength: 2
description: >
2 character ISO Country Code. See the
[ISO](https://www.iso.org/obp/ui/#search/code/) website for details.
**Recommended for increasing the possibility of frictionless flow**
ShippingAddressLine1ThreeDSecure:
type: string
example: 65 Easy St
maxLength: 30
description: |
Shipping street address - Line 1
**Recommended for increasing the possibility of frictionless flow**
ShippingCityThreeDSecure:
type: string
example: Las Vegas
maxLength: 30
description: |
Shipping address - City
**Recommended for increasing the possibility of frictionless flow**
ShippingCountryThreeDSecure:
type: string
example: US
maxLength: 2
description: |
Shipping address - 2 character ISO Country Code.
**Recommended for increasing the possibility of frictionless flow**
ShippingPostalCodeThreeDSecure:
type: string
minLength: 5
maxLength: 9
example: '65144'
description: |
Shipping address - Postal Code
**Recommended for increasing the possibility of frictionless flow**
ShippingRegionThreeDSecure:
type: string
example: NV
maxLength: 3
description: >
Shipping address - A level 2 country subdivision code according to
ISO-3166-2.
**Recommended for increasing the possibility of frictionless flow**
CustomerShipping3DSecure:
type: object
description: |
**Conditional: must be sent if `threeDSecure.addressMatch` is 'false'**
properties:
addressLine1:
$ref: '#/components/schemas/ShippingAddressLine1ThreeDSecure'
addressLine2:
$ref: '#/components/schemas/ShippingAddressLine2'
city:
$ref: '#/components/schemas/ShippingCityThreeDSecure'
country:
$ref: '#/components/schemas/ShippingCountryThreeDSecure'
postalCode:
$ref: '#/components/schemas/ShippingPostalCodeThreeDSecure'
region:
$ref: '#/components/schemas/ShippingRegionThreeDSecure'
ThreeDSecureInitiateStandalone:
type: string
enum:
- '01'
- '03'
writeOnly: true
example: '03'
description: |
Indicates whether to initiate the 3D Secure authentication process
Value| Description
-----|------------
01 | Force 3D Secure authentication
03 | Initiate 3D Secure according to the 3D Secure Adviser result
ThreeDSecureBrowserAcceptHeader:
type: string
example: >-
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
minLength: 0
maxLength: 2048
description: |
Exact content of the HTTP accept headers.
ThreeDSecureBrowserJavaEnabled:
type: boolean
example: true
description: >
Indicates whether the cardholder's browser has the ability to execute
Java.
Value | Description
------|------------
true | Cardholder's browser does have the ability to execute Java.
false | Cardholder's browser does not have the ability to execute Java.
ThreeDSecureBrowserJavascriptEnabled:
type: boolean
example: true
description: >
Indicates whether the cardholder's browser has the ability to execute
Javascript.
Value | Description
------|------------
true | Cardholder's browser does have the ability to execute
Javascript.
false | Cardholder's browser does not have the ability to execute
Javascript.
ThreeDSecureBrowserLanguage:
type: string
example: en-GB
minLength: 2
maxLength: 16
description: |
Value representing the browser language as defined in IETF BCP47.
ThreeDSecureBrowserColorDepth:
type: string
enum:
- '1'
- '4'
- '8'
- '15'
- '16'
- '24'
- '32'
- '48'
example: '48'
minLength: 1
maxLength: 2
description: >
Value representing the bit depth of the colour palette for displaying
images, in bits per pixel. Accepted values are:
Value| Description
-----|------------
1 | 1 bit
4 | 4 bits
8 | 8 bits
15 | 15 bits
16 | 16 bits
24 | 24 bits
32 | 32 bits
48 | 48 bits
ThreeDSecureBrowserScreenWidth:
type: integer
example: 1920
minLength: 1
maxLength: 6
description: |
Total height of the Cardholder's screen in pixels.
ThreeDSecureBrowserScreenHeight:
type: integer
example: 1080
minLength: 1
maxLength: 6
description: |
Total height of the Cardholder's screen in pixels.
ThreeDSecureBrowserTZ:
type: integer
example: -480
minLength: 1
maxLength: 5
description: >
Time difference between UTC time and the Cardholder browser local time,
in minutes.
ThreeDSecureBrowser:
type: object
required:
- acceptHeader
- javaEnabled
- javascriptEnabled
- language
- colorDepth
- screenWidth
- screenHeight
- tz
properties:
acceptHeader:
$ref: '#/components/schemas/ThreeDSecureBrowserAcceptHeader'
javaEnabled:
$ref: '#/components/schemas/ThreeDSecureBrowserJavaEnabled'
javascriptEnabled:
$ref: '#/components/schemas/ThreeDSecureBrowserJavascriptEnabled'
language:
$ref: '#/components/schemas/ThreeDSecureBrowserLanguage'
colorDepth:
$ref: '#/components/schemas/ThreeDSecureBrowserColorDepth'
screenWidth:
$ref: '#/components/schemas/ThreeDSecureBrowserScreenWidth'
screenHeight:
$ref: '#/components/schemas/ThreeDSecureBrowserScreenHeight'
tz:
$ref: '#/components/schemas/ThreeDSecureBrowserTZ'
ThreeDSecureHeaderContent:
type: string
example: userAgent header
maxLength: 255
description: |
Exact content of the HTTP user-agent header.
ThreeDSecureChallengeWindowSize:
type: string
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
example: '05'
minLength: 2
maxLength: 2
description: >
Dimensions of the challenge window that will be displayed to the
cardholder. The issuer replies with content that is formatted to
appropriately render in this window to provide the best possible user
experience. Preconfigured window sizes are given in “width x height” in
pixels.
Value| Description
-----|------------
01 | 250 x 400
02 | 390 x 400
03 | 500 x 600
04 | 600 x 400
05 | Full screen
ThreeDSecureTransType:
type: string
enum:
- '01'
- '03'
- '10'
- '11'
- '28'
example: '01'
minLength: 2
maxLength: 2
description: |
Identifies the type of transaction being authenticated.
The values are derived from ISO 8583.
Value| Description
-----|------------
01 | Goods / Service purchase
03 | Check Acceptance
10 | Account Funding
11 | Quasi-Cash Transaction
28 | Prepaid activation and Loan
ThreeDSecureChannel:
type: string
enum:
- '01'
- '02'
- '03'
example: '02'
minLength: 2
maxLength: 2
description: >
Indicates the type of channel interface being used to initiate the
transaction.
Value| Description
-----|------------
01 | App-based (APP)
02 | Browser (BRW)
03 | 3DS Requestor Initiated (3RI)
ThreeDSecureAddressMatch:
type: boolean
example: true
description: >
Indicates whether the Cardholder Shipping Address and Cardholder Billing
Address are identical.
Value | Description
------|------------
true | Shipping Address matches Billing Address
false | Shipping Address does not match Billing Address
ThreeDSecureReqChallengeInd:
type: string
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
- '06'
- '07'
- '08'
- '09'
example: '02'
minLength: 2
maxLength: 2
description: >
Indicates whether a challenge is requested for this transaction. For
example: For payment authentication, a merchant may have concerns about
the transaction, and request a challenge.
Value| Description
-----|------------
01 | No preference
02 | No challenge requested
03 | Challenge requested by merchant
04 | Challenge requested: Mandate
05 | No Challenge Requested, transactional risk analysis is already
performed
06 | No Challenge Requested, Data share only
07 | No Challenge Requested, SCA is already performed
08 | No challenge requested (utilise whitelist exemption if no
challenge required)
09 | Challenge requested (whitelist prompt requested if challenge
required)"
CompletionURL3DSRequest:
type: string
example: https://merchant.com/completion
description: >
Contains the merchant URL to which the browser should be redirected
after the challenge session.
3dsecure_standalone_cardnumber:
title: Card Number
type: object
required:
- dateTime
- amount
- transaction
- card
- customer
- currencyCode
- threeDSecure
- completionUrl
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
customer:
type: object
required:
- firstName
- lastName
- emailAddress
- ipAddress
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
phoneCountry:
$ref: '#/components/schemas/CustomerPhoneCountry'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1ThreeDSecure'
addressLine2:
$ref: '#/components/schemas/CustomerAddressLine2'
city:
$ref: '#/components/schemas/CustomerCityThreeDSecure'
region:
$ref: '#/components/schemas/CustomerRegionThreeDSecure'
postalCode:
$ref: '#/components/schemas/CustomerPostalCodeThreeDSecure'
country:
$ref: '#/components/schemas/CustomerCountryThreeDSecure'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
shipping:
$ref: '#/components/schemas/CustomerShipping3DSecure'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
securityCode:
type: object
description: >
**Conditional: Send when processing a 3D Secure transaction in
the US. This object should be sent for initial card on file
request but is not required for subsequent merchant initiated
charges.**
required:
- indicator
- value
properties:
indicator:
$ref: '#/components/schemas/CardSecurityCodeIndicator'
value:
$ref: '#/components/schemas/CardSecurityCodeValue'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
threeDSecure:
type: object
required:
- initiate
- browser
- headerContent
- challengeWindowSize
- transType
- channel
properties:
initiate:
$ref: '#/components/schemas/ThreeDSecureInitiateStandalone'
browser:
$ref: '#/components/schemas/ThreeDSecureBrowser'
headerContent:
$ref: '#/components/schemas/ThreeDSecureHeaderContent'
challengeWindowSize:
$ref: '#/components/schemas/ThreeDSecureChallengeWindowSize'
transType:
$ref: '#/components/schemas/ThreeDSecureTransType'
channel:
$ref: '#/components/schemas/ThreeDSecureChannel'
addressMatch:
$ref: '#/components/schemas/ThreeDSecureAddressMatch'
reqChallengeInd:
$ref: '#/components/schemas/ThreeDSecureReqChallengeInd'
completionUrl:
$ref: '#/components/schemas/CompletionURL3DSRequest'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2022-05-04T09:18:23.283-07:00'
amount:
total: 160
currencyCode: EUR
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
card:
number: '4012000098765439'
expirationDate: 1225
present: 'N'
transaction:
invoice: '730518'
notes: Transaction notes are added here
threeDSecure:
initiate: '03'
browser:
acceptHeader: >-
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
javaEnabled: true
javascriptEnabled: true
language: en-GB
colorDepth: '48'
screenWidth: 1920
screenHeight: 1080
tz: -480
headerContent: userAgent header
challengeWindowSize: '05'
transType: '01'
channel: '02'
completionUrl: https://merchant.com/completion
apiOptions:
- ALLOWPARTIALAUTH
3dsecure_standalone_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- transaction
- card
- customer
- currencyCode
- threeDSecure
- completionUrl
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
customer:
type: object
required:
- firstName
- lastName
- emailAddress
- ipAddress
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
phoneCountry:
$ref: '#/components/schemas/CustomerPhoneCountry'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1ThreeDSecure'
addressLine2:
$ref: '#/components/schemas/CustomerAddressLine2'
city:
$ref: '#/components/schemas/CustomerCityThreeDSecure'
region:
$ref: '#/components/schemas/CustomerRegionThreeDSecure'
postalCode:
$ref: '#/components/schemas/CustomerPostalCodeThreeDSecure'
country:
$ref: '#/components/schemas/CustomerCountryThreeDSecure'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
shipping:
$ref: '#/components/schemas/CustomerShipping3DSecure'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
present:
$ref: '#/components/schemas/CardPresent'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
notes:
$ref: '#/components/schemas/TransactionNotes'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskIdRequest'
threeDSecure:
type: object
required:
- initiate
- browser
- headerContent
- challengeWindowSize
- transType
- channel
properties:
initiate:
$ref: '#/components/schemas/ThreeDSecureInitiateStandalone'
browser:
$ref: '#/components/schemas/ThreeDSecureBrowser'
headerContent:
$ref: '#/components/schemas/ThreeDSecureHeaderContent'
challengeWindowSize:
$ref: '#/components/schemas/ThreeDSecureChallengeWindowSize'
transType:
$ref: '#/components/schemas/ThreeDSecureTransType'
channel:
$ref: '#/components/schemas/ThreeDSecureChannel'
addressMatch:
$ref: '#/components/schemas/ThreeDSecureAddressMatch'
reqChallengeInd:
$ref: '#/components/schemas/ThreeDSecureReqChallengeInd'
completionUrl:
$ref: '#/components/schemas/CompletionURL3DSRequest'
risk:
$ref: '#/components/schemas/RiskTransactionRequest'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
example:
dateTime: '2022-05-04T09:18:23.283-07:00'
amount:
total: 160
currencyCode: EUR
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
card:
token:
value: '8048471746471119'
expirationDate: 1225
present: 'N'
transaction:
invoice: '730518'
notes: Transaction notes are added here
threeDSecure:
initiate: '03'
browser:
acceptHeader: >-
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
javaEnabled: true
javascriptEnabled: true
language: en-GB
colorDepth: '48'
screenWidth: 1920
screenHeight: 1080
tz: -480
headerContent: userAgent header
challengeWindowSize: '05'
transType: '01'
channel: '02'
completionUrl: https://merchant.com/completion
apiOptions:
- ALLOWPARTIALAUTH
TransactionResponseCode3DSStandalone:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- C
- D
- e
- f
- P
- R
- S
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|---------------|--------
A | Approved | The 3D Secure process was approved.
D | Declined | The 3D Secure process was declined.
ThreeDSecureTrxId:
type: string
example: a7bbd49a-ffe6-49b2-8a92-541f0a3b053d
maxLength: 36
description: |
The assigned 3D Secure transaction ID
ThreeDSecureCardholderInfo:
type: string
example: >-
We+were+unable+to+confirm+your+payment.Please+contact+us+on+0800+121+4251+quoting+the+reference+AL01
description: >
Provides additional information to the customer in particular cases when
3D secure Authentication failed.
CardResponse3DSChallenge:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
number:
$ref: '#/components/schemas/CardMaskedNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeResp'
token:
$ref: '#/components/schemas/CardTokenResponse'
TransactionResponseCode3DSFingerprint:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: H
enum:
- H
description: >
Response code indicating that the 3D Secure transaction requires device
fingerprinting.
Value |Description
-------|-----------
H | Device fingerprinting required. Issuer fingerprint URL returned
in the redirectURL field. See [Handling Device Fingerprint
Response](/guides/advanced-concepts/3d-secure#handling-device-fingerprint-response)
for details on how to handle the Device Fingerprint process.
RedirectURL3DSResponse:
type: string
example: https://issuer.com/challenge
description: >
URL to redirect the browser to the 3D Secure transaction response
indicates a Device Fingerprint or 3D Secure challenge is required.
TransactionResponseCode3DSChallenge:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: G
enum:
- G
description: >
Response code indicating that the 3D Secure transaction requires a
challenge.
Value |Description
-------|-----------
G | 3D Secure challenge required. Issuer challenge URL returned in
the redirectURL field.
HostResponseReasonCode3DSecure:
type: string
example: '1'
description: >
Returns a response code from the host.
| Value |
Description
|
| ----- |
-----------------------------------------------------------------------------------
|
| \-69 | Transaction has been declined. Invalid 3ds\_version
parameter. |
| \-68 | Authentication process timed out. Please try
again. |
| \-66 | Invalid combination of 3ds
values |
| \-65 | Merhant is not allowed for this
exemption |
| \-64 | Exemption is not allowed for this transaction
amount |
| \-63 | Merchant is not enrolled to 3D-secure
service. |
| \-50 | An error occurred during the 3D secure
process |
| \-39 | You need to be registered with the 3D Adviser service to
complete the request |
| \-37 | Transaction has been denied. Malformed or missing
parameter. |
| \-36 | The selected processor does not support some of the
parameters. |
| \-35 | Merchant is not
registered. |
| \-33 | You need to be registered with the routing service to complete
the routing request. |
| \-32 | You are not registered with the selected
Processor. |
| \-30 | Transaction Failed due to error in 3D secure
process. |
| \-20 | Authentication error. Please contact
support. |
| \-17 | Selected service is
unavailable |
| \-16 | Selected service is
unavailable |
| \-15 | Selected service is
unavailable |
| \-13 | Merchant is not enrolled in the 3D Secure Adviser
service. |
| \-12 | Transaction has been declined due to security
restrictions. |
| \-11 | Rejected. Format
Error |
| \-10 | System error. Please contact
support. |
| \-9 | Parameter(s)
malformed |
| \-8 | Parameter(s)
malformed |
| \-7 | Please contact
support. |
| 1 | Transaction not
allowed |
| 2 | Transaction not
allowed |
| 3 | Transaction not
allowed |
| 4 | Transaction not
allowed |
| 7 | The transaction was declined by the gateway and will not be
processed. |
| 9 | The transaction has been
denied. |
| 11 | The queried transaction is currently being processed. Please
try again. |
| 13 | The transaction has been
denied. |
| 15 | The transaction has been denied.
HostResponseReasonDescription3DSecure:
type: string
maxLength: 73
example: Pick Up Card
description: |
Returns a description from the host.
ThreeDSecureCompInd:
type: string
enum:
- 'Y'
- 'N'
- U
example: 'Y'
minLength: 1
maxLength: 1
description: >
Indicates whether or not the device fingerprint was completed
successfully.
Value| Description
-----|------------
Y | Yes
N | No
U | Unknown
TransactionInvoiceAlphanumeric:
type: string
maxLength: 10
example: '0510093358'
description: >
10 character invoice number assigned by the interface to identify a
transaction. An invoice number serves as a unique key that identifies a
transaction within a batch in Shift4's Gateway.
CustomerFirstNameAPM:
type: string
maxLength: 30
example: John
description: |
Customer first name
CustomerLastNameAPM:
type: string
maxLength: 30
example: Smith
description: |
Customer last name
CustomerCompanyName:
type: string
maxLength: 30
example: Shift4
description: |
Customer Company name
oct_payout_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- transaction
- card
- customer
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
notes:
$ref: '#/components/schemas/TransactionNotes'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- number
- expirationDate
- entryMode
- present
properties:
entryMode:
$ref: '#/components/schemas/CardEntryModeManual'
present:
$ref: '#/components/schemas/CardPresent'
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
customer:
oneOf:
- title: First and Last Name
type: object
required:
- firstName
- lastName
- emailAddress
- ipAddress
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameAPM'
lastName:
$ref: '#/components/schemas/CustomerLastNameAPM'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
- title: Company Name
type: object
required:
- companyName
- emailAddress
- ipAddress
properties:
companyName:
$ref: '#/components/schemas/CustomerCompanyName'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 135.87
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
present: 'N'
customer:
firstName: John
lastName: Smith
emailAddress: johnsmith@email.com
ipAddress: 63.57.84.101
transaction:
invoice: '192029'
notes: Transaction notes are added here
sourceIp: 172.110.166.244
oct_payout_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- transaction
- card
- customer
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
notes:
$ref: '#/components/schemas/TransactionNotes'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
card:
type: object
required:
- token
properties:
entryMode:
$ref: '#/components/schemas/CardEntryModeManual'
present:
$ref: '#/components/schemas/CardPresent'
token:
$ref: '#/components/schemas/CardTokenRequired'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
customer:
oneOf:
- title: First and Last Name
type: object
required:
- firstName
- lastName
- emailAddress
- ipAddress
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameAPM'
lastName:
$ref: '#/components/schemas/CustomerLastNameAPM'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
- title: Company Name
type: object
required:
- companyName
- emailAddress
- ipAddress
properties:
companyName:
$ref: '#/components/schemas/CustomerCompanyName'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 135.87
card:
token:
value: '8048471746471119'
customer:
companyName: Shift4
emailAddress: johnsmith@email.com
ipAddress: 63.57.84.101
transaction:
invoice: '192029'
notes: Transaction notes are added here
sourceIp: 172.110.166.244
AmountFeeOCT:
type: number
maxLength: 14
example: 1.5
description: |
The fee charged to process the OCT transaction.
TransactionAuthSourceAPM:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
description: >
In a response, a code returned by the processor to indicate which host
issued the response.
Value | Description
-------|----------------------------
A | APM (Online)
HostResponseOCT:
type: object
description: |
Returns the response code detailing why the transaction was declined.
properties:
reasonCode:
$ref: '#/components/schemas/HostResponseReasonCode'
reasonDescription:
$ref: '#/components/schemas/HostResponseReasonDescription'
TransactionRetrievalReferenceOCT:
type: string
readOnly: true
maxLength: 32
example: ICTN-178768-233-79170-FUX
description: >
Reference retrieval number assigned by the authorizing agency. This
value is printed on some receipts.
ErrorCodeNoCondition:
type: integer
maxLength: 5
readOnly: true
example: 64100
description: >
Code indicating the type of error that occurred. Refer to the [Error
Codes](/guides/appendices/error-codes) section of this document for more
details.
ErrorNoPrimarySecondary:
type: object
properties:
code:
$ref: '#/components/schemas/ErrorCodeNoCondition'
severity:
$ref: '#/components/schemas/ErrorSeverity'
shortText:
$ref: '#/components/schemas/ErrorShortText'
longText:
$ref: '#/components/schemas/ErrorLongText'
CustomerNewEmailAddress:
type: string
maxLength: 80
example: firstname.lastname@email.com
description: |
Customer's new email address.
ACHVerificationTypePrenotification:
type: string
example: P
enum:
- P
description: |
The type of verification used to validate the account.
Value | Description
------|---------------
P | Prenotification
TransactionResponseCodeACHPending:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: P
enum:
- P
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
P | Pending | The ACH transaction is pending
NotificationId:
type: string
format: uuid
minLength: 36
maxLength: 36
example: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
description: >
Notification ID value generated by Shift4 and returned in the response.
Used for matching webhook notifications back to their original request.
AmountTotalACH:
type: number
maxLength: 11
example: 143.29
description: >
The amount being processed for the ACH transaction. The amount must be
greater than zero with a maximum amount of 99999999.99.
AmountACH:
type: object
description: >
Object containing information regarding the amount being requested. The
`total` field within the object is required and specifies the amount
being requested.
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotalACH'
ACHPaymentTypeCode:
type: string
example: ST
enum:
- S
- R
- ST
description: >
Specifies the payment type. If not provided in the request the
transaction will default to `ST`.
Value | Description
------|---------------
S | Single Entry. Consumer authorizes the use of their ACH
credentials for a single transaction. Each subsequent transaction
requires the Consumer to authorize the use of their credentials.
R | Recurring. Transaction is sent on a set time frame for a set
amount. For example, a monthly gym membership.
ST | Standing Authorization. Consumer authorizes the use of their ACH
credentials for the initial and subsequent transactions. Each subsequent
transaction does not require the consumer to authorize the use of their
credentials.
ach_sale_bankaccount:
title: Bank & Routing Number
type: object
required:
- dateTime
- amount
- transaction
- ach
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountACH'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
ach:
type: object
required:
- accountNumber
- routingNumber
- accountType
- accountHolderName
properties:
accountNumber:
$ref: '#/components/schemas/ACHAccountNumber'
routingNumber:
$ref: '#/components/schemas/ACHRoutingNumber'
accountType:
$ref: '#/components/schemas/ACHAccountType'
accountHolderName:
$ref: '#/components/schemas/ACHAccountHolderName'
paymentTypeCode:
$ref: '#/components/schemas/ACHPaymentTypeCode'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
amount:
total: 135.87
transaction:
invoice: '192029'
ach:
accountNumber: '1234567890'
routingNumber: '121000248'
accountHolderName: John Smith
accountType: PC
sourceIp: 172.110.166.244
ACHVerifyBalance:
type: boolean
example: true
description: >
Send as `true` if you want to verify the balance before processing the
ACH transaction.
The balance check will only be possible if the customer logged into
their bank account when verifying their account. If the account was
verified via Micro Deposits or Prenotification it is not possible to
verify the balance. If the balance check is not possible this value will
be ignored and the transaction will be processed.
ach_sale_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- transaction
- sourceIp
- token
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountACH'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
token:
$ref: '#/components/schemas/TokenACH'
ach:
type: object
properties:
verifyBalance:
$ref: '#/components/schemas/ACHVerifyBalance'
paymentTypeCode:
$ref: '#/components/schemas/ACHPaymentTypeCode'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
amount:
total: 135.87
transaction:
invoice: '192029'
token:
value: '9829283019231234'
ach:
verifyBalance: true
sourceIp: 172.110.166.244
ACHBalanceVerificationResult:
type: string
example: VS
readOnly: true
description: >
Specifies whether or not the balance was verified
Value | Description
------|-------------
VS | Balance was verified and requested amount is below account
balance
VF | Balance was verified and account balance is less then the
requested amount
NC | Unable to check balance
NS | Account does not support balance verification
TransactionResponseCodeACH:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: P
enum:
- P
- D
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
P | Pending | The ACH transaction is pending
D | Decline | The ACH transaciton was declined.
e | Error | The ACH transaction resulted in an error.
ach_refund_bankaccount:
title: Bank & Routing Number
type: object
required:
- dateTime
- amount
- transaction
- ach
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountACH'
transaction:
type: object
required:
- invoice
- originalInvoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
ach:
type: object
required:
- accountNumber
- routingNumber
- accountType
- accountHolderName
properties:
accountNumber:
$ref: '#/components/schemas/ACHAccountNumber'
routingNumber:
$ref: '#/components/schemas/ACHRoutingNumber'
accountType:
$ref: '#/components/schemas/ACHAccountType'
accountHolderName:
$ref: '#/components/schemas/ACHAccountHolderName'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
amount:
total: 135.87
transaction:
invoice: '192030'
originalInvoice: '192029'
ach:
accountNumber: '1234567890'
routingNumber: '121000248'
accountType: PC
accountHolderName: John Smith
sourceIp: 172.110.166.244
ach_refund_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- transaction
- sourceIp
- token
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountACH'
transaction:
type: object
required:
- invoice
- originalInvoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
token:
$ref: '#/components/schemas/TokenACH'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
amount:
total: 135.87
transaction:
invoice: '192030'
originalInvoice: '192029'
token:
value: '9829283019231234'
sourceIp: 172.110.166.244
ACHPlaidLinkTokenClientUserId:
type: string
example: ae1a59fe-8646-4637-bbb8-d270856c508c
description: >
A unique ID representing the end user. Typically this will be a user ID
number from your application. Personally identifiable information, such
as an email address or phone number, should not be used in the
client_user_id.
ACHPlaidLinkTokenLanguage:
type: string
example: en
enum:
- da
- nl
- en
- et
- fr
- de
- it
- lv
- lt
- 'no'
- po
- ro
- es
- se
description: >
The language that Link should be displayed in. If no language is sent it
will default to English.
Value | Description
------|-------------
da | Danish
nl | Dutch
en | English
et | Estonian
fr | French
de | German
it | Italian
lv | Latvian
lt | Lithuanian
no | Norwegian
po | Polish
ro | Romanian
es | Spanish
se | Swedish
ACHPlaidLinkTokenRedirectUrl:
type: string
example: merchant.com
description: >
Contains the URL to which the browser should be redirected.
**Conditional: must be sent if the customer is using a 'mobile device'
or 'website with redirection'. Also the same url needs to be provided
during onboarding or later via LBM.**
TransactionResponseCodeACHPlaidLinkToken:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: S
enum:
- S
- F
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
S | Success | The Plaid link token request was successful.
F | Fail | The Plaid link token request was unsuccessful.
ACHPlaidLinkToken:
type: string
readOnly: true
example: link-sandbox-bea285c1-ad79-4191-8d1b-aaf537f7df59
description: |
Plaid Link Token
ACHPlaidLinkTokenExpiration:
type: string
readOnly: true
example: '2023-02-13T21:00:25Z'
description: |
Plaid Link Token Expiration
ACHPlaidPublicToken:
type: string
example: public-sandbox-0b7f845f-fa53-4e0a-b77b-9476e71be5ae
description: |
Plaid Public Token
ACHPlaidPublicTokenMetadata:
type: string
example: >-
{"status":null,"link_session_id":"81fcbacf-e2f8-422b-b041-5e629b32ae3c","institution":{"name":"Houndstooth
Bank","institution_id":"ins_109512"},"accounts":[{"id":"dvMPrZ9kR1C8xdRvLR6QIaREG5vBo6SBjaRrr","name":"Plaid
Checking","mask":"0000","type":"depository","subtype":"checking","verification_status":"pending_automatic_verification","class_type":null}],"account":{"id":"dvMPrZ9kR1C8xdRvLR6QIaREG5vBo6SBjaRrr","name":"Plaid
Checking","mask":"0000","type":"depository","subtype":"checking","verification_status":"pending_automatic_verification","class_type":null},"account_id":"dvMPrZ9kR1C8xdRvLR6QIaREG5vBo6SBjaRrr","transfer_status":null,"wallet":null,"public_token":"public-sandbox-b5e58738-1a75-4a51-b4de-10f24c561038"}
description: >
JSON encoded object received from the Plaid SDK. The metadata object
received from the Plaid SDK must be json encoded and sent in this
object.
TransactionResponseCodeACHPlaidPublicTokenExchange:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
- P
description: >
Code indicating the Shift4 host response.
| Value | Description | Details
|--------|--------------|-----------------------------------------------------------------------------------|
| A | Success | The Plaid public token exchange request was
successful. |
| D | Fail | The Plaid public token exchange request was
unsuccessful. |
| P | Pending | The Plaid public token exchange request is
using the automated microdeposit flow. |
ACHAccountNumberLastFour:
type: string
minLength: 2
maxLength: 4
example: '1234'
description: >
The last 2-4 alphanumeric characters of an account's official account
number.
UpdaterRequestId:
type: string
format: uuid
example: bad91cf7-0664-40d5-877f-cd4cbe36fc9a
description: >
Updater Request ID. Returned in the response to the [Account
Update](/apis/payments-platform-rest/openapi/updater/updaterrequest) API
request. Sent in the [Account Update
Status](/apis/payments-platform-rest/openapi/updater/updaterstatus)
request when checking on the status of a previous updater request.
UpdaterToken:
type: string
maxLength: 16
description: >
The token representing the card account number for which you are
requesting an update.
UpdaterCardsStatus:
type: string
maxLength: 1
enum:
- A
- B
- C
- D
- E
- F
- H
- O
- T
- U
description: >
The status of the card update request.
| Value | Description
|
| ----- | -------------------------------------------------------------
|
| A | New account number and/or new expiration date.
|
| B | New expiration date, same account number.
|
| C | Account is marked as closed.
|
| D | Contact cardholder for updated information.
|
| E | No updates were found but the account is valid.
|
| F | No match for the data provided. Participating BIN/ issuer.
|
| H | No match for the data provided. Non-participating BIN/issuer.
|
| O | Cardholder opted out from service.
|
| T | Token not found / Invalid
|
| U | Unknown error
|
UpdaterExpirationDate:
type: string
minLength: 4
maxLength: 4
description: |
The card's expiration date in MMYY format.
UpdaterNewExpirationDate:
type: string
minLength: 4
maxLength: 4
description: |
The card's updated expiration date in MMYY format.
UpdaterNewToken:
type: string
maxLength: 16
description: >
The token representing the new card number if the card has been
replaced.
UpdaterStatus:
type: string
maxLength: 1
enum:
- P
- C
example: C
description: |
The status of the card update request.
| Value | Description | Details |
| ----- | ------------|----------------------------------------------- |
| P | Pending | Data is not ready yet, please try again later. |
| C | Completed | Data is completed and sent in cards array. |
dcc_ratelookup_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
token:
$ref: '#/components/schemas/CardTokenRequired'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
card:
token:
value: '8048471746471119'
dcc_ratelookup_token_legacy:
title: Legacy Token
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
token:
$ref: '#/components/schemas/CardTokenRequiredLegacy'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
card:
token:
value: 11191pn83hbkkety
serialNumber: '123456'
dcc_ratelookup_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
p2pe:
data: >-
02df00801f2e1e00939b252a323232312a2a2a2a2a2a2a2a303030395e4d43322f4455414c20545241434b5e2a2a2a2a2a2a2a2a2a2a3f2a3b323232312a2a2a2a2a2a2a2a303030393d2a2a2a2a2a2a2a2a2a2a3f2aa0744ac45073ef2e516cd6b1111c990effb75fbe6521e40be763593c385c6c7cdcd41ffbabb59cd6c999bfe636dff9ef8408e38906db0fdc7497df96a3e8f564b9a4e1bd802f326eb9848b447512384700000000000000000000000000000000000000000000000000000000000000000000000000000000383237543839303939306299495001000000000521d503
format: '02'
EMVEncryptedTagsOnly:
type: object
writeOnly: true
description: |
Encrypted EMV tags
required:
- tlvData
properties:
tlvData:
type: string
writeOnly: true
example: >-
5A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C31799573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B3
description: >
This field contains the P2PE encrypted tags (5A and 57) in standard
TLV format. The P2PE encrypted tags (5A and 57) will have the
entire TLV string encrypted and the encrypted data will be in a TLV
format using the same tag. For example, tag 5A would look like the
following:
- Encrypted: `5A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C3179`
- Decrypted: `5A084761739001010010`
dcc_ratelookup_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- card
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMVEncryptedTagsOnly'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
p2pe:
format: '05'
ksn: FFFF49517300010000CA
emv:
tlvData: >-
5A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C31799573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B3
dcc_ratelookup_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- card
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
card:
type: object
required:
- entryMode
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
p2pe:
data: >-
44188C9A20DD2092254F7FEB0AABD531D86EA10DA37E5540C25B53658BA4FBB903828F835A7287481F6FB5C17A879ECC9768D4C12F99532A
format: '05'
ksn: FFFF49517300010000C9
dcc_ratelookup_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
p2pe:
data: >-
FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9
format: '03'
dcc_ratelookup_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
p2pe:
data: >-
FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270
format: '03'
dcc_ratelookup_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- currencyCode
- amount
- clerk
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
clerk:
$ref: '#/components/schemas/Clerk'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
example:
dateTime: '2024-07-09T09:18:23.283-07:00'
currencyCode: USD
amount:
total: 160
clerk:
numericId: 1576
card:
entryMode: M
expirationDate: 1230
number: '4321000000001119'
DCCSupportIndicator:
type: string
enum:
- '0'
- '1'
example: '1'
description: >
Specifies whether or not DCC can be used.
Value | Description
------|--------------------------------------------------------------------------------------
0 | DCC cannot be used (Relevant for a BIN that is not supported /
No relevant conversion).
1 | The request was successful. DCC can be used.
DCCResponse:
type: object
description: |
Object containing Dynamic Currency Conversion (DCC) information.
properties:
rateTimeStamp:
$ref: '#/components/schemas/DCCRateTimeStamp'
currencyCode:
$ref: '#/components/schemas/DCCCurrencyCode'
foreignAmount:
$ref: '#/components/schemas/DCCForeignAmount'
conversionRate:
$ref: '#/components/schemas/DCCConversionRate'
marginPercentage:
$ref: '#/components/schemas/DCCMarginPercentage'
currencyMinorUnits:
$ref: '#/components/schemas/DCCCurrencyMinorUnits'
transactionId:
$ref: '#/components/schemas/DCCTransactionID'
diffOverEcb:
$ref: '#/components/schemas/DCCDiffOverECB'
marginOverEcb:
$ref: '#/components/schemas/DCCMarginOverECB'
displayUnit:
$ref: '#/components/schemas/DCCDisplayUnit'
provider:
$ref: '#/components/schemas/DCCProvider'
supportIndicator:
$ref: '#/components/schemas/DCCSupportIndicator'
RuleCheck:
type: array
items:
type: string
enum:
- SURCHARGE
example:
- SURCHARGE
writeOnly: true
description: >
Specifies which rule checks are being requested:
| Value |
Description
|
|-----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| SURCHARGE | Checks to see if a card is eligible for surcharging. If
eligible the `surcharge` object will be returned containing the
surcharge percentage that can be applied. |
TransactionRuleVerify:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
ClerkOptional:
type: object
properties:
numericId:
$ref: '#/components/schemas/ClerkNumericId'
rules_verify_token_gtv:
title: GTV Token
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
card:
type: object
required:
- token
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
token:
$ref: '#/components/schemas/CardTokenRequired'
clerk:
$ref: '#/components/schemas/ClerkOptional'
rules_verify_p2pe_idtech:
title: P2PE - ID TECH - EMV/MSR/Manual
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
p2pe:
$ref: '#/components/schemas/P2PEType0102IDTECH'
clerk:
$ref: '#/components/schemas/ClerkOptional'
rules_verify_p2pe_tdesdukpt_emv:
title: P2PE - TDES DUKPT - EMV
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- p2pe
- emv
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTEMV'
emv:
$ref: '#/components/schemas/EMVEncryptedTagsOnly'
clerk:
$ref: '#/components/schemas/ClerkOptional'
rules_verify_p2pe_tdesdukpt_msr:
title: P2PE - TDES DUKPT - MSR/Manual
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
p2pe:
$ref: '#/components/schemas/P2PEType05TDESDUKPTMSR'
clerk:
$ref: '#/components/schemas/ClerkOptional'
rules_verify_p2pe_onguardsde_emv:
title: P2PE - On-Guard SDE - EMV
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEEMV'
clerk:
$ref: '#/components/schemas/ClerkOptional'
rules_verify_p2pe_onguardsde_msr:
title: P2PE - On-Guard SDE - MSR/Manual
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- p2pe
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
p2pe:
$ref: '#/components/schemas/P2PEType03OnguardSDEMSR'
clerk:
$ref: '#/components/schemas/ClerkOptional'
rules_verify_unencryptedcard:
title: Card Number Unencrypted
type: object
required:
- dateTime
- amount
- ruleCheck
- transaction
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
ruleCheck:
$ref: '#/components/schemas/RuleCheck'
transaction:
$ref: '#/components/schemas/TransactionRuleVerify'
card:
type: object
required:
- number
- expirationDate
properties:
number:
$ref: '#/components/schemas/CardNumber'
expirationDate:
$ref: '#/components/schemas/CardExpirationDate'
clerk:
$ref: '#/components/schemas/ClerkOptional'
PaymentLinkId:
readOnly: true
type: string
example: link_8kdskX8DZ8FR6W3acYPXiyAN
description: |
Identifier of Payment Link
PaymentLinkType:
type: string
enum:
- line_items
- card_verification
default: line_items
description: >
The kind of flow the payment link performs.
- `line_items` (default) — a standard payment flow. The customer pays
for the products defined in `lineItems`.
- `card_verification` — performs a $0 authorization to confirm the card
is valid (a security check that a real card and cardholder are behind
it) **without** charging it. The validated card is also saved to the
customer. These links take **no** `lineItems`, but **require** a
top-level `currency` and a defined `customer`.
When omitted, the link defaults to `line_items`.
PaymentLinkLineItemsProductName:
type: string
example: Example charge
description: Name of a product
PaymentLinkLineItemsProductDescription:
type: string
example: Some product description
description: >-
Description of a product, shown to the customer on the hosted checkout
page directly under the product name
PaymentLinkLineItemsProductAmountCurrencyCode:
type: string
example: USD
description: currency represented as a three-letter ISO currency code
PaymentLinkLineItemsProductAmountTotal:
type: number
example: 10
description: >
Payment amount (in major units, with number of allowed decimal places
depending on currency)
PaymentLinkLineItemsProductAmountOptionsArray:
type: array
items:
type: number
example:
- 10
- 20
- 30
description: >
List of available pre-defined payment amounts. Allows the customer to
select from a list of options for how much they want to pay. Useful
whenever a merchant wants to suggest a few selectable amounts — for
example pay-what-you-want pricing, tips, or donations.
PaymentLinkLineItemsProductAmountCustom:
type: object
description: |
Possible range of custom payment amount
required:
- min
- max
properties:
min:
type: number
example: 10
description: |
Minimum value of custom payment amount
max:
type: number
example: 200
description: |
Maximum value of custom payment amount
PaymentLinkLineItemsArray:
type: array
description: |
List of line items
items:
type: object
required:
- product
properties:
product:
type: object
description: |
Definition of a product
required:
- name
- amount
- currencyCode
properties:
name:
$ref: '#/components/schemas/PaymentLinkLineItemsProductName'
description:
$ref: '#/components/schemas/PaymentLinkLineItemsProductDescription'
currencyCode:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountCurrencyCode
amount:
description: >
Payment amount definition. Provide `total` for a fixed-amount
link, or `options` and/or `custom` to let the customer choose
the amount. `total` is mutually exclusive with `options` and
`custom`; a customer-chosen amount link may use `options`,
`custom`, or both together.
oneOf:
- title: Fixed Total
type: object
additionalProperties: false
required:
- total
properties:
total:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountTotal
- title: Customer-chosen amount
type: object
additionalProperties: false
minProperties: 1
properties:
options:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountOptionsArray
custom:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountCustom
PaymentLinkCurrency:
type: string
example: USD
description: >
Currency for the authorization, represented as a three-letter ISO
currency code.
**Required only for `card_verification` links.** For `line_items` links
the currency is taken from the line items and this field may be omitted.
PaymentLinkReturnURL:
type: string
description: >
Customer will be redirected to this URL after completing payment on
`paymentLink.url` page.
When not provided the return URL from account setting will be used.
Some dynamic parameters will be appended to this URL. Example:
`{returnUrl}?status=success&checkout_session_id=chse_xxxxx`
PaymentLinkCollectBillingAddress:
type: boolean
description: >
If the value is true, the customer will be asked to provide the billing
address.
Default: false
PaymentLinkCollectShippingAddress:
type: boolean
description: >
If the value is true, the customer will be asked to provide the shipping
address.
Default: false
PaymentLinkRestrictions:
type: object
description: >
This object describes time boundaries and preset number of charges made
with the Payment link
properties:
dates:
type: object
properties:
activatesAt:
type: string
format: ISO 8601
example: '2025-10-20T11:22:33.444Z'
description: >
Activation date of a payment link. By default, payment links are
active at the moment of creation.
Max: +1 month
expiresAt:
type: string
format: ISO 8601
example: '2025-10-27T12:00:00.000Z'
description: >
Expiration date of a payment link. By default, payment links do
not expire.
payments:
type: object
properties:
limit:
type: integer
example: 1
minimum: 1
maximum: 999
description: >
Maximum number of successful payments allowed to be done using
this payment link.
Default: 1
Range: 1–999
count:
readOnly: true
type: integer
example: 0
description: |
Number of successful payments
PaymentLinkNotificationsRequest:
type: object
description: |
Payment Links notifications
properties:
share:
type: object
properties:
email:
type: boolean
description: >
If this flag is set to true, the payment link is automatically
sent by email to the customer. The email address is taken from
the `customer` object on the request — either supplied inline
via `customer.emailAddress`, or read from an existing customer
record referenced by `customer.id`.
PaymentLinkStaticFields:
type: object
description: >
List of custom information (for example: hotel reservation details) in
key value pair format. A maximum of 10 entries can be provided.
The key contains the title of custom information and is a maximum of 55
characters.
The value contains the text of custom information and is a maximum of
255 characters.
Examples:
`"Date of event": "12 April"`
`"Invoice number": "ABC2016"`
additionalProperties:
type: string
example:
Date of event: 12 April
Invoice number: ABC2016
PaymentLinkCustomFieldsTitle:
type: string
maxLength: 32
example: Additional information
description: |
Title of custom fields section
PaymentLinkCustomFieldsArray:
type: array
maxItems: 3
description: >
Using custom fields, the merchant can request additional information
from the customer. Each custom field will be displayed in the form as a
new text field to fill out.
items:
type: object
required:
- key
- label
properties:
key:
type: string
maxLength: 255
example: special_wishes
description: |
Identifier of custom field
label:
type: string
maxLength: 20
example: Special wishes
description: |
Label of custom field
optional:
type: boolean
description: >
If this flag is set to `true`, then customer doesn't have to
provide any value for this custom field
PaymentLinkLocale:
type: string
enum:
- auto
- en
- bg
- cs
- da
- de
- el
- es
- et
- fi
- fr
- hr
- hu
- it
- lt
- lv
- nl
- 'no'
- pl
- pt
- ro
- ru
- sk
- sl
- be
description: |
Language that will be used on payment page.
Default: `auto` = use browser language
PaymentLinkVendorReference:
type: string
maxLength: 50
example: ref_123456789
description: >
Merchant Defined Descriptor related to the Payment Link. This field is
reportable on the merchant portal and settlement extract.
PaymentLinkRequest:
type: object
properties:
id:
$ref: '#/components/schemas/PaymentLinkId'
type:
$ref: '#/components/schemas/PaymentLinkType'
lineItems:
$ref: '#/components/schemas/PaymentLinkLineItemsArray'
currency:
$ref: '#/components/schemas/PaymentLinkCurrency'
returnUrl:
$ref: '#/components/schemas/PaymentLinkReturnURL'
collectBillingAddress:
$ref: '#/components/schemas/PaymentLinkCollectBillingAddress'
collectShippingAddress:
$ref: '#/components/schemas/PaymentLinkCollectShippingAddress'
restrictions:
$ref: '#/components/schemas/PaymentLinkRestrictions'
notifications:
$ref: '#/components/schemas/PaymentLinkNotificationsRequest'
staticFields:
$ref: '#/components/schemas/PaymentLinkStaticFields'
customFieldsTitle:
$ref: '#/components/schemas/PaymentLinkCustomFieldsTitle'
customFields:
$ref: '#/components/schemas/PaymentLinkCustomFieldsArray'
locale:
$ref: '#/components/schemas/PaymentLinkLocale'
vendorReference:
$ref: '#/components/schemas/PaymentLinkVendorReference'
description: >
Configuration of the payment link.
Required fields depend on `type`:
- `line_items` (default) — `lineItems` is required; `currency` is taken
from the line items.
- `card_verification` — `currency` is required and `lineItems` must be
omitted. A `customer` must also be supplied at the top level of the
request.
oneOf:
- title: Line items (payment)
required:
- lineItems
properties:
type:
const: line_items
- title: Card verification
required:
- type
- currency
properties:
type:
const: card_verification
PaymentLinksCustomer:
oneOf:
- title: New Customer
type: object
required:
- emailAddress
properties:
emailAddress:
type: string
example: john@example.com
description: |
Email address. Required when creating an inline customer.
phoneCountry:
type: string
example: US
description: >
Two-letter ISO 3166-1 alpha-2 country code used to determine the
phone number's country prefix (e.g., `US`, `GB`, `DE`).
Required when `phoneNumber` does not already include the country
calling code prefix (e.g., `+1`). When provided, the API
prepends the corresponding prefix to `phoneNumber` and returns
the full number in the response.
phoneNumber:
type: string
example: +1 2345678901
description: >
Customer phone number. Two formats are accepted:
- **With country prefix** (e.g., `+1 2345678901`) —
`phoneCountry` is not required.
- **Without country prefix** (e.g., `2345678901`) —
`phoneCountry` must be set to the appropriate alpha-2 code.
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
middleName:
$ref: '#/components/schemas/CustomerMiddleName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
addressCity:
type: string
example: New York
description: |
City
addressRegion:
type: string
example: NY
description: |
Region or state
addressCountry:
type: string
example: US
description: |
Country
- title: Existing Customer
type: object
required:
- id
properties:
id:
type: string
example: cust_oM1i4j7EsIY7W5vqqF76diGw
description: |
Identifier of an existing customer to reuse
PaymentLinksMetadata:
type: object
description: |
Key-value object for storing additional custom data.
This is never displayed to customer on the payment page.
Examples:
`"order_id": "12345"`
`"campaign_code": "SUMMER2025"`
additionalProperties:
type: string
example:
order_id: '12345'
campaign_code: SUMMER2025
PaymentLinksDateTime:
type: string
format: ISO 8601
readOnly: true
example: '2024-05-21T09:18:23.283-07:00'
description: |
Date-time when the object was created
PaymentLinkStatus:
type: string
enum:
- active
- expired
- deactivated
- completed
- scheduled
description: >
Status of a Payment link. It can be one of the following:
Value | Description
------------|---------------
active | Payment link is active and functional
expired | Payment link expired and is no longer functional
deactivated | Payment link has been deactivated by merchant
completed | preset number of successful transactions made with this
payment link has been reached, it is no longer functional
scheduled | Payment link is yet to become active
In the
[/paymentlinks/update](/apis/payments-platform-rest/openapi/payment-links/paymentslinkupdate)
request this field can be used to deactivate and reactivate an existing
payment link.
PaymentLinkLastOpened:
type: string
format: ISO 8601
example: '2025-10-20T11:22:33.444Z'
description: >
The date the link was last opened. Omitted if the link has not been
opened yet.
PaymentLinkLineItemsArrayResponse:
type: array
description: |
List of line items
items:
type: object
properties:
product:
type: object
description: |
Definition of a product
properties:
name:
$ref: '#/components/schemas/PaymentLinkLineItemsProductName'
description:
$ref: '#/components/schemas/PaymentLinkLineItemsProductDescription'
currencyCode:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountCurrencyCode
amount:
description: >
Payment amount definition. A fixed-amount link returns
`total`; a customer-chosen amount link returns `options`,
`custom`, or both. `total` is never present alongside
`options` or `custom`.
oneOf:
- title: Fixed Total
type: object
properties:
total:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountTotal
- title: Customer-chosen amount
type: object
properties:
options:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountOptionsArray
custom:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountCustom
PaymentLinkURL:
type: string
example: https://pay.shift4.com/link_8kdskX8DZ8FR6W3acYPXiyAN
description: |
URL that can be used to process payment defined by this Payment Link
PaymentLinkNotificationsResponse:
type: object
description: |
Payment Links notifications
properties:
share:
type: object
properties:
email:
type: object
description: |
Email notification details
properties:
emailAddress:
readOnly: true
type: string
example: john@example.com
description: |
Email address
status:
readOnly: true
type: string
enum:
- sent
- delivered
- failed
description: |
Email delivery status.
PaymentLinkResponse:
type: object
properties:
id:
$ref: '#/components/schemas/PaymentLinkId'
type:
$ref: '#/components/schemas/PaymentLinkType'
status:
$ref: '#/components/schemas/PaymentLinkStatus'
lastOpened:
$ref: '#/components/schemas/PaymentLinkLastOpened'
lineItems:
$ref: '#/components/schemas/PaymentLinkLineItemsArrayResponse'
currency:
$ref: '#/components/schemas/PaymentLinkCurrency'
url:
$ref: '#/components/schemas/PaymentLinkURL'
returnUrl:
$ref: '#/components/schemas/PaymentLinkReturnURL'
collectBillingAddress:
$ref: '#/components/schemas/PaymentLinkCollectBillingAddress'
collectShippingAddress:
$ref: '#/components/schemas/PaymentLinkCollectShippingAddress'
restrictions:
$ref: '#/components/schemas/PaymentLinkRestrictions'
notifications:
$ref: '#/components/schemas/PaymentLinkNotificationsResponse'
staticFields:
$ref: '#/components/schemas/PaymentLinkStaticFields'
customFieldsTitle:
$ref: '#/components/schemas/PaymentLinkCustomFieldsTitle'
customFields:
$ref: '#/components/schemas/PaymentLinkCustomFieldsArray'
locale:
$ref: '#/components/schemas/PaymentLinkLocale'
vendorReference:
$ref: '#/components/schemas/PaymentLinkVendorReference'
PaymentLinksCustomerResponse:
type: object
properties:
id:
type: string
readOnly: true
example: cust_oM1i4j7EsIY7W5vqqF76diGw
description: |
Identifier of the customer
emailAddress:
type: string
example: john@example.com
description: |
Email
phoneCountry:
type: string
example: US
description: >
Two-letter ISO 3166-1 alpha-2 country code of the phone number's
country (e.g., `US`, `GB`, `DE`). Present when the customer was
created with `phoneCountry` set.
phoneNumber:
type: string
example: +1 2345678901
description: >
Phone number. When `phoneCountry` was provided on creation, the
number is returned with the corresponding country calling code
prepended.
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
middleName:
$ref: '#/components/schemas/CustomerMiddleName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
addressCity:
type: string
example: New York
description: |
City
addressRegion:
type: string
example: NY
description: |
Region or state
addressCountry:
type: string
example: US
description: |
Country
PaymentLinksHasMore:
type: boolean
description: >
If the value is true then more objects can be listed by requesting next
page
PaymentLinkUpdateRequest:
type: object
properties:
id:
$ref: '#/components/schemas/PaymentLinkId'
status:
$ref: '#/components/schemas/PaymentLinkStatus'
lineItems:
type: array
description: |
List of line items
items:
type: object
properties:
product:
type: object
description: |
Definition of a product
properties:
name:
$ref: '#/components/schemas/PaymentLinkLineItemsProductName'
description:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductDescription
currencyCode:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountCurrencyCode
amount:
description: >
Payment amount definition. Provide `total` for a
fixed-amount link, or `options` and/or `custom` to let the
customer choose the amount. `total` is mutually exclusive
with `options` and `custom`; a customer-chosen amount link
may use `options`, `custom`, or both together.
oneOf:
- title: Fixed Total
type: object
additionalProperties: false
required:
- total
properties:
total:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountTotal
- title: Customer-chosen amount
type: object
additionalProperties: false
minProperties: 1
properties:
options:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountOptionsArray
custom:
$ref: >-
#/components/schemas/PaymentLinkLineItemsProductAmountCustom
returnUrl:
$ref: '#/components/schemas/PaymentLinkReturnURL'
collectBillingAddress:
$ref: '#/components/schemas/PaymentLinkCollectBillingAddress'
collectShippingAddress:
$ref: '#/components/schemas/PaymentLinkCollectShippingAddress'
restrictions:
$ref: '#/components/schemas/PaymentLinkRestrictions'
notifications:
$ref: '#/components/schemas/PaymentLinkNotificationsRequest'
staticFields:
$ref: '#/components/schemas/PaymentLinkStaticFields'
customFieldsTitle:
$ref: '#/components/schemas/PaymentLinkCustomFieldsTitle'
customFields:
$ref: '#/components/schemas/PaymentLinkCustomFieldsArray'
locale:
$ref: '#/components/schemas/PaymentLinkLocale'
CheckoutSessionId:
readOnly: true
type: string
example: chse_wMCUGVZgpf45fWHzKbYWMKmZ
description: |
Identifier of a Checkout Session
CheckoutSessionStaticFields:
type: object
description: |
List of information displayed on the payment page
additionalProperties:
type: string
example:
Date of event: 12 April
Invoice number: ABC2016
CheckoutSessionCustomFieldsTitle:
type: string
maxLength: 32
example: Additional information
description: |
Title of custom fields section
CheckoutSessionCustomFieldsArray:
type: array
maxItems: 3
description: >
List of custom fields that were collected from customer on the payment
page
items:
type: object
required:
- key
- label
properties:
key:
type: string
maxLength: 255
example: special_wishes
description: |
Identifier of custom field
label:
type: string
maxLength: 20
example: Special wishes
description: |
Label of custom field
optional:
type: boolean
description: >
If this flag is set to true, then customer was not required to
provide any value for this custom field
value:
type: string
example: Happy Holidays
description: |
The value that was provided by the customer for this custom field
CheckoutSessionLastTransaction:
type: object
description: >
Contains the API response from the last transaction processed. See the
[Sale Response
Body](/apis/payments-platform-rest/openapi/transactions/transactionssale#transactions/transactionssale/response&c=200)
for the full response structure.
example:
result:
- dateTime: '2024-05-21T09:18:23.283-07:00'
amount:
total: '10.99'
tax: '0.00'
transaction:
invoice: '0510093358'
authorizationCode: '198399'
saleFlag: S
CheckoutSessionResponse:
type: object
properties:
id:
$ref: '#/components/schemas/CheckoutSessionId'
staticFields:
$ref: '#/components/schemas/CheckoutSessionStaticFields'
customFieldsTitle:
$ref: '#/components/schemas/CheckoutSessionCustomFieldsTitle'
customFields:
$ref: '#/components/schemas/CheckoutSessionCustomFieldsArray'
lastTransaction:
$ref: '#/components/schemas/CheckoutSessionLastTransaction'
ACHDistributeBankAccount:
title: Bank & Routing Number
type: object
required:
- amount
- transaction
- ach
properties:
amount:
$ref: '#/components/schemas/AmountACH'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
ach:
type: object
required:
- accountNumber
- routingNumber
- accountType
- accountHolderName
properties:
accountNumber:
$ref: '#/components/schemas/ACHAccountNumber'
routingNumber:
$ref: '#/components/schemas/ACHRoutingNumber'
accountType:
$ref: '#/components/schemas/ACHAccountType'
accountHolderName:
$ref: '#/components/schemas/ACHAccountHolderName'
accountVerified:
$ref: '#/components/schemas/ACHAccountVerified'
paymentTypeCode:
$ref: '#/components/schemas/ACHPaymentTypeCode'
example:
amount:
total: 135.87
transaction:
invoice: '192029'
ach:
accountNumber: '1234567890'
routingNumber: '121000248'
accountHolderName: John Smith
accountType: PC
accountVerified: true
ACHDistributeGTVToken:
title: GTV Token
type: object
required:
- amount
- transaction
- token
properties:
amount:
$ref: '#/components/schemas/AmountACH'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoiceAlphanumeric'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
token:
$ref: '#/components/schemas/TokenACH'
ach:
type: object
properties:
verifyBalance:
$ref: '#/components/schemas/ACHVerifyBalance'
paymentTypeCode:
$ref: '#/components/schemas/ACHPaymentTypeCode'
example:
amount:
total: 135.87
transaction:
invoice: '192029'
token:
value: '9829283019231234'
ach:
verifyBalance: true
EMVCAPKVersion:
type: number
example: 1
description: >
The version of the EMV CA Public Keys (CAPKs). This field will increment
any time changes are made to the EMV CAPKs. It can be used to determine
if there are any changes since the previous time you requested the keys.
EMVCAPKAid:
type: string
example: A000000003
description: |
EMV application identifier.
EMVCAPKIndex:
type: string
example: '92'
description: |
EMV CA Public Key Index
EMVCAPKExpDate:
type: string
example: '12312030'
description: |
EMV CA Public Key Expiration Date in MMDDYYYY format.
EMVCAPKAlgorithm:
type: string
example: '01'
description: |
EMV CA Public Key Algorithm
EMVCAPKHashAlgorithm:
type: string
example: '01'
description: |
EMV CA Public Key Hash Algorithm
EMVCAPKKey:
type: string
example: >-
996AF56F569187D09293C14810450ED8EE3357397B18A2458EFAA92DA3B6DF6514EC060195318FD43BE9B8F0CC669E3F844057CBDDF8BDA191BB64473BC8DC9A730DB8F6B4EDE3924186FFD9B8C7735789C23A36BA0B8AF65372EB57EA5D89E7D14E9C7B6B557460F10885DA16AC923F15AF3758F0F03EBD3C5C2C949CBA306DB44E6A2C076C5F67E281D7EF56785DC4D75945E491F01918800A9E2DC66F60080566CE0DAF8D17EAD46AD8E30A247C9F
description: |
EMV CA Public key
EMVCAPKExponent:
type: string
example: '03'
description: |
EMV CA Public Key Exponent
EMVCAPKChecksum:
type: string
example: 429C954A3859CEF91295F663C963E582ED6EB253
description: |
EMV CA Public Key Checksum
EMVCAPKObject:
type: object
properties:
aid:
$ref: '#/components/schemas/EMVCAPKAid'
index:
$ref: '#/components/schemas/EMVCAPKIndex'
expDate:
$ref: '#/components/schemas/EMVCAPKExpDate'
algorithm:
$ref: '#/components/schemas/EMVCAPKAlgorithm'
hashAlgorithm:
$ref: '#/components/schemas/EMVCAPKHashAlgorithm'
key:
$ref: '#/components/schemas/EMVCAPKKey'
exponent:
$ref: '#/components/schemas/EMVCAPKExponent'
checksum:
$ref: '#/components/schemas/EMVCAPKChecksum'
EMVCAPKArray:
type: array
readOnly: true
items:
$ref: '#/components/schemas/EMVCAPKObject'
example:
- aid: A000000025
index: C9
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B362DB5733C15B8797B8ECEE55CB1A371F760E0BEDD3715BB270424FD4EA26062C38C3F4AAA3732A83D36EA8E9602F6683EECC6BAFF63DD2D49014BDE4D6D603CD744206B05B4BAD0C64C63AB3976B5C8CAAF8539549F5921C0B700D5B0F83C4E7E946068BAAAB5463544DB18C63801118F2182EFCC8A1E85E53C2A7AE839A5C6A3CABE73762B70D170AB64AFC6CA482944902611FB0061E09A67ACB77E493D998A0CCF93D81A4F6C0DC6B7DF22E62DB
exponent: '03'
checksum: 8E8DFF443D78CD91DE88821D70C98F0638E51E49
- aid: A000000025
index: CA
expDate: '12312026'
algorithm: '01'
hashAlgorithm: '01'
key: >-
C23ECBD7119F479C2EE546C123A585D697A7D10B55C2D28BEF0D299C01DC65420A03FE5227ECDECB8025FBC86EEBC1935298C1753AB849936749719591758C315FA150400789BB14FADD6EAE2AD617DA38163199D1BAD5D3F8F6A7A20AEF420ADFE2404D30B219359C6A4952565CCCA6F11EC5BE564B49B0EA5BF5B3DC8C5C6401208D0029C3957A8C5922CBDE39D3A564C6DEBB6BD2AEF91FC27BB3D3892BEB9646DCE2E1EF8581EFFA712158AAEC541C0BBB4B3E279D7DA54E45A0ACC3570E712C9F7CDF985CFAFD382AE13A3B214A9E8E1E71AB1EA707895112ABC3A97D0FCB0AE2EE5C85492B6CFD54885CDD6337E895CC70FB3255E3
exponent: '03'
checksum: 6BDA32B1AA171444C7E8F88075A74FBFE845765F
- aid: A000000152
index: 5C
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
833F275FCF5CA4CB6F1BF880E54DCFEB721A316692CAFEB28B698CAECAFA2B2D2AD8517B1EFB59DDEFC39F9C3B33DDEE40E7A63C03E90A4DD261BC0F28B42EA6E7A1F307178E2D63FA1649155C3A5F926B4C7D7C258BCA98EF90C7F4117C205E8E32C45D10E3D494059D2F2933891B979CE4A831B301B0550CDAE9B67064B31D8B481B85A5B046BE8FFA7BDB58DC0D7032525297F26FF619AF7F15BCEC0C92BCDCBC4FB207D115AA65CD04C1CF982191
exponent: '03'
checksum: 60154098CBBA350F5F486CA31083D1FC474E31F8
- aid: A000000152
index: 5D
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AD938EA9888E5155F8CD272749172B3A8C504C17460EFA0BED7CBC5FD32C4A80FD810312281B5A35562800CDC325358A9639C501A537B7AE43DF263E6D232B811ACDB6DDE979D55D6C911173483993A423A0A5B1E1A70237885A241B8EEBB5571E2D32B41F9CC5514DF83F0D69270E109AF1422F985A52CCE04F3DF269B795155A68AD2D6B660DDCD759F0A5DA7B64104D22C2771ECE7A5FFD40C774E441379D1132FAF04CDF55B9504C6DCE9F61776D81C7C45F19B9EFB3749AC7D486A5AD2E781FA9D082FB2677665B99FA5F1553135A1FD2A2A9FBF625CA84A7D736521431178F13100A2516F9A43CE095B032B886C7A6AB126E203BE7
exponent: '03'
checksum: B51EC5F7DE9BB6D8BCE8FB5F69BA57A04221F39B
- aid: A000000277
index: '02'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
E0FFBEE77CEE02ADEE8B4B004D26FB46FAF3CE033E3B874D73D099A966A0657497CEE214E95DF2BF5C9D359A3B10C05CFC9929BEF3070036FD19AE661B173E486CBC9B04E4B2E2D0D8209CAF5C200929FA252A21BD69A9A47488844A1DE5BF8729CE5E5E92117047BDDE9FBE72397FD9FC3BE459D8ED06FD6CADF0AFF39C93CC07B312EE2ACB3D4A15E919F57481CFEF
exponent: '010001'
checksum: BAF3652A9F5D0FF45EECECA55B4597B1F53BE283
- aid: A000000277
index: '03'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
E51505CCECDD0799BAFE097200DF40FFC2154836B8D67F1E99D4D415F73C04A9FAD73825D32AE5BA77FCD02597393CE4D8104B6010D5A8F28F2B47BB8298DAFD63C9C0BEF62AF937265614E31AE2AB45B60B968DB9DEE55602C169F6C16D4579BAA24765560300A3056F894BA8FFA566D9CCD79453D804B97DA14F21F9C3528ED8B8A368A9FACF05C46C13A9BA020618425EF1ACF6CB4DD5DCD050273502114B59EE90EBD833F70C2F324741E79A19A1
exponent: '010001'
checksum: 0FB60A1BCA38095F3CC578D2DEC95F779840A343
- aid: A000000277
index: '07'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B2CE89726B6B2D1690A0F8CA75CD0B6B1ACDFBE66D53BA00C500BE612FB421423684FF1868554A7722258012E588ED1CD206C67BB2F7598F3CE67F23A888B8ED7421C49A2EBA224DFBD866F62E59338E9F626D0DFD4C9ACC626E42EC0375EE424C93E5DB5773FC98E4AC9FCDEBD0521B15295C797DCABB4679C055AC374A81B245ABF1092A3D46E1CCE10A84F9FC2FC6ED91025121589C9AA68B56B7FBF0D86B4C8E3C9C08406DBB4609BBFC5308F325A8273CB6D36F3E0AF772507BF8A2A9F5A749B5AF98CCEAB2826C2D9C2AB9103B1BAB0DE92099C8072477EC564062AC38184C60DAD298EF352D92DFA041DDE3DB260CE5302B47A7E9
exponent: '010001'
checksum: 44F2C13373A5068B63C9334E914DDE6AB70CE0F1
- aid: A000000277
index: '40'
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
F802C308544873AD2225A81943732A4B7CFFA4E3157D17CD5A7723F858F0B11E636D2930FA933778F27C7C49127E0CCA317021CFE8E0F773785EB3FF07587E98CE8ED4FE9E1CA1859F41A9CF2572D8A093C5465F5A29612A45B1700F4DA13814C3D4DF075EAADE8DB4BE4D7B3AE0256F7A0C12E34BD416CAC4F9250C38B7E13B
exponent: '010001'
checksum: 2015497BE4B86F104BBF337691825EED64E101CA
- aid: A000000065
index: '11'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A2583AA40746E3A63C22478F576D1EFC5FB046135A6FC739E82B55035F71B09BEB566EDB9968DD649B94B6DEDC033899884E908C27BE1CD291E5436F762553297763DAA3B890D778C0F01E3344CECDFB3BA70D7E055B8C760D0179A403D6B55F2B3B083912B183ADB7927441BED3395A199EEFE0DEBD1F5FC3264033DA856F4A8B93916885BD42F9C1F456AAB8CFA83AC574833EB5E87BB9D4C006A4B5346BD9E17E139AB6552D9C58BC041195336485
exponent: '03'
checksum: D9FD62C9DD4E6DE7741E9A17FB1FF2C5DB948BCB
- aid: A000000065
index: '13'
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A3270868367E6E29349FC2743EE545AC53BD3029782488997650108524FD051E3B6EACA6A9A6C1441D28889A5F46413C8F62F3645AAEB30A1521EEF41FD4F3445BFA1AB29F9AC1A74D9A16B93293296CB09162B149BAC22F88AD8F322D684D6B49A12413FC1B6AC70EDEDB18EC1585519A89B50B3D03E14063C2CA58B7C2BA7FB22799A33BCDE6AFCBEB4A7D64911D08D18C47F9BD14A9FAD8805A15DE5A38945A97919B7AB88EFA11A88C0CD92C6EE7DC352AB0746ABF13585913C8A4E04464B77909C6BD94341A8976C4769EA6C0D30A60F4EE8FA19E767B170DF4FA80312DBA61DB645D5D1560873E2674E1F620083F30180BD96CA589
exponent: '03'
checksum: 54CFAE617150DFA09D3F901C9123524523EBEDF3
- aid: A000000004
index: '06'
expDate: '12312029'
algorithm: '01'
hashAlgorithm: '01'
key: >-
CB26FC830B43785B2BCE37C81ED334622F9622F4C89AAE641046B2353433883F307FB7C974162DA72F7A4EC75D9D657336865B8D3023D3D645667625C9A07A6B7A137CF0C64198AE38FC238006FB2603F41F4F3BB9DA1347270F2F5D8C606E420958C5F7D50A71DE30142F70DE468889B5E3A08695B938A50FC980393A9CBCE44AD2D64F630BB33AD3F5F5FD495D31F37818C1D94071342E07F1BEC2194F6035BA5DED3936500EB82DFDA6E8AFB655B1EF3D0D7EBF86B66DD9F29F6B1D324FE8B26CE38AB2013DD13F611E7A594D675C4432350EA244CC34F3873CBA06592987A1D7E852ADC22EF5A2EE28132031E48F74037E3B34AB747F
exponent: '03'
checksum: F910A1504D5FFB793D94F3B500765E1ABCAD72D9
- aid: A000000004
index: EF
expDate: '12312029'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A191CB87473F29349B5D60A88B3EAEE0973AA6F1A082F358D849FDDFF9C091F899EDA9792CAF09EF28F5D22404B88A2293EEBBC1949C43BEA4D60CFD879A1539544E09E0F09F60F065B2BF2A13ECC705F3D468B9D33AE77AD9D3F19CA40F23DCF5EB7C04DC8F69EBA565B1EBCB4686CD274785530FF6F6E9EE43AA43FDB02CE00DAEC15C7B8FD6A9B394BABA419D3F6DC85E16569BE8E76989688EFEA2DF22FF7D35C043338DEAA982A02B866DE5328519EBBCD6F03CDD686673847F84DB651AB86C28CF1462562C577B853564A290C8556D818531268D25CC98A4CC6A0BDFFFDA2DCCA3A94C998559E307FDDF915006D9A987B07DDAEB3B
exponent: '03'
checksum: 21766EBB0EE122AFB65D7845B73DB46BAB65427A
- aid: A000000004
index: F1
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A0DCF4BDE19C3546B4B6F0414D174DDE294AABBB828C5A834D73AAE27C99B0B053A90278007239B6459FF0BBCD7B4B9C6C50AC02CE91368DA1BD21AAEADBC65347337D89B68F5C99A09D05BE02DD1F8C5BA20E2F13FB2A27C41D3F85CAD5CF6668E75851EC66EDBF98851FD4E42C44C1D59F5984703B27D5B9F21B8FA0D93279FBBF69E090642909C9EA27F898959541AA6757F5F624104F6E1D3A9532F2A6E51515AEAD1B43B3D7835088A2FAFA7BE7
exponent: '03'
checksum: D8E68DA167AB5A85D8C3D55ECB9B0517A1A5B4BB
- aid: A000000003
index: '92'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
996AF56F569187D09293C14810450ED8EE3357397B18A2458EFAA92DA3B6DF6514EC060195318FD43BE9B8F0CC669E3F844057CBDDF8BDA191BB64473BC8DC9A730DB8F6B4EDE3924186FFD9B8C7735789C23A36BA0B8AF65372EB57EA5D89E7D14E9C7B6B557460F10885DA16AC923F15AF3758F0F03EBD3C5C2C949CBA306DB44E6A2C076C5F67E281D7EF56785DC4D75945E491F01918800A9E2DC66F60080566CE0DAF8D17EAD46AD8E30A247C9F
exponent: '03'
checksum: 429C954A3859CEF91295F663C963E582ED6EB253
- aid: A000000003
index: '94'
expDate: '12312026'
algorithm: '01'
hashAlgorithm: '01'
key: >-
ACD2B12302EE644F3F835ABD1FC7A6F62CCE48FFEC622AA8EF062BEF6FB8BA8BC68BBF6AB5870EED579BC3973E121303D34841A796D6DCBC41DBF9E52C4609795C0CCF7EE86FA1D5CB041071ED2C51D2202F63F1156C58A92D38BC60BDF424E1776E2BC9648078A03B36FB554375FC53D57C73F5160EA59F3AFC5398EC7B67758D65C9BFF7828B6B82D4BE124A416AB7301914311EA462C19F771F31B3B57336000DFF732D3B83DE07052D730354D297BEC72871DCCF0E193F171ABA27EE464C6A97690943D59BDABB2A27EB71CEEBDAFA1176046478FD62FEC452D5CA393296530AA3F41927ADFE434A2DF2AE3054F8840657A26E0FC617
exponent: '03'
checksum: C4A3C43CCF87327D136B804160E47D43B60E6E0F
- aid: A000000333
index: '08'
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B61645EDFD5498FB246444037A0FA18C0F101EBD8EFA54573CE6E6A7FBF63ED21D66340852B0211CF5EEF6A1CD989F66AF21A8EB19DBD8DBC3706D135363A0D683D046304F5A836BC1BC632821AFE7A2F75DA3C50AC74C545A754562204137169663CFCC0B06E67E2109EBA41BC67FF20CC8AC80D7B6EE1A95465B3B2657533EA56D92D539E5064360EA4850FED2D1BF
exponent: '03'
checksum: EE23B616C95C02652AD18860E48787C079E8E85A
- aid: A000000333
index: '09'
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
EB374DFC5A96B71D2863875EDA2EAFB96B1B439D3ECE0B1826A2672EEEFA7990286776F8BD989A15141A75C384DFC14FEF9243AAB32707659BE9E4797A247C2F0B6D99372F384AF62FE23BC54BCDC57A9ACD1D5585C303F201EF4E8B806AFB809DB1A3DB1CD112AC884F164A67B99C7D6E5A8A6DF1D3CAE6D7ED3D5BE725B2DE4ADE23FA679BF4EB15A93D8A6E29C7FFA1A70DE2E54F593D908A3BF9EBBD760BBFDC8DB8B54497E6C5BE0E4A4DAC29E5
exponent: '03'
checksum: A075306EAB0045BAF72CDD33B3B678779DE1F527
- aid: A000000333
index: 0A
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B2AB1B6E9AC55A75ADFD5BBC34490E53C4C3381F34E60E7FAC21CC2B26DD34462B64A6FAE2495ED1DD383B8138BEA100FF9B7A111817E7B9869A9742B19E5C9DAC56F8B8827F11B05A08ECCF9E8D5E85B0F7CFA644EFF3E9B796688F38E006DEB21E101C01028903A06023AC5AAB8635F8E307A53AC742BDCE6A283F585F48EF
exponent: '03'
checksum: C88BE6B2417C4F941C9371EA35A377158767E4E3
- aid: A000000333
index: 0B
expDate: '12312031'
algorithm: '01'
hashAlgorithm: '01'
key: >-
CF9FDF46B356378E9AF311B0F981B21A1F22F250FB11F55C958709E3C7241918293483289EAE688A094C02C344E2999F315A72841F489E24B1BA0056CFAB3B479D0E826452375DCDBB67E97EC2AA66F4601D774FEAEF775ACCC621BFEB65FB0053FC5F392AA5E1D4C41A4DE9FFDFDF1327C4BB874F1F63A599EE3902FE95E729FD78D4234DC7E6CF1ABABAA3F6DB29B7F05D1D901D2E76A606A8CBFFFFECBD918FA2D278BDB43B0434F5D45134BE1C2781D157D501FF43E5F1C470967CD57CE53B64D82974C8275937C5D8502A1252A8A5D6088A259B694F98648D9AF2CB0EFD9D943C69F896D49FA39702162ACB5AF29B90BADE005BC157
exponent: '03'
checksum: BD331F9996A490B33C13441066A09AD3FEB5F66C
- aid: A000000780
index: A4
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
D22EF8F41F0685E371B53625692A7EB13B3E9462DD985E044A5915108D2DFCC0A4171C0C0DE4E6D9BD525CAC461A169DAC5101B975D105DEA2AA34B80D9131F47A278DA609B32B1379F98FB960328DE1E27E1EDAFD2DC8A3643AFEB605582C5F953E0DE029643DE058DA6813137EB9450C5C1AD36823BF4C548A5599F6C025274081F6BBF916D79CC00AB77C3AD8E35282FFC9A24CF5F31B0E5585618A75929FBAD4416EC853A76380C84DB3B208389EC2675C9CDEA4AC106EE6AEB242761EEFED6D744E3439588EB17B2CDD956658F59FBB2186B23B396B48E84A7702B91238059FB314CAFCF59B3F09787CCA396ABA35A144C0435DC99D
exponent: '03'
checksum: 8438208C174CC1C3FB7793585BF1DE288349B31C
- aid: A000000768
index: E1
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AD767119B139295B9EF760B9A94811580E933A03E76C0A7022F1021278EB6FBBEF36599D5A95C2CB603364E1DA12DF88B76D19F225F14D2A689C580DC2B54457C8BEA50086A4BE897D3353AA003CAFAB5AE3993BE6D379D488689028EC852DFED90EA6FDD73ACF6583934E64601A0EE45AF652B52CC58A9EFFA5D846DD79EFC9A8638275EC264B3C40AA3C8F3DDF1F9D378598362DF48417BF039A04D70B4FFA14A2F6218299428C625EF949F08740ED36FE9265BB8E2CA94604EFC0AEB654F9FC455F22B1EC46871E46638CE190D3691313E41C7F9C8AD4AE3D1B574D4336AD6A2BA551F2DB3A8D44F375CB67D94AFBDFD34DEA92066149
exponent: '03'
checksum: AE03037B9B042B0F9690500DEE287CD706FF73C8
- aid: A000000768
index: EE
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A8D150CEE34B16D294B46B99BD6B3284303BD1FFD316C210E876666AD991DFE68DC1BD0835A5E03F753DB0DCE112A928C0C604F5DF256E265E05B59B4DAA15E74B0E5E27E56F8D97C1233D416162DDEC7EFE731D30BBA16683557E4D8FA15269F51D40468D1B2C31CCD314804FC97341F68A1BB78F4985B99F0901557B52196950CF6A12D6FD4356002197B17A8035606DAAC2BFCDB3CD86B9FCDBC64908BFB039C268772D73E44C3867AFC002C12CB5
exponent: '03'
checksum: 6DFE06AB7FAD2D98EA18B7849D11DF704D08EFAE
description: |
Array containing the current EMV CA Public Keys.
BoardingCompanyPlaid:
type: object
description: |
Company specific boarding information.
required:
- name
- legalEntityName
- address
properties:
name:
type: string
description: >
The company name of the end customer being created. This will be
used to display the end customer in the Plaid Dashboard. It will not
be shown to end users.
legalEntityName:
type: string
description: >
The end customer's legal name. This will be shared with financial
institutions as part of the OAuth registration process. It will not
be shown to end users.
address:
type: object
required:
- city
- street
- region
- postalCode
- countryCode
properties:
city:
type: string
street:
type: string
region:
type: string
postalCode:
type: string
countryCode:
type: string
description: |
ISO-3166-1 alpha-2 country code standar
website:
description: >
The end customer's website. Defaulted to `www.shift4.com` if not
provided.
SerialNumber:
type: number
maxLength: 10
example: 266
description: |
The Shift4 serial number
S4Mid:
type: number
maxLength: 10
example: 123456
description: |
The Shift4 MID number
ACHBoardingActive:
type: string
enum:
- 'Y'
- 'N'
description: |
Used to enable `Y` or disable `N` EMV on the account.
ACHWebhookURL:
type: string
description: >
A URL that outbound HTTP POST message is going to send to merchant from
the Shift4 gateway that provides status of the ach request.
boarding_create_ach_plaid_request:
title: ACH Plaid
type: object
required:
- dateTime
- service
- company
- serial
- s4mid
- ach
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
service:
type: string
enum:
- plaid
description: |
The service being boarded.
company:
$ref: '#/components/schemas/BoardingCompanyPlaid'
serial:
$ref: '#/components/schemas/SerialNumber'
s4mid:
$ref: '#/components/schemas/S4Mid'
ach:
type: object
required:
- active
- paymentDescriptor
- webhookUrl
properties:
active:
$ref: '#/components/schemas/ACHBoardingActive'
paymentDescriptor:
type: string
maxLength: 10
example: INTERNET
description: >
Custom description that will be appended to the merchant name on
the customer's statement.
plaid:
type: object
description: |
Plaid specific boarding information.
properties:
applicationName:
type: string
description: >
The name of the end customer's application. This will be
shown to end users when they go through the Plaid Link flow.
Defaulted to `Shift4 App` if not sent.
diligenceAttested:
type: boolean
description: >
Denotes whether or not the partner has completed attestation
of diligence for the end customer to be created. Defaulted
to `true` if not sent.
bankAddendumCompleted:
type: boolean
description: >
Denotes whether the partner has forwarded the Plaid bank
addendum to the end customer. Defaulted to `true` if not
sent.
products:
type: array
items:
type: string
description: >
Possible Values: `assets`, `auth`, `balance`, `identity`,
`investments`, `liabilities`, `transactions`. Defaulted to
`auth`, `balance`, and `identity` if not sent.
logo:
type: string
description: >
Base64-encoded representation of the end customer's logo.
Must be a PNG of size 1024x1024 under 4MB. The logo will be
shared with financial institutions and shown to the end user
during Link flows. A logo is required if
create_link_customization is true. If
create_link_customization is false and the logo is omitted,
a stock logo will be used.
createLinkCustomization:
type: boolean
description: >
If true, the end customer's default Link customization will
be set to match the partner's. You can always change the end
customer's Link customization in the Plaid Dashboard. See
the [Link Customization
docs](https://plaid.com/docs/link/customization/) for more
information.
technicalContact:
type: object
description: >
The technical contact for the end customer. Defaults to
partner's technical contact if omitted.
properties:
firstName:
type: string
lastName:
type: string
email:
type: string
billingContact:
type: object
description: >
The billing contact for the end customer. Defaults to
partner's technical contact if omitted.
properties:
firstName:
type: string
lastName:
type: string
email:
type: string
customerSupportInfo:
type: object
description: >
This information is public. Users of your app will see this
information when managing connections between your app and
their bank accounts in Plaid Portal. Defaults to partner's
customer support info if omitted.
properties:
email:
type: string
phoneNumber:
type: string
contactUrl:
type: string
linkUpdateUrl:
type: string
assetsUnderManagement:
type: object
description: >
Assets under management for the given end customer. Required
for end customers with monthly service commitments.
properties:
amount:
type: number
isoCurrencyCode:
type: string
redirectUris:
type: string
description: >
A list of URIs indicating the destination(s) where a user
can be forwarded after completing the Link flow; used to
support OAuth authentication flows when launching Link in
the browser or via a webview. URIs should not contain any
query parameters. When used in Production or Development,
URIs must use https. To specify any subdomain, use * as a
wildcard character, e.g. https://*.example.com/oauth.html.
To modify redirect URIs for an end customer after creating
them, go to the end customer's API page in the Dashboard.
**Conditional: must be sent if plaid.redirectUrl element is
going to be used on plaid account verification endpoint.**
webhookUrl:
$ref: '#/components/schemas/ACHWebhookURL'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
service: plaid
company:
name: Merchant XYZ
legalEntityName: Merchant XYZ
address:
city: Las Vegas
street: 123 Main St
region: NV
postalCode: '89134'
countryCode: US
website: www.merchantxyz.com
serial: 266
s4mid: 12346
ach:
active: 'Y'
paymentDescriptor: UTILITY
plaid:
applicationName: Shift4 App
diligenceAttested: true
bankAddendumCompleted: false
products:
- auth
- balance
webhookUrl: api.merchantxyz.com/webhook
BoardingCompanyACHStandalone:
type: object
description: |
Company specific boarding information.
required:
- name
- legalEntityName
- address
properties:
name:
type: string
description: >
The company name of the end customer being created. This will be
used to display the end customer in the Plaid Dashboard. It will not
be shown to end users.
legalEntityName:
type: string
description: >
The end customer's legal name. This will be shared with financial
institutions as part of the OAuth registration process. It will not
be shown to end users.
address:
type: object
required:
- city
- street
- region
- postalCode
- countryCode
properties:
city:
type: string
street:
type: string
region:
type: string
postalCode:
type: string
countryCode:
type: string
description: |
ISO-3166-1 alpha-2 country code standar
website:
description: >
The end customer's website. Defaulted to `www.shift4.com` if not
provided.
boarding_create_ach_standalone_request:
title: ACH Standalone
type: object
required:
- dateTime
- service
- company
- serial
- s4mid
- ach
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
service:
type: string
enum:
- achstandalone
description: |
The service being boarded.
company:
$ref: '#/components/schemas/BoardingCompanyACHStandalone'
serial:
$ref: '#/components/schemas/SerialNumber'
s4mid:
$ref: '#/components/schemas/S4Mid'
ach:
type: object
required:
- active
- paymentDescriptor
- webhookUrl
properties:
active:
$ref: '#/components/schemas/ACHBoardingActive'
paymentDescriptor:
type: string
maxLength: 10
example: INTERNET
description: >
Custom description that will be appended to the merchant name on
the customer's statement.
webhookUrl:
$ref: '#/components/schemas/ACHWebhookURL'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
service: achstandalone
company:
name: Merchant XYZ
legalEntityName: Merchant XYZ
address:
city: Las Vegas
street: 123 Main St
region: NV
postalCode: '89134'
countryCode: US
website: www.merchantxyz.com
serial: 266
s4mid: 12346
ach:
active: 'Y'
paymentDescriptor: UTILITY
webhookUrl: api.merchantxyz.com/webhook
BoardingCompanyGTV:
type: object
description: |
Company specific boarding information.
required:
- legalEntityName
- address
- website
properties:
legalEntityName:
type: string
description: |
The merchant's legal name
address:
type: object
required:
- city
- countryCode
properties:
city:
type: string
minLength: 2
maxLength: 100
description: |
City in the merchant's primary address
countryCode:
type: string
minLength: 2
maxLength: 2
description: >
The merchants's 2 letter ISO Country code in ISO-3166-1 alpha-2
format
website:
description: |
The merchant's website.
GTVID:
type: string
minLength: 2
maxLength: 20
example: SPACEX
description: |
The Shift4 GTV ID
GTVNetworkToken:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Send `Y` to enable or `N` to disable card brand network tokenization
GTVBinCode:
type: string
minLength: 2
maxLength: 20
enum:
- ML_GC
- ML
- MLBWESTERN
- M
- MAI
- LTV_DEFAULT
- LTV_GC
- TV2G
- HILTON
example: ML_GC
description: |
The GTV Bincode ID
GTVBinCodeUnknown:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Send `Y` to allow or `N` to disallow tokenizing unkonwn BIN codes.
GTVTokenMod10:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: >
Send `Y` for GTV to generate tokens that pass mod10 or `N` for GTV to
generate tokens that do not pass mod10.
GTVVaultSize:
type: number
example: 1024
description: |
Expected size of vault
GTV:
type: object
description: |
GTV specific boarding information.
properties:
id:
$ref: '#/components/schemas/GTVID'
networkToken:
$ref: '#/components/schemas/GTVNetworkToken'
bincode:
$ref: '#/components/schemas/GTVBinCode'
bincodeUnknown:
$ref: '#/components/schemas/GTVBinCodeUnknown'
tokenMod10:
$ref: '#/components/schemas/GTVTokenMod10'
vaultSize:
$ref: '#/components/schemas/GTVVaultSize'
boarding_create_gtv_request:
title: GTV
type: object
required:
- dateTime
- service
- company
- s4mid
- processor
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
service:
type: string
enum:
- gtv
description: |
The service being boarded.
company:
$ref: '#/components/schemas/BoardingCompanyGTV'
s4mid:
$ref: '#/components/schemas/S4Mid'
processor:
type: string
enum:
- TSYS
- Finaro
gtv:
$ref: '#/components/schemas/GTV'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
service: gtv
company:
legalEntityName: Merchant XYZ
address:
city: Las Vegas
countryCode: US
website: www.merchantxyz.com
s4mid: 12346
processor: TSYS
gtv:
id: SPACEX
networkToken: 'Y'
bincode: ML_GC
bincodeUnknown: 'Y'
tokenMod10: 'Y'
vaultSize: 200000
BoardingCompanyMagicCube:
type: object
description: |
Company specific boarding information.
required:
- legalEntityName
- address
- website
properties:
legalEntityName:
type: string
description: |
The merchant's legal name
address:
type: object
required:
- city
- countryCode
properties:
city:
type: string
minLength: 2
maxLength: 100
description: |
City in the merchant's primary address
countryCode:
type: string
minLength: 2
maxLength: 2
description: >
The merchants's 2 letter ISO Country code in ISO-3166-1 alpha-2
format
website:
description: |
The merchant's website.
boarding_create_magiccube_request:
title: MagicCube
type: object
required:
- dateTime
- service
- company
- s4mid
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
service:
type: string
enum:
- magiccube
description: |
The service being boarded.
company:
$ref: '#/components/schemas/BoardingCompanyMagicCube'
s4mid:
$ref: '#/components/schemas/S4Mid'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
service: magiccube
company:
legalEntityName: Merchant XYZ
address:
city: Las Vegas
countryCode: US
website: www.merchantxyz.com
s4mid: 12346
ACHStatus:
type: string
enum:
- success
- failed
description: |
ACH status response
boarding_create_ach_plaid_response:
title: ACH Plaid
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
serial:
$ref: '#/components/schemas/SerialNumber'
s4mid:
$ref: '#/components/schemas/S4Mid'
ach:
type: object
properties:
active:
$ref: '#/components/schemas/ACHBoardingActive'
plaid:
type: object
properties:
createDateTime:
type: string
format: ISO 8601
example: '2024-01-17T13:34:25.049-07:00'
description: >
The date and time in ISO 8601 format including the timezone
offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm).
status:
type: string
description: >
The status of the given end customer.
Value | Description
-------------------|-------------
UNDER_REVIEW | The end customer has been created and
enabled in the non-Production environments. The end customer
must be manually reviewed by the Plaid team before it can be
enabled in production, at which point its status will
automatically transition to PENDING_ENABLEMENT or DENIED.
PENDING_ENABLEMENT | The end customer is ready to be enabled
in the Production environment. Call the
/partner/customer/enable endpoint to enable the end customer
in Production.
ACTIVE | The end customer has been enabled in
all environments.
DENIED | The end customer has been created and
enabled in the non-Production environments, but it did not
pass review by the Plaid team and therefore cannot be
enabled in the Production environment. Talk to your Account
Manager for more information.
link_status:
type: string
description: |
The status of the Plaid Link boarding.
Value | Description
--------|-------------
success | Plaid Link boarding was successful
failed | Plaid Link boarding was not successful
status:
$ref: '#/components/schemas/ACHStatus'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
serial: 266
s4mid: 12346
ach:
active: 'Y'
plaid:
createDateTime: '2023-02-17T09:08:08.748-07:00'
status: ACTIVE
link_status: success
status: success
server:
name: TM01CE
boarding_create_ach_standalone_response:
title: ACH Standalone
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
serial:
$ref: '#/components/schemas/SerialNumber'
s4mid:
$ref: '#/components/schemas/S4Mid'
ach:
type: object
properties:
active:
$ref: '#/components/schemas/ACHBoardingActive'
status:
$ref: '#/components/schemas/ACHStatus'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
serial: 266
s4mid: 12346
ach:
active: 'Y'
status: success
server:
name: TM01CE
boarding_create_gtv_response:
title: GTV
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
s4mid:
$ref: '#/components/schemas/S4Mid'
gtv:
$ref: '#/components/schemas/GTV'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
s4mid: 12346
gtv:
id: SPACEX
networkToken: 'Y'
bincode: ML_GC
bincodeUnknown: 'Y'
tokenMod10: 'Y'
vaultSize: 200000
server:
name: TM01CE
boarding_create_magiccube_response:
title: MagicCube
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
s4mid:
$ref: '#/components/schemas/S4Mid'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2023-02-17T09:07:23.283-07:00'
s4mid: 12346
server:
name: TM01CE
Kiosk:
type: object
properties:
mode:
type: string
enum:
- enabled
- disabled
description: >
Send `enabled` to enable kiosk mode or `disabled` to disable kiosk
mode. The response value will indicate the actual state. In the case
where you attempt to enable kiosk mode but Commerce Engine is unable
to enable it, the response will return `disabled`.
devices_config_comengdevice:
title: Commerce Engine For On Premise
type: object
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
kiosk:
$ref: '#/components/schemas/Kiosk'
devices_config_comengcloud:
title: Commerce Engine For Cloud
type: object
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceComEngCloud'
kiosk:
$ref: '#/components/schemas/Kiosk'
DeviceCloudMQQueue:
type: string
example: 93680a92-ca54-4a5d-8f84-e63418860e13
description: |
Specifies the message queue name
DeviceCloudMQRouting:
type: string
example: Pax.1170301234
description: |
Specifies the message queue routing key
DeviceCloudMQServer:
type: string
example: wh-mq-v03.dev.shift4.net:5671
description: >
Specifies the message queue server URL the device cloud solution should
connect to
DeviceCloudMQType:
type: string
enum:
- RMQ
example: RMQ
description: >
Specifies the type of message queue broker the device cloud solution
will be connecting to.
Value | Description
------|------------
RMQ | RabbitMQ
DeviceCloudMQVHost:
type: string
example: rabbitmq-dev
description: >
Specifies the message queue virtual host the device cloud solution
should connect to
DeviceTerminalIdMagicCube:
type: string
example: '9876543213'
description: |
Terminal ID
DeviceMCRock:
type: string
example: QyN2LlqKzuTcpIz9
description: |
MagicCube Rock
MagicCubePed_PBK:
type: string
example: >-
-----BEGIN
CERTIFICATE-----\nMIIDMjCCAZoCEQDn7O4vkjJF4n8I2PgAx5JbMA0GCSqGSIb3DQEBCwUAMBcxFTAT\nBgNVBAMMDG1hZ2ljY3ViZS5jbzAeFw0yMzA3MTkwMDAwMDBaFw0yNDA3MTgwMDAw\nMDBaMBcxFTATBgNVBAMMDG1hZ2ljY3ViZS5jbzCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBANLB4rH6fBHFPrAdLAtoQCmW8sTswNgrIs5M2bqRlk3Tv1wg\n8wANu2o6TPNTV9bxwKz4cDdWqaM98PXHyVJZmQA4dbzNhrndNSuT6yftL0awpmZm\nlXevLABtIUVf9S+z1VcDzxFyJaMdpNkBuXG6gTR4dQLXXle9FPH79afvBfRZf\/Of\nnPZoGM27AWctFv6W0NwDv0iUhvMYEzEmUR2PwDtD5Ws9\/sO8W1kpIjNd9KGQOI4o\nNil4gtnAF7ODGVO6OjIm8YQeD\/AvfTTo7IOPc\/kq9h0UN3pulDbvOUloobQouNyJ\nSq1D10XD3d9tw7vIaurs5NURwy\/glZDsi+A0uSMCAwEAATANBgkqhkiG9w0BAQsF\nAAOCAYEAmZdJ+yqeP+tq6wWtBp9TspDKQPXO5xKHS8oLXVjlfjvftAA2260C8u24\nV9Gta7dJcKxewkVWRh2AyoJToks2aJm8aL1XmtZeJ6bMJEEnxDGOAhsOYF2relyY\n6mTf9\/SBMSfK2BP3w1T0TUn+fEXQA4a7DyK73k15WJy4j4wzTmrRGXno0p7Pq4eC\nNLW9QTYzeoAi\/nHt5MqxOn23+1kGX3\/yYoNl7gFWozqzzouNL6qNIdkdEGQYL5Mv\nl70FyoezWyPmXUMfRGRHwMXKGhRn98pQBkV91K2lg2Ovkwv8hknv1ux59M+gpXZG\nVAPPuDjkvYh\/VheKdxjRwaCiIflrDM58af4gZ+AcGVLDTHRie8z5Ok1oA4pavPHb\neE+0AzUOpq2gxPxMBiBf1CtHTLEMXal2mqJpbkElCVSoXZpJeUibzlSD6sh22Eb4\nPupc9SDyHv76p\/Hrqcnr0eiuzbCTtWtPariOruDeseiYvwpIF\/yssqdzRURe6uPW\nsT\/nkmlt\n-----END
CERTIFICATE-----\n
description: |
MagicCube Ped PBK
MagicCubeE_IPEK:
type: string
example: >-
Yn2gV_IgV5LAq6zG9QIcqitFjigQvEMy6F0lBZucV_yxoouyzWpB2wDOG7scIgGF5JeWPhuMAsL2t6QFw6tyB2Jozx0tELxXYabsMvvYWRAm7Ruf2YGVbFgT-W7hMhT3N1hzAIXkPhjFUqPBkgLl5bGb1SFa4XL0fVG_iHNXFMYIoh4QMSKC6hcIblqtnDEmt80KxMtx92dDdW32rZwVXDfIvBAy0JzFbSggHbdTkJGp-VQsYKXf0J3cgc9CNcmpgq8f48k-XQIgbexEQXITzABpbZDr3tccljEEU1mEX18-H11ie8BJmcqhhaN40YHqQgWBQ2GJGzAo_V-aQRivTg==
description: |
MagicCube e_ipek
MagicCubeIKSN:
type: string
example: __9JUgAXAAAAAA==
description: |
MagicCube iksn
MagicCubeSystemReadyResult:
type: string
enum:
- ok
example: ok
description: |
MagicCube System Ready Result
CurrencyCodeGlobal:
type: string
format: ISO 4217 3 Character Alphabetic Code
example: EUR
description: >
Transaction currency code. See the [Currency
Codes](/guides/appendices/currency-codes) section for details.
CardMaskedNumberRequest:
type: string
maxLength: 32
example: XXXXXXXXXXXX1119
description: >
The masked card number showing just the last 4 digits of the card with
the rest of the card digits masked with an `X`.
CardBinRequest:
type: string
maxLength: 8
example: '432100'
description: |
The first 6 or 8 digits of the card.
TransactionType:
type: string
example: Sale
enum:
- Sale
- Authorization
- Incremental
- Refund
- Void
- Capture
description: |
Specifies the transaction type.
TransactionResponseCodeApproved:
type: string
minLength: 1
maxLength: 1
example: A
enum:
- A
description: |
Code indicating the transaction status.
Value | Description | Details
-------|-------------|--------
A | Approved | The transaction is approved.
PurchaseCardOptional:
type: object
properties:
customerReference:
$ref: '#/components/schemas/PurchaseCardCustomerReference'
destinationPostalCode:
$ref: '#/components/schemas/PurchaseCardDestinationPostalCode'
productDescriptors:
$ref: '#/components/schemas/PurchaseCardProductDescriptors'
EMVTlvDataReportUpload:
type: string
writeOnly: true
example: >-
4F07A0000000041010500A4D6173746572436172645F201A546573742F4361726420303920202020202020202020202020205F24032512315F25031511015F2D02656E5F3401018407A0000000041010950508200000009B02C8009F02060000000004449F03060000000000009F34031E03009F3704C5BF918D9F390105
description: >
This field will contain all EMV tags in standard TLV format except tags
5A and 57.
EMVReportUpload:
type: object
writeOnly: true
description: >
**Conditional: Required when the request was processed an EMV insert or
tap.**
required:
- tlvData
properties:
emptyCandidateList:
$ref: '#/components/schemas/EMVEmptyCandidateList'
tlvData:
$ref: '#/components/schemas/EMVTlvDataReportUpload'
transactions_reportupload_approval:
title: Approval
type: object
required:
- dateTime
- amount
- currencyCode
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCodeGlobal'
clerk:
$ref: '#/components/schemas/ClerkOptional'
card:
type: object
required:
- entryMode
- present
- type
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeResp'
debitType:
$ref: '#/components/schemas/CardDebitType'
number:
$ref: '#/components/schemas/CardMaskedNumberRequest'
bin:
$ref: '#/components/schemas/CardBinRequest'
transaction:
type: object
required:
- invoice
- type
- authorizationCode
- responseCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
type:
$ref: '#/components/schemas/TransactionType'
authorizationCode:
$ref: '#/components/schemas/TransactionAuthorizationCode'
responseCode:
$ref: '#/components/schemas/TransactionResponseCodeApproved'
notes:
$ref: '#/components/schemas/TransactionNotes'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardOptional'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
device:
type: object
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
emv:
$ref: '#/components/schemas/EMVReportUpload'
receipt:
$ref: '#/components/schemas/ReceiptArray'
customer:
$ref: '#/components/schemas/Customer'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
currencyCode: EUR
card:
entryMode: E
present: 'Y'
type: DB
debitType: girocard
number: XXXXXXXXXXXX1119
bin: '432100'
clerk:
numericId: 1576
device:
manufacturer: Verifone
model: V660p-A
serialNumber: '454123456'
terminalId: 002211223344-1
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
transaction:
invoice: '192029'
authorizationCode: OK987Z
responseCode: A
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
pspData:
pspId: PSP Name XYZ
pspMid: '123456'
pspTid: '12345678'
pspTxnTraceNo: '000013'
pspTxnDate: '20210415'
pspTxnTime: '182328'
pspResponseCode: '00'
pspResponseText: Payment Approved
TransactionResponseCodeDeclined:
type: string
minLength: 1
maxLength: 1
example: D
enum:
- D
description: |
Code indicating the transaction status
Value | Description | Details
-------|--------------|--------
D | Declined | The transaction is declined.
transactions_reportupload_decline:
title: Decline
type: object
required:
- dateTime
- amount
- currencyCode
- card
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
accountType:
$ref: '#/components/schemas/AccountType'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCodeGlobal'
clerk:
$ref: '#/components/schemas/ClerkOptional'
card:
type: object
required:
- entryMode
- present
- type
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeResp'
debitType:
$ref: '#/components/schemas/CardDebitType'
number:
$ref: '#/components/schemas/CardMaskedNumberRequest'
bin:
$ref: '#/components/schemas/CardBinRequest'
transaction:
type: object
required:
- invoice
- type
- responseCode
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
type:
$ref: '#/components/schemas/TransactionType'
responseCode:
$ref: '#/components/schemas/TransactionResponseCodeDeclined'
hostResponse:
$ref: '#/components/schemas/HostResponse'
notes:
$ref: '#/components/schemas/TransactionNotes'
amex:
$ref: '#/components/schemas/TransactionAmex'
airline:
$ref: '#/components/schemas/AirlineRequest'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
hotel:
$ref: '#/components/schemas/HotelCheckOut'
purchaseCard:
$ref: '#/components/schemas/PurchaseCardOptional'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
device:
type: object
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdComEng'
emv:
$ref: '#/components/schemas/EMVReportUpload'
receipt:
$ref: '#/components/schemas/ReceiptArray'
customer:
$ref: '#/components/schemas/Customer'
reportingData:
$ref: '#/components/schemas/ReportingData'
mPos:
$ref: '#/components/schemas/mPOS'
dcc:
$ref: '#/components/schemas/DCCTransactionRequest'
surcharge:
$ref: '#/components/schemas/SurchargeRequest'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
currencyCode: EUR
card:
entryMode: E
present: 'Y'
type: DB
debitType: girocard
number: XXXXXXXXXXXX1119
bin: '432100'
clerk:
numericId: 1576
device:
manufacturer: Verifone
model: V660p-A
serialNumber: '454123456'
terminalId: 002211223344-1
emv:
tlvData: >-
9F40056000F0A0019F02060000000111009F03060000000000009F26088D24914341485DE14F07A00000000310109F0607A000000003101082021C009F360202929F34035E03009F2701809F3901059F3303E0F8C89F1A0208409F350122950580800080005F2A0208409A032107229B0268009F21031016209C01009F3704D2EAB1B55F2D02656E5F3401015A181CF757386DE00BC2DE05F965DB1E96D867C2009CA8C317998407A00000000310109F100706010A03A0A000573083FBDC0892887F7C99E0B7E54520CCC94308B4E4C7D4C18CDCE4EAA83C4D18A6AFDCD53EAC46BD5630834EFB238F32B39F0D05B0508088009F0E0500000000009F0F05B0508098009F0702FF009F080200969F0902008C5F280208409F4104000000085F24032212319F1E083131373031373332
transaction:
invoice: '192029'
responseCode: D
hotel:
additionalCharges:
giftShop: 'Y'
laundry: 'Y'
miniBar: 'Y'
other: 'Y'
restaurant: 'Y'
telephone: 'Y'
arrivalDateTime: '2021-04-12T15:39:01.594-07:00'
departureDateTime: '2021-04-15T09:18:23.283-07:00'
primaryChargeType: 1
roomRates:
- nights: 2
rate: 159.95
- nights: 3
rate: 125.38
specialCode: 1
notes: Transaction notes are added here
purchaseCard:
customerReference: D019D09309F2
destinationPostalCode: '94719'
productDescriptors:
- Hamburger
- Fries
- Soda
- Cookie
reportingData:
customerInfo:
- firstName: Jane
lastName: Smith
dateOfBirth: '12011983'
gender: female
baggage: checked
seats: 1A
boardingPriority: '1'
- firstName: John
lastName: Smith
dateOfBirth: '01281980'
gender: male
baggage: carryon
seats: 1B
boardingPriority: '1'
pspData:
pspId: PSP Name XYZ
pspMid: '123456'
pspTid: '12345678'
pspTxnTraceNo: '000013'
pspTxnDate: '20210415'
pspTxnTime: '182328'
pspResponseCode: '05'
pspResponseText: Payment Declined
TransactionProcessorPaymentId:
type: string
maxLength: 32
example: XZZ5600f5a7b9659661PKK6LHZHRVDWB
description: >
A unique transaction identifier from the processor that accompanies all
transactions related to the same purchase.
TransactionProcessorResponseId:
type: string
maxLength: 32
example: XZZ5600f5a7b9659661LOMKCO64A5A7R
description: |
A unique processor response ID.
RiskRulesGetStatusParameter:
type: string
example: emailAddress
description: |
Specifies the type of rule
Value | Description
-------------|------------
email | Email Address
deviceId | Device ID Fingerprint
RiskRulesValue:
type: string
example: johnsmith@xyz.com
description: |
Specifies the value of the rule parameter.
RiskRulesGetStatusResult:
type: string
example: S
readOnly: true
description: >
Specifies the result of the get request rule status
Value | Description | Notes
------|----------------------------------------------------------|-------
S | Get rule status request succeeded. |
F | Get rule status request failed. |
`riskRules.status` will not be returned.
E | Error condition occurred during get rule status request. |
`riskRules.status` will not be returned.
N | Parameter not found. |
`riskRules.status` will not be returned.
RiskRulesGetStatusStatus:
type: string
example: D
readOnly: true
description: |
Specifies the status of the rule
Value | Description
------|------------
A | Approve
R | Review
D | Decline
X | Delete
RiskRulesGetStatus:
type: object
required:
- parameter
- value
- result
properties:
parameter:
$ref: '#/components/schemas/RiskRulesGetStatusParameter'
value:
$ref: '#/components/schemas/RiskRulesValue'
result:
$ref: '#/components/schemas/RiskRulesGetStatusResult'
status:
$ref: '#/components/schemas/RiskRulesGetStatusStatus'
RiskRulesGetStatusArray:
type: array
items:
$ref: '#/components/schemas/RiskRulesGetStatus'
example:
- parameter: email
value: johnsmith@xyz.com
- parameter: email
value: joebob@abc.com
- parameter: deviceId
value: 5F67753832224611BF697A590316AA34
description: |
Array of risk rules objects.
RiskRulesUpdateParameter:
type: string
example: emailAddress
description: |
Specifies the type of rule
Value | Description
-------------|------------
email | Email Address
card | Card Number
token | Token
deviceId | Device ID Fingerprint
rfcb | Refund or Chargeback
RiskRulesUpdateResult:
type: string
example: S
readOnly: true
description: >
Specifies the result of the request rule action
Value | Description | Notes
------|---------------------------|--------
S | Rule update succeeded. |
F | Rule update failed. | Possible reasons: format error,
invalid token, invalid status requested, etc.
E | Error condition occurred. | Possible reasons: unable to reach
processor, processor returned unknown error, etc.
RiskRulesUpdateStatus:
type: string
example: D
description: >
Specifies the status of the rule
Value | Description | Notes
------|-------------|-------
A | Approve | This value cannot be used if `riskRules.parameter`
is 'card' or 'token'
R | Review |
D | Decline |
X | Delete |
RiskRulesCBCode:
type: integer
example: 1
description: |
Chargeback code
RiskRulesUpdate:
type: object
required:
- parameter
- value
- result
- status
properties:
parameter:
$ref: '#/components/schemas/RiskRulesUpdateParameter'
value:
$ref: '#/components/schemas/RiskRulesValue'
result:
$ref: '#/components/schemas/RiskRulesUpdateResult'
status:
$ref: '#/components/schemas/RiskRulesUpdateStatus'
cbCode:
$ref: '#/components/schemas/RiskRulesCBCode'
RiskRulesUpdateArray:
type: array
items:
$ref: '#/components/schemas/RiskRulesUpdate'
example:
- parameter: email
value: johnsmith@xyz.com
status: D
- parameter: email
value: joebob@abc.com
status: A
- parameter: token
value: '8048471746471119'
status: R
- parameter: card
value: '4321000000001119'
status: X
- parameter: deviceId
value: 5F67753832224611BF697A590316AA34
status: D
description: |
Array of risk rules objects.
RiskRulesUpdateStatusResponse:
type: string
example: D
description: |
Specifies the status of the rule
Value | Description
------|-------------
A | Approve
R | Review
D | Decline
X | Delete
RiskRulesUpdateResponse:
type: object
required:
- parameter
- value
- result
- status
properties:
parameter:
$ref: '#/components/schemas/RiskRulesUpdateParameter'
value:
$ref: '#/components/schemas/RiskRulesValue'
result:
$ref: '#/components/schemas/RiskRulesUpdateResult'
status:
$ref: '#/components/schemas/RiskRulesUpdateStatusResponse'
RiskRulesUpdateArrayResponse:
type: array
items:
$ref: '#/components/schemas/RiskRulesUpdateResponse'
example:
- parameter: email
value: johnsmith@xyz.com
status: D
- parameter: email
value: joebob@abc.com
status: A
- parameter: token
value: '8048471746471119'
status: R
- parameter: card
value: '4321000000001119'
status: X
- parameter: deviceId
value: 5F67753832224611BF697A590316AA34
status: D
description: |
Array of risk rules objects.
RiskListID:
type: number
example: '306'
description: |
Risk List ID
RiskListRecCreateDateTime:
type: string
format: ISO 8601
example: '2023-06-10T06:34:25.049205-07:00'
description: >
The record creation date and time in ISO 8601 format including the
timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm).
RiskListCategory:
type: string
enum:
- sourceIp
- emailAddress
- emailDomain
- fullName
- token
example: emailAddress
description: >
The risk category. If there is already an active record for the risk
category and value specified the previous record will become inactive.
Value | Description
-------------|------------
sourceIp | extract from sourceIp
emailAddress | extract from customer.emailAddress
emailDomain | extract from customer.emailAddress
fullName | extract from customer.fullName
token | extract from card.token.value
RiskListUser:
type: string
example: John Smith
description: |
User requesting the change.
RiskListValue:
type: string
example: janedoe@email.com
description: |
Risk List value based on the risk category being supplied
RiskListAction:
type: string
enum:
- A
- D
- 'N'
example: A
description: |
Risk List Action
Value | Description
------|------------
A | Approve
D | Decline
N | Nothing
RiskListActive:
type: string
enum:
- 'Y'
- 'N'
example: 'Y'
description: |
Risk List Active
Value | Description
------|------------
Y | Yes
N | No
RiskListStatus:
type: string
example: S
readOnly: true
description: |
Specifies the result of the rule status
Value | Description |
------|-------------|
S | Success |
F | Failure |
E | Error |
RiskListQueryObject:
type: object
properties:
id:
$ref: '#/components/schemas/RiskListID'
recCreateDateTime:
$ref: '#/components/schemas/RiskListRecCreateDateTime'
category:
$ref: '#/components/schemas/RiskListCategory'
user:
$ref: '#/components/schemas/RiskListUser'
value:
$ref: '#/components/schemas/RiskListValue'
action:
$ref: '#/components/schemas/RiskListAction'
active:
$ref: '#/components/schemas/RiskListActive'
mid:
$ref: '#/components/schemas/S4Mid'
status:
$ref: '#/components/schemas/RiskListStatus'
RiskListQuery:
type: array
items:
$ref: '#/components/schemas/RiskListQueryObject'
RiskListObject:
type: object
required:
- category
- user
- value
- action
- active
- mid
properties:
category:
$ref: '#/components/schemas/RiskListCategory'
user:
$ref: '#/components/schemas/RiskListUser'
value:
$ref: '#/components/schemas/RiskListValue'
action:
$ref: '#/components/schemas/RiskListAction'
active:
$ref: '#/components/schemas/RiskListActive'
mid:
$ref: '#/components/schemas/S4Mid'
status:
$ref: '#/components/schemas/RiskListStatus'
RiskList:
type: array
items:
$ref: '#/components/schemas/RiskListObject'
ApiOptionsFromTMRequired:
type: array
items:
type: string
example:
- FROMTM
writeOnly: true
description: >
API Options modify the request being made. See the [API
Options](/guides/appendices/api-options.md) section for more
information.
Must include `FROMTM` in the request.
CardNumberUnmaskedResponse:
type: string
maxLength: 32
example: '4321000000001119'
description: |
The unmasked and unencrypted payment card number.
CardExpirationDateString:
type: string
minLength: 4
maxLength: 4
format: MMYY
example: 1230
description: |
Card expiration date in MMYY format.
Invoices:
type: array
items:
type: string
maxItems: 100
example:
- '0510093358'
- '0510093119'
- '0510093360'
- '0510093361'
writeOnly: true
description: |
Array of invoices
TransactionSafStatus:
type: string
readOnly: true
enum:
- PENDING
- SENT_ONLINE
- NOT_FOUND
example: SENT_ONLINE
description: |
The transaction SAF status.
CardNumberLast4:
type: string
maxLength: 4
example: '1119'
description: |
The last 4 digits of the card number
ACHVerificationTypeVerifyWebhook:
type: string
example: P
enum:
- P
- M
description: |
The type of verification used to validate the account.
Value | Description
------|---------------
P | Prenotification
M | Microdeposit
HostResponseReasonCodeACH:
type: string
maxLength: 3
example: R01
description: >
Returns a response code from the host.
Value | Description
------|-----------
C01 | Incorrect DFI Account Number
C02 | Incorrect Routing Number
C03 | Incorrect Routing Number and Incorrect DFI Account Number
C05 | Incorrect Transaction Code
C06 | Incorrect DFI Account Number and Incorrect Transaction Code
C07 | Incorrect Routing Number, Incorrect DFI Account Number, and
Incorrect Transaction Code |
R01 | Insufficient Funds
R02 | Account Closed
R03 | No Account/ Unable to Locate Account
R04 | Invalid Account Number Structure
R05 | Unauthorized Debit to Consumer Account Using Corporate SEC Code
R06 | Returned per ODFI’s Request
R07 | Authorization Revoked by Customer
R08 | Payment Stopped
R09 | Uncollected Funds
R10 | Customer Advises Originator is Not Known to Receiver and/or
Originator is Not Authorized by Receiver to Debit Receiver’s Account
R11 | Customer Advises Entry Not in Accordance with the Terms of the
Authorization
R12 | Account Sold to Another DFI
R13 | Invalid ACH Routing Number
R14 | Representative Payee Deceased or Unable to Continue in That
Capacity
R15 | Beneficiary or Account Holder (Other Than a Representative
Payee) Deceased
R16 | Account Frozen/Entry Returned Per OFAC Instruction
R17 | File Record Edit Criteria/Entry with Invalid Account Number
Initiated Under Questionable Circumstances/Return of Improperly-Intiated
Reversal
R18 | Improper Effective Entry Date
R19 | Amount Field Error
R20 | Non-Transaction Account
R21 | Invalid Company Identification
R22 | Invalid Individual ID Number
R23 | Credit Entry Refused by Receiver
R24 | Duplicate Entry
R25 | Addenda Error
R26 | Mandatory Field Error
R27 | Trace Number Error
R28 | Routing Number Check Digit Error
R29 | Corporate Customer Advises Not Authorized
R30 | RDFI Not Participant in Check Truncation Program
R31 | Permissible Return Entry (CCD and CTX only)
R32 | RDFI Non-Settlement
R33 | Return of XCK Entry
R34 | Limited Participation DFI
R35 | Return of Improper Debit Entry
R36 | Return of Improper Credit Entry
R37 | Source Document Presented for Payment
R38 | Stop Payment on Source Document
R39 | Improper Source Document/Source Document Presented for Payment
HostResponseReasonDescriptionACH:
type: string
maxLength: 130
example: Insufficient Funds
description: |
Returns a description from the host.
HostResponseACH:
type: object
description: |
Returns the response code detailing why the transaction was declined.
properties:
reasonCode:
$ref: '#/components/schemas/HostResponseReasonCodeACH'
reasonDescription:
$ref: '#/components/schemas/HostResponseReasonDescriptionACH'
webhook_ach_verification_status_update:
title: ACH Verification Status Update
type: object
properties:
event:
type: object
properties:
type:
type: string
description: >
`ach.verify.verification_status_update`
Occurs when the status of the ACH verification request is
updated.
ach:
type: object
properties:
verificationType:
$ref: '#/components/schemas/ACHVerificationTypeVerifyWebhook'
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
A | Approved | The ACH request is approved.
D | Declined | The ACH request is declined.
hostResponse:
$ref: '#/components/schemas/HostResponseACH'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
type: object
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
event:
type: ach.verify.verification_status_update
ach:
verificationType: P
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
responseCode: A
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
webhook_ach_sale_status_update:
title: ACH Sale Status Update
type: object
properties:
event:
type: object
properties:
type:
type: string
description: |
`ach.sale.status_update`
Occurs when the status of the ACH sale request is updated.
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
- F
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
A | Approved | The ACH request is approved.
D | Declined | The ACH request is declined.
F | Funded | The ACH request is funded.
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
$ref: '#/components/schemas/HostResponseACH'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
type: object
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
event:
type: ach.sale.status_update
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
responseCode: A
invoice: '192029'
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
webhook_ach_refund_status_update:
title: ACH Refund Status Update
type: object
properties:
event:
type: object
properties:
type:
type: string
description: |
`ach.refund.status_update`
Occurs when the status of the ACH refund request is updated.
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
- F
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
A | Approved | The ACH request is approved.
D | Declined | The ACH request is declined.
F | Funded | The ACH request is refunded.
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
$ref: '#/components/schemas/HostResponseACH'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
type: object
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
event:
type: ach.refund.status_update
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
responseCode: A
invoice: '192029'
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
webhook_ach_dispute_initiated:
title: ACH Dispute Initiated
type: object
properties:
event:
type: object
properties:
type:
type: string
description: |
`ach.dispute.initiated`
Occurs when ACH dispute is created.
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
$ref: '#/components/schemas/TransactionResponseCodeACHPending'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
$ref: '#/components/schemas/HostResponseACH'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
type: object
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
event:
type: ach.dispute.initiated
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
invoice: '192029'
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
TransactionResponseCodeACHDispute:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- D
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
D | Declined | The ACH request is declined.
webhook_ach_dispute_status_update:
title: ACH Dispute Status Update
type: object
properties:
event:
type: object
properties:
type:
type: string
description: |
`ach.dispute.status_update`
Occurs when the status of the ACH dispute is updated.
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
$ref: '#/components/schemas/TransactionResponseCodeACHDispute'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
$ref: '#/components/schemas/HostResponseACH'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
type: object
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
event:
type: ach.dispute.status_update
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
responseCode: A
invoice: '192029'
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
webhook_ach_distribute_status_update:
title: ACH Distribute Status Update
type: object
properties:
event:
type: object
properties:
type:
type: string
description: |
`ach.distribute.status_update`
Occurs when the status of the ACH distribute request is updated.
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
- F
description: |
Code indicating the Shift4 host response.
Value | Description | Details
-------|-------------|--------
D | Declined | The ACH request is declined.
F | Funded | The ACH request is funded.
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
$ref: '#/components/schemas/HostResponseACH'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
type: object
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
event:
type: ach.distribute.status_update
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
responseCode: A
invoice: '192029'
notificationId: 921e41d4-e920-4b24-8bbf-0787379ad4df
server:
name: TM01CE
examples:
AuthTokenNotValidError:
summary: AuthToken Not Valid
value:
result:
- error:
primaryCode: 9862
secondaryCode: 0
shortText: AuthToken
longText: AuthToken not valid ENGINE01CE
server:
name: U2API01CE
transactionsauthorization_resp_p2peemv:
summary: Using EMV with P2PE
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: E
number: XXXXXXXXXXXX4111
present: 'Y'
token:
value: '8058471748284111'
type: MC
clerk:
numericId: 1576
emv:
tlvData: 910A0102030405060708090A
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: AmountAuthorized
printName: 9F02
printValue: '000000000444'
- key: ApplicationIdentifier
printName: AID
printValue: A0000000041010
- key: ApplicationLabel
printValue: MasterCard
- key: CVMResults
printName: 9F34
printValue: '1E0300'
- key: CardEntryMode
printName: ENTRY METHOD
printValue: CHIP
- key: CardholderVerificationMethod
printName: CVM
printValue: SIGN
- key: MaskedPAN
printValue: XXXXXXXXXXXX4111
- key: PANSequenceNumber
printName: 5F34
printValue: '01'
- key: SignatureRequired
printValue: 'Y'
- key: TerminalVerificationResults
printName: TVR
printValue: '0820000000'
- key: TransactionResponse
printName: Response
printValue: APPROVED
- key: TransactionStatusIndicator
printName: TSI
printValue: C800
- key: UnpredictableNumber
printName: 9F37
printValue: C5BF918D
server:
name: U2API01CE
transaction:
authorizationCode: OK253W
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionsauthorization_resp_p2pe:
summary: Using P2PE
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '1'
number: XXXXXXXXXXXX0009
present: 'Y'
token:
value: '8058471748050009'
type: MC
clerk:
numericId: 1576
customer:
firstName: MC2\/DUAL
lastName: TRACK
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: MaskedPAN
printValue: XXXXXXXXXXXX0009
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI02CE
transaction:
authorizationCode: OK183Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionsauthorization_resp_token:
summary: Using token
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '1'
expirationDate: 1222
number: XXXXXXXXXXXX1119
present: 'N'
token:
value: 11191pn83hbkkety
type: VS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK126Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionsauthorization_resp_utgdevice:
summary: Using UTG-controlled device
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
tax: 15
total: 140
card:
entryMode: '1'
number: XXXXXXXXXX4509
present: 'Y'
token:
value: '6011013928534509'
type: NS
clerk:
numericId: 1576
customer:
firstName: DC\/TRACK1
lastName: ONLY
device:
terminalId: '350'
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: LOCALUTG
transaction:
authorizationCode: OK892Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionsauthorization_resp_track:
summary: Using track information
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '2'
number: XXXXXXXXXXXX1119
present: 'Y'
token:
value: 1119p4kgmkb39zx2
type: VS
clerk:
numericId: 1576
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI02CE
transaction:
authorizationCode: OK007Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionsauthorization_resp_raw:
summary: Using unencrypted card number
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
securityCode:
result: M
valid: 'Y'
token:
value: '8048471746471119'
type: VS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: KEYED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK408Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
avs:
postalCodeVerified: 'N'
result: A
streetVerified: 'Y'
valid: 'Y'
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionssale_resp_p2peemv:
summary: Using EMV with P2PE
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: E
number: XXXXXXXXXXXX4111
present: 'Y'
token:
value: '8058471748284111'
type: MC
clerk:
numericId: 1576
emv:
tlvData: 910A0102030405060708090A
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: AmountAuthorized
printName: 9F02
printValue: '000000000444'
- key: ApplicationIdentifier
printName: AID
printValue: A0000000041010
- key: ApplicationLabel
printValue: MasterCard
- key: CVMResults
printName: 9F34
printValue: '1E0300'
- key: CardEntryMode
printName: ENTRY METHOD
printValue: CHIP
- key: CardholderVerificationMethod
printName: CVM
printValue: SIGN
- key: MaskedPAN
printValue: XXXXXXXXXXXX4111
- key: PANSequenceNumber
printName: 5F34
printValue: '01'
- key: SignatureRequired
printValue: 'Y'
- key: TerminalVerificationResults
printName: TVR
printValue: '0820000000'
- key: TransactionResponse
printName: Response
printValue: APPROVED
- key: TransactionStatusIndicator
printName: TSI
printValue: C800
- key: UnpredictableNumber
printName: 9F37
printValue: C5BF918D
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK710W
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionssale_resp_p2pe:
summary: Using P2PE
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '1'
number: XXXXXXXXXXXX1119
present: 'Y'
token:
value: '8048471746471119'
type: VS
clerk:
numericId: 1576
customer:
firstName: VS/DUAL
lastName: TRACK
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK850Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionssale_resp_token:
summary: Using token
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
token:
value: '8048471746471119'
type: VS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: KEYED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK854Z
authSource: E
avs:
postalCodeVerified: 'N'
result: A
streetVerified: 'Y'
valid: 'Y'
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionssale_resp_utgdevice:
summary: Using UTG-controlled device
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '1'
number: XXXXXXXXXX4509
present: 'Y'
token:
value: '6011013928534509'
type: NS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: LOCALUTG
transaction:
authorizationCode: OK978Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionssale_resp_track:
summary: Using track information
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '2'
number: XXXXXXXXXXXX1119
present: 'Y'
token:
value: '8048471746471119'
type: VS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: SWIPED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI02CE
transaction:
authorizationCode: OK862Z
authSource: E
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
transactionssale_resp_raw:
summary: Using unencrypted card number
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
securityCode:
result: M
valid: 'Y'
token:
value: '8048471746471119'
type: VS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: KEYED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK868Z
authSource: E
avs:
postalCodeVerified: 'N'
result: A
streetVerified: 'Y'
valid: 'Y'
hostResponse:
reasonCode: '04'
reasonDescription: PickUpCard_NoFraud
reattemptPermission: Reattempt not permitted
invoice: '192029'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
InvoiceError:
summary: Invoice Not Found
value:
result:
- error:
primaryCode: 9815
secondaryCode: 0
shortText: NO INV
longText: Invoice Not Found 192029 0000057984 ENGINE02CE
lighthouse:
data: >-
eyJwYXltZW50SWQiOiI4NWM0MWNhNy01NzVjLTQzNGUtODIyZi0xYzZlOTE0ZDAzODYiLCJyZW1haW5pbmdBbW91bnQiOjB9
server:
name: U2API01CE
AccessTokenNotFoundError:
summary: AccessToken Not Found
value:
result:
- error:
primaryCode: 9862
secondaryCode: 0
shortText: AccessToken
longText: AccessToken not found ENGINE01CE
server:
name: U2API01CE
GiftCardActivateError:
summary: Gift Card Activate Failed
value:
result:
- error:
primaryCode: 9101
secondaryCode: 0
shortText: ACTIVATE FAILED
longText: >-
ACTIVATE FAILED iyc_activateCard: Invalid card or serial number
222 Mid(444444) Invoice(6200007001) ENGINE01CE
server:
name: U2API01CE
BatchError:
summary: Batch Error
value:
result:
- error:
primaryCode: 9300
secondaryCode: 2
shortText: BATCH FAILED
longText: >-
Received Net Amount 1124.49 doesn't match existing Net Amount
1356.27. Batch submission process failed.
server:
name: U2API02CE
GetEMVCAPKDev:
summary: Development Keys
value:
result:
- capkVersion: 1
capks:
- aid: A000000003
index: '92'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
996AF56F569187D09293C14810450ED8EE3357397B18A2458EFAA92DA3B6DF6514EC060195318FD43BE9B8F0CC669E3F844057CBDDF8BDA191BB64473BC8DC9A730DB8F6B4EDE3924186FFD9B8C7735789C23A36BA0B8AF65372EB57EA5D89E7D14E9C7B6B557460F10885DA16AC923F15AF3758F0F03EBD3C5C2C949CBA306DB44E6A2C076C5F67E281D7EF56785DC4D75945E491F01918800A9E2DC66F60080566CE0DAF8D17EAD46AD8E30A247C9F
exponent: '03'
checksum: 429C954A3859CEF91295F663C963E582ED6EB253
- aid: A000000003
index: '94'
expDate: '12312032'
algorithm: '01'
hashAlgorithm: '01'
key: >-
ACD2B12302EE644F3F835ABD1FC7A6F62CCE48FFEC622AA8EF062BEF6FB8BA8BC68BBF6AB5870EED579BC3973E121303D34841A796D6DCBC41DBF9E52C4609795C0CCF7EE86FA1D5CB041071ED2C51D2202F63F1156C58A92D38BC60BDF424E1776E2BC9648078A03B36FB554375FC53D57C73F5160EA59F3AFC5398EC7B67758D65C9BFF7828B6B82D4BE124A416AB7301914311EA462C19F771F31B3B57336000DFF732D3B83DE07052D730354D297BEC72871DCCF0E193F171ABA27EE464C6A97690943D59BDABB2A27EB71CEEBDAFA1176046478FD62FEC452D5CA393296530AA3F41927ADFE434A2DF2AE3054F8840657A26E0FC617
exponent: '03'
checksum: C4A3C43CCF87327D136B804160E47D43B60E6E0F
- aid: A000000003
index: '95'
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
BE9E1FA5E9A803852999C4AB432DB28600DCD9DAB76DFAAA47355A0FE37B1508AC6BF38860D3C6C2E5B12A3CAAF2A7005A7241EBAA7771112C74CF9A0634652FBCA0E5980C54A64761EA101A114E0F0B5572ADD57D010B7C9C887E104CA4EE1272DA66D997B9A90B5A6D624AB6C57E73C8F919000EB5F684898EF8C3DBEFB330C62660BED88EA78E909AFF05F6DA627B
exponent: '03'
checksum: EE1511CEC71020A9B90443B37B1D5F6E703030F6
- aid: A000000003
index: '99'
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AB79FCC9520896967E776E64444E5DCDD6E13611874F3985722520425295EEA4BD0C2781DE7F31CD3D041F565F747306EED62954B17EDABA3A6C5B85A1DE1BEB9A34141AF38FCF8279C9DEA0D5A6710D08DB4124F041945587E20359BAB47B7575AD94262D4B25F264AF33DEDCF28E09615E937DE32EDC03C54445FE7E382777
exponent: '03'
checksum: 4ABFFD6B1C51212D05552E431C5B17007D2F5E6D
- aid: A000000004
index: '06'
expDate: '12312029'
algorithm: '01'
hashAlgorithm: '01'
key: >-
CB26FC830B43785B2BCE37C81ED334622F9622F4C89AAE641046B2353433883F307FB7C974162DA72F7A4EC75D9D657336865B8D3023D3D645667625C9A07A6B7A137CF0C64198AE38FC238006FB2603F41F4F3BB9DA1347270F2F5D8C606E420958C5F7D50A71DE30142F70DE468889B5E3A08695B938A50FC980393A9CBCE44AD2D64F630BB33AD3F5F5FD495D31F37818C1D94071342E07F1BEC2194F6035BA5DED3936500EB82DFDA6E8AFB655B1EF3D0D7EBF86B66DD9F29F6B1D324FE8B26CE38AB2013DD13F611E7A594D675C4432350EA244CC34F3873CBA06592987A1D7E852ADC22EF5A2EE28132031E48F74037E3B34AB747F
exponent: '03'
checksum: F910A1504D5FFB793D94F3B500765E1ABCAD72D9
- aid: A000000004
index: EF
expDate: '12312032'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A191CB87473F29349B5D60A88B3EAEE0973AA6F1A082F358D849FDDFF9C091F899EDA9792CAF09EF28F5D22404B88A2293EEBBC1949C43BEA4D60CFD879A1539544E09E0F09F60F065B2BF2A13ECC705F3D468B9D33AE77AD9D3F19CA40F23DCF5EB7C04DC8F69EBA565B1EBCB4686CD274785530FF6F6E9EE43AA43FDB02CE00DAEC15C7B8FD6A9B394BABA419D3F6DC85E16569BE8E76989688EFEA2DF22FF7D35C043338DEAA982A02B866DE5328519EBBCD6F03CDD686673847F84DB651AB86C28CF1462562C577B853564A290C8556D818531268D25CC98A4CC6A0BDFFFDA2DCCA3A94C998559E307FDDF915006D9A987B07DDAEB3B
exponent: '03'
checksum: 21766EBB0EE122AFB65D7845B73DB46BAB65427A
- aid: A000000004
index: F1
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A0DCF4BDE19C3546B4B6F0414D174DDE294AABBB828C5A834D73AAE27C99B0B053A90278007239B6459FF0BBCD7B4B9C6C50AC02CE91368DA1BD21AAEADBC65347337D89B68F5C99A09D05BE02DD1F8C5BA20E2F13FB2A27C41D3F85CAD5CF6668E75851EC66EDBF98851FD4E42C44C1D59F5984703B27D5B9F21B8FA0D93279FBBF69E090642909C9EA27F898959541AA6757F5F624104F6E1D3A9532F2A6E51515AEAD1B43B3D7835088A2FAFA7BE7
exponent: '03'
checksum: D8E68DA167AB5A85D8C3D55ECB9B0517A1A5B4BB
- aid: A000000004
index: F3
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
98F0C770F23864C2E766DF02D1E833DFF4FFE92D696E1642F0A88C5694C6479D16DB1537BFE29E4FDC6E6E8AFD1B0EB7EA0124723C333179BF19E93F10658B2F776E829E87DAEDA9C94A8B3382199A350C077977C97AFF08FD11310AC950A72C3CA5002EF513FCCC286E646E3C5387535D509514B3B326E1234F9CB48C36DDD44B416D23654034A66F403BA511C5EFA3
exponent: '03'
checksum: A69AC7603DAF566E972DEDC2CB433E07E8B01A9A
- aid: A000000004
index: F8
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A1F5E1C9BD8650BD43AB6EE56B891EF7459C0A24FA84F9127D1A6C79D4930F6DB1852E2510F18B61CD354DB83A356BD190B88AB8DF04284D02A4204A7B6CB7C5551977A9B36379CA3DE1A08E69F301C95CC1C20506959275F41723DD5D2925290579E5A95B0DF6323FC8E9273D6F849198C4996209166D9BFC973C361CC826E1
exponent: '03'
checksum: F06ECC6D2AAEBF259B7E755A38D9A9B24E2FF3DD
- aid: A000000004
index: FA
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A90FCD55AA2D5D9963E35ED0F440177699832F49C6BAB15CDAE5794BE93F934D4462D5D12762E48C38BA83D8445DEAA74195A301A102B2F114EADA0D180EE5E7A5C73E0C4E11F67A43DDAB5D55683B1474CC0627F44B8D3088A492FFAADAD4F42422D0E7013536C3C49AD3D0FAE96459B0F6B1B6056538A3D6D44640F94467B108867DEC40FAAECD740C00E2B7A8852D
exponent: '03'
checksum: 5BED4068D96EA16D2D77E03D6036FC7A160EA99C
- aid: A000000004
index: FE
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A653EAC1C0F786C8724F737F172997D63D1C3251C44402049B865BAE877D0F398CBFBE8A6035E24AFA086BEFDE9351E54B95708EE672F0968BCD50DCE40F783322B2ABA04EF137EF18ABF03C7DBC5813AEAEF3AA7797BA15DF7D5BA1CBAF7FD520B5A482D8D3FEE105077871113E23A49AF3926554A70FE10ED728CF793B62A1
exponent: '03'
checksum: 9A295B05FB390EF7923F57618A9FDA2941FC34E0
- aid: A000000025
index: C1
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
E69E319C34D1B4FB43AED4BD8BBA6F7A8B763F2F6EE5DDF7C92579A984F89C4A9C15B27037764C58AC7E45EFBC34E138E56BA38F76E803129A8DDEB5E1CC8C6B30CF634A9C9C1224BF1F0A9A18D79ED41EBCF1BE78087AE8B7D2F896B1DE8B7E784161A138A0F2169AD33E146D1B16AB595F9D7D98BE671062D217F44EB68C68640C7D57465A063F6BAC776D3E2DAC61
exponent: '03'
checksum: DC79D6B5FC879362299BC5A637DAD2E0D99656B8
- aid: A000000025
index: C2
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B875002F38BA26D61167C5D440367604AD38DF2E93D8EE8DA0E8D9C0CF4CC5788D11DEA689E5F41D23A3DA3E0B1FA5875AE25620F5A6BCCEE098C1B35C691889D7D0EF670EB8312E7123FCC5DC7D2F0719CC80E1A93017F944D097330EDF945762FEE62B7B0BA0348228DBF38D4216E5A67A7EF74F5D3111C44AA31320F623CB3C53E60966D6920067C9E082B746117E48E4F00E110950CA54DA3E38E5453BD5544E3A6760E3A6A42766AD2284E0C9AF
exponent: '03'
checksum: 8E748296359A7428F536ADDA8E2C037E2B697EF6
- aid: A000000025
index: C3
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B93182ABE343DFBF388C71C4D6747DCDEC60367FE63CFAA942D7D323E688D0832836548BF0EDFF1EDEEB882C75099FF81A93FA525C32425B36023EA02A8899B9BF7D7934E86F997891823006CEAA93091A73C1FDE18ABD4F87A22308640C064C8C027685F1B2DB7B741B67AB0DE05E870481C5F972508C17F57E4F833D63220F6EA2CFBB878728AA5887DE407D10C6B8F58D46779ECEC1E2155487D52C78A5C03897F2BB580E0A2BBDE8EA2E1C18F6AAF3EB3D04C3477DEAB88F150C8810FD1EF8EB0596866336FE2C1FBC6BEC22B4FE5D885647726DB59709A505F75C49E0D8D71BF51E4181212BE2142AB2A1E8C0D3B7136CD7B7708E4D
exponent: '03'
checksum: 12F1790CB0273DC73C6E70784BC24C12E8DB71F6
- aid: A000000025
index: C8
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
BF0CFCED708FB6B048E3014336EA24AA007D7967B8AA4E613D26D015C4FE7805D9DB131CED0D2A8ED504C3B5CCD48C33199E5A5BF644DA043B54DBF60276F05B1750FAB39098C7511D04BABC649482DDCF7CC42C8C435BAB8DD0EB1A620C31111D1AAAF9AF6571EEBD4CF5A08496D57E7ABDBB5180E0A42DA869AB95FB620EFF2641C3702AF3BE0B0C138EAEF202E21D
exponent: '03'
checksum: 33BD7A059FAB094939B90A8F35845C9DC779BD50
- aid: A000000025
index: C9
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B362DB5733C15B8797B8ECEE55CB1A371F760E0BEDD3715BB270424FD4EA26062C38C3F4AAA3732A83D36EA8E9602F6683EECC6BAFF63DD2D49014BDE4D6D603CD744206B05B4BAD0C64C63AB3976B5C8CAAF8539549F5921C0B700D5B0F83C4E7E946068BAAAB5463544DB18C63801118F2182EFCC8A1E85E53C2A7AE839A5C6A3CABE73762B70D170AB64AFC6CA482944902611FB0061E09A67ACB77E493D998A0CCF93D81A4F6C0DC6B7DF22E62DB
exponent: '03'
checksum: 8E8DFF443D78CD91DE88821D70C98F0638E51E49
- aid: A000000025
index: CA
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
C23ECBD7119F479C2EE546C123A585D697A7D10B55C2D28BEF0D299C01DC65420A03FE5227ECDECB8025FBC86EEBC1935298C1753AB849936749719591758C315FA150400789BB14FADD6EAE2AD617DA38163199D1BAD5D3F8F6A7A20AEF420ADFE2404D30B219359C6A4952565CCCA6F11EC5BE564B49B0EA5BF5B3DC8C5C6401208D0029C3957A8C5922CBDE39D3A564C6DEBB6BD2AEF91FC27BB3D3892BEB9646DCE2E1EF8581EFFA712158AAEC541C0BBB4B3E279D7DA54E45A0ACC3570E712C9F7CDF985CFAFD382AE13A3B214A9E8E1E71AB1EA707895112ABC3A97D0FCB0AE2EE5C85492B6CFD54885CDD6337E895CC70FB3255E3
exponent: '03'
checksum: 6BDA32B1AA171444C7E8F88075A74FBFE845765F
- aid: A000000065
index: '11'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A2583AA40746E3A63C22478F576D1EFC5FB046135A6FC739E82B55035F71B09BEB566EDB9968DD649B94B6DEDC033899884E908C27BE1CD291E5436F762553297763DAA3B890D778C0F01E3344CECDFB3BA70D7E055B8C760D0179A403D6B55F2B3B083912B183ADB7927441BED3395A199EEFE0DEBD1F5FC3264033DA856F4A8B93916885BD42F9C1F456AAB8CFA83AC574833EB5E87BB9D4C006A4B5346BD9E17E139AB6552D9C58BC041195336485
exponent: '03'
checksum: D9FD62C9DD4E6DE7741E9A17FB1FF2C5DB948BCB
- aid: A000000065
index: '13'
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A3270868367E6E29349FC2743EE545AC53BD3029782488997650108524FD051E3B6EACA6A9A6C1441D28889A5F46413C8F62F3645AAEB30A1521EEF41FD4F3445BFA1AB29F9AC1A74D9A16B93293296CB09162B149BAC22F88AD8F322D684D6B49A12413FC1B6AC70EDEDB18EC1585519A89B50B3D03E14063C2CA58B7C2BA7FB22799A33BCDE6AFCBEB4A7D64911D08D18C47F9BD14A9FAD8805A15DE5A38945A97919B7AB88EFA11A88C0CD92C6EE7DC352AB0746ABF13585913C8A4E04464B77909C6BD94341A8976C4769EA6C0D30A60F4EE8FA19E767B170DF4FA80312DBA61DB645D5D1560873E2674E1F620083F30180BD96CA589
exponent: '03'
checksum: 54CFAE617150DFA09D3F901C9123524523EBEDF3
- aid: A000000065
index: 0F
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
9EFBADDE4071D4EF98C969EB32AF854864602E515D6501FDE576B310964A4F7C2CE842ABEFAFC5DC9E26A619BCF2614FE07375B9249BEFA09CFEE70232E75FFD647571280C76FFCA87511AD255B98A6B577591AF01D003BD6BF7E1FCE4DFD20D0D0297ED5ECA25DE261F37EFE9E175FB5F12D2503D8CFB060A63138511FE0E125CF3A643AFD7D66DCF9682BD246DDEA1
exponent: '03'
checksum: 2A1B82DE00F5F0C401760ADF528228D3EDE0F403
- aid: A000000152
index: 5A
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
EDD8252468A705614B4D07DE3211B30031AEDB6D33A4315F2CFF7C97DB918993C2DC02E79E2FF8A2683D5BBD0F614BC9AB360A448283EF8B9CF6731D71D6BE939B7C5D0B0452D660CF24C21C47CAC8E26948C8EED8E3D00C016828D642816E658DC2CFC61E7E7D7740633BEFE34107C1FB55DEA7FAAEA2B25E85BED948893D07
exponent: '03'
checksum: CC9585E8E637191C10FCECB32B5AE1B9D410B52D
- aid: A000000152
index: 5B
expDate: '12312050'
algorithm: '01'
hashAlgorithm: '01'
key: >-
D3F45D065D4D900F68B2129AFA38F549AB9AE4619E5545814E468F382049A0B9776620DA60D62537F0705A2C926DBEAD4CA7CB43F0F0DD809584E9F7EFBDA3778747BC9E25C5606526FAB5E491646D4DD28278691C25956C8FED5E452F2442E25EDC6B0C1AA4B2E9EC4AD9B25A1B836295B823EDDC5EB6E1E0A3F41B28DB8C3B7E3E9B5979CD7E079EF024095A1D19DD
exponent: '03'
checksum: 4DC5C6CAB6AE96974D9DC8B2435E21F526BC7A60
- aid: A000000152
index: 5C
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
833F275FCF5CA4CB6F1BF880E54DCFEB721A316692CAFEB28B698CAECAFA2B2D2AD8517B1EFB59DDEFC39F9C3B33DDEE40E7A63C03E90A4DD261BC0F28B42EA6E7A1F307178E2D63FA1649155C3A5F926B4C7D7C258BCA98EF90C7F4117C205E8E32C45D10E3D494059D2F2933891B979CE4A831B301B0550CDAE9B67064B31D8B481B85A5B046BE8FFA7BDB58DC0D7032525297F26FF619AF7F15BCEC0C92BCDCBC4FB207D115AA65CD04C1CF982191
exponent: '03'
checksum: 60154098CBBA350F5F486CA31083D1FC474E31F8
- aid: A000000152
index: 5D
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AD938EA9888E5155F8CD272749172B3A8C504C17460EFA0BED7CBC5FD32C4A80FD810312281B5A35562800CDC325358A9639C501A537B7AE43DF263E6D232B811ACDB6DDE979D55D6C911173483993A423A0A5B1E1A70237885A241B8EEBB5571E2D32B41F9CC5514DF83F0D69270E109AF1422F985A52CCE04F3DF269B795155A68AD2D6B660DDCD759F0A5DA7B64104D22C2771ECE7A5FFD40C774E441379D1132FAF04CDF55B9504C6DCE9F61776D81C7C45F19B9EFB3749AC7D486A5AD2E781FA9D082FB2677665B99FA5F1553135A1FD2A2A9FBF625CA84A7D736521431178F13100A2516F9A43CE095B032B886C7A6AB126E203BE7
exponent: '03'
checksum: B51EC5F7DE9BB6D8BCE8FB5F69BA57A04221F39B
- aid: A000000277
index: '02'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
E0FFBEE77CEE02ADEE8B4B004D26FB46FAF3CE033E3B874D73D099A966A0657497CEE214E95DF2BF5C9D359A3B10C05CFC9929BEF3070036FD19AE661B173E486CBC9B04E4B2E2D0D8209CAF5C200929FA252A21BD69A9A47488844A1DE5BF8729CE5E5E92117047BDDE9FBE72397FD9FC3BE459D8ED06FD6CADF0AFF39C93CC07B312EE2ACB3D4A15E919F57481CFEF
exponent: '010001'
checksum: BAF3652A9F5D0FF45EECECA55B4597B1F53BE283
- aid: A000000277
index: '03'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
E51505CCECDD0799BAFE097200DF40FFC2154836B8D67F1E99D4D415F73C04A9FAD73825D32AE5BA77FCD02597393CE4D8104B6010D5A8F28F2B47BB8298DAFD63C9C0BEF62AF937265614E31AE2AB45B60B968DB9DEE55602C169F6C16D4579BAA24765560300A3056F894BA8FFA566D9CCD79453D804B97DA14F21F9C3528ED8B8A368A9FACF05C46C13A9BA020618425EF1ACF6CB4DD5DCD050273502114B59EE90EBD833F70C2F324741E79A19A1
exponent: '010001'
checksum: 0FB60A1BCA38095F3CC578D2DEC95F779840A343
- aid: A000000277
index: '07'
expDate: '12312032'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B2CE89726B6B2D1690A0F8CA75CD0B6B1ACDFBE66D53BA00C500BE612FB421423684FF1868554A7722258012E588ED1CD206C67BB2F7598F3CE67F23A888B8ED7421C49A2EBA224DFBD866F62E59338E9F626D0DFD4C9ACC626E42EC0375EE424C93E5DB5773FC98E4AC9FCDEBD0521B15295C797DCABB4679C055AC374A81B245ABF1092A3D46E1CCE10A84F9FC2FC6ED91025121589C9AA68B56B7FBF0D86B4C8E3C9C08406DBB4609BBFC5308F325A8273CB6D36F3E0AF772507BF8A2A9F5A749B5AF98CCEAB2826C2D9C2AB9103B1BAB0DE92099C8072477EC564062AC38184C60DAD298EF352D92DFA041DDE3DB260CE5302B47A7E9
exponent: '010001'
checksum: 44F2C13373A5068B63C9334E914DDE6AB70CE0F1
- aid: A000000277
index: '40'
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
F802C308544873AD2225A81943732A4B7CFFA4E3157D17CD5A7723F858F0B11E636D2930FA933778F27C7C49127E0CCA317021CFE8E0F773785EB3FF07587E98CE8ED4FE9E1CA1859F41A9CF2572D8A093C5465F5A29612A45B1700F4DA13814C3D4DF075EAADE8DB4BE4D7B3AE0256F7A0C12E34BD416CAC4F9250C38B7E13B
exponent: '010001'
checksum: 2015497BE4B86F104BBF337691825EED64E101CA
- aid: A000000277
index: '41'
expDate: '20241231'
algorithm: '01'
hashAlgorithm: '01'
key: >-
ADC39532AB26462DC02B25CB92748AAC679F07CF7AFD8F9B83C4B94D8C06A1F0D841F35A5F598DD3915FDA8929B8BF2BE0CD03CDC625BFA0FED60D6B8A6778B138C30D4ACA134F337E90F82E4D2FF6180ACA6664F562DF2A11120D10957DF4B2E75607FC960176CBBE6AE3E3F6D5556E47A5EABC850388175609C9AC7AFF6AF12A522EE1EAD1D94EC964E325C97CAC84A1D508769F65FEE99F25196403C98E721116B8084379277AB4D9A2F867B8FCBB280447646915702F20C8ABEE1A29A358D25CFF7EEA66813CB10996BC33E18FC15190CC3B1CDF14934652BA5C8C2E201988E098402556B3ED068862925B90BE2FD61E337FC5BAF7A9
exponent: '010001'
checksum: FD47C4AAB01B9B89314539BB32E0A29770A04387'
- aid: A000000277
index: '42'
expDate: '20241231'
algorithm: '01'
hashAlgorithm: '01'
key: >-
99E0195F9B477160EE90F5FE9773D68DD684C7192528DB67DF0D93B0FDD60B1A9F999A726B7BD97586354575A787363290E7AB423E3D52D037BE38057BA5A9292A5652677E3F754BD642A1702E97279E67AA3411413A7AAB452DF6A1246CA9EF297CBD3BDC1B0A2CA863A48CF87E62400E7AAD29A4880E799187F50861C6C6E976142AD3F456DAEFCB3041557787B4981414D915AFF3EA8CAB738533BBACCA12F75BF107C10F6A029417A051BE0A3285
exponent: '010001'
checksum: 64876E40CD5DDE35CF107E8314C67BDE640A6BEE'
- aid: A000000333
index: '08'
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B61645EDFD5498FB246444037A0FA18C0F101EBD8EFA54573CE6E6A7FBF63ED21D66340852B0211CF5EEF6A1CD989F66AF21A8EB19DBD8DBC3706D135363A0D683D046304F5A836BC1BC632821AFE7A2F75DA3C50AC74C545A754562204137169663CFCC0B06E67E2109EBA41BC67FF20CC8AC80D7B6EE1A95465B3B2657533EA56D92D539E5064360EA4850FED2D1BF
exponent: '03'
checksum: EE23B616C95C02652AD18860E48787C079E8E85A
- aid: A000000333
index: '09'
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
EB374DFC5A96B71D2863875EDA2EAFB96B1B439D3ECE0B1826A2672EEEFA7990286776F8BD989A15141A75C384DFC14FEF9243AAB32707659BE9E4797A247C2F0B6D99372F384AF62FE23BC54BCDC57A9ACD1D5585C303F201EF4E8B806AFB809DB1A3DB1CD112AC884F164A67B99C7D6E5A8A6DF1D3CAE6D7ED3D5BE725B2DE4ADE23FA679BF4EB15A93D8A6E29C7FFA1A70DE2E54F593D908A3BF9EBBD760BBFDC8DB8B54497E6C5BE0E4A4DAC29E5
exponent: '03'
checksum: A075306EAB0045BAF72CDD33B3B678779DE1F527
- aid: A000000333
index: 0A
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B2AB1B6E9AC55A75ADFD5BBC34490E53C4C3381F34E60E7FAC21CC2B26DD34462B64A6FAE2495ED1DD383B8138BEA100FF9B7A111817E7B9869A9742B19E5C9DAC56F8B8827F11B05A08ECCF9E8D5E85B0F7CFA644EFF3E9B796688F38E006DEB21E101C01028903A06023AC5AAB8635F8E307A53AC742BDCE6A283F585F48EF
exponent: '03'
checksum: C88BE6B2417C4F941C9371EA35A377158767E4E3
- aid: A000000333
index: 0B
expDate: '12312031'
algorithm: '01'
hashAlgorithm: '01'
key: >-
CF9FDF46B356378E9AF311B0F981B21A1F22F250FB11F55C958709E3C7241918293483289EAE688A094C02C344E2999F315A72841F489E24B1BA0056CFAB3B479D0E826452375DCDBB67E97EC2AA66F4601D774FEAEF775ACCC621BFEB65FB0053FC5F392AA5E1D4C41A4DE9FFDFDF1327C4BB874F1F63A599EE3902FE95E729FD78D4234DC7E6CF1ABABAA3F6DB29B7F05D1D901D2E76A606A8CBFFFFECBD918FA2D278BDB43B0434F5D45134BE1C2781D157D501FF43E5F1C470967CD57CE53B64D82974C8275937C5D8502A1252A8A5D6088A259B694F98648D9AF2CB0EFD9D943C69F896D49FA39702162ACB5AF29B90BADE005BC157
exponent: '03'
checksum: BD331F9996A490B33C13441066A09AD3FEB5F66C
- aid: A000000768
index: E1
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AD767119B139295B9EF760B9A94811580E933A03E76C0A7022F1021278EB6FBBEF36599D5A95C2CB603364E1DA12DF88B76D19F225F14D2A689C580DC2B54457C8BEA50086A4BE897D3353AA003CAFAB5AE3993BE6D379D488689028EC852DFED90EA6FDD73ACF6583934E64601A0EE45AF652B52CC58A9EFFA5D846DD79EFC9A8638275EC264B3C40AA3C8F3DDF1F9D378598362DF48417BF039A04D70B4FFA14A2F6218299428C625EF949F08740ED36FE9265BB8E2CA94604EFC0AEB654F9FC455F22B1EC46871E46638CE190D3691313E41C7F9C8AD4AE3D1B574D4336AD6A2BA551F2DB3A8D44F375CB67D94AFBDFD34DEA92066149
exponent: '03'
checksum: AE03037B9B042B0F9690500DEE287CD706FF73C8
- aid: A000000768
index: EE
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
A8D150CEE34B16D294B46B99BD6B3284303BD1FFD316C210E876666AD991DFE68DC1BD0835A5E03F753DB0DCE112A928C0C604F5DF256E265E05B59B4DAA15E74B0E5E27E56F8D97C1233D416162DDEC7EFE731D30BBA16683557E4D8FA15269F51D40468D1B2C31CCD314804FC97341F68A1BB78F4985B99F0901557B52196950CF6A12D6FD4356002197B17A8035606DAAC2BFCDB3CD86B9FCDBC64908BFB039C268772D73E44C3867AFC002C12CB5
exponent: '03'
checksum: 6DFE06AB7FAD2D98EA18B7849D11DF704D08EFAE
- aid: A000000780
index: A4
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
D22EF8F41F0685E371B53625692A7EB13B3E9462DD985E044A5915108D2DFCC0A4171C0C0DE4E6D9BD525CAC461A169DAC5101B975D105DEA2AA34B80D9131F47A278DA609B32B1379F98FB960328DE1E27E1EDAFD2DC8A3643AFEB605582C5F953E0DE029643DE058DA6813137EB9450C5C1AD36823BF4C548A5599F6C025274081F6BBF916D79CC00AB77C3AD8E35282FFC9A24CF5F31B0E5585618A75929FBAD4416EC853A76380C84DB3B208389EC2675C9CDEA4AC106EE6AEB242761EEFED6D744E3439588EB17B2CDD956658F59FBB2186B23B396B48E84A7702B91238059FB314CAFCF59B3F09787CCA396ABA35A144C0435DC99D
exponent: '03'
checksum: 8438208C174CC1C3FB7793585BF1DE288349B31C
server:
name: TM01CE
GetEMVCAPKProd:
summary: Production Keys
value:
result:
- capkVersion: 1
capks:
- aid: A000000003
index: '08'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
D9FD6ED75D51D0E30664BD157023EAA1FFA871E4DA65672B863D255E81E137A51DE4F72BCC9E44ACE12127F87E263D3AF9DD9CF35CA4A7B01E907000BA85D24954C2FCA3074825DDD4C0C8F186CB020F683E02F2DEAD3969133F06F7845166ACEB57CA0FC2603445469811D293BFEFBAFAB57631B3DD91E796BF850A25012F1AE38F05AA5C4D6D03B1DC2E568612785938BBC9B3CD3A910C1DA55A5A9218ACE0F7A21287752682F15832A678D6E1ED0B
exponent: '03'
checksum: 20D213126955DE205ADC2FD2822BD22DE21CF9A8
- aid: A000000003
index: '09'
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
9D912248DE0A4E39C1A7DDE3F6D2588992C1A4095AFBD1824D1BA74847F2BC4926D2EFD904B4B54954CD189A54C5D1179654F8F9B0D2AB5F0357EB642FEDA95D3912C6576945FAB897E7062CAA44A4AA06B8FE6E3DBA18AF6AE3738E30429EE9BE03427C9D64F695FA8CAB4BFE376853EA34AD1D76BFCAD15908C077FFE6DC5521ECEF5D278A96E26F57359FFAEDA19434B937F1AD999DC5C41EB11935B44C18100E857F431A4A5A6BB65114F174C2D7B59FDF237D6BB1DD0916E644D709DED56481477C75D95CDD68254615F7740EC07F330AC5D67BCD75BF23D28A140826C026DBDE971A37CD3EF9B8DF644AC385010501EFC6509D7A41
exponent: '03'
checksum: 1FF80A40173F52D7D27E0F26A146A1C8CCB29046
- aid: A000000004
index: '05'
expDate: '12312024'
algorithm: '01'
key: >-
B8048ABC30C90D976336543E3FD7091C8FE4800DF820ED55E7E94813ED00555B573FECA3D84AF6131A651D66CFF4284FB13B635EDD0EE40176D8BF04B7FD1C7BACF9AC7327DFAA8AA72D10DB3B8E70B2DDD811CB4196525EA386ACC33C0D9D4575916469C4E4F53E8E1C912CC618CB22DDE7C3568E90022E6BBA770202E4522A2DD623D180E215BD1D1507FE3DC90CA310D27B3EFCCD8F83DE3052CAD1E48938C68D095AAC91B5F37E28BB49EC7ED597
hashAlgorithm: '01'
exponent: '03'
checksum: EBFA0D5D06D8CE702DA3EAE890701D45E274C845
- aid: A000000004
index: '06'
expDate: '12312029'
algorithm: '01'
hashAlgorithm: '01'
key: >-
CB26FC830B43785B2BCE37C81ED334622F9622F4C89AAE641046B2353433883F307FB7C974162DA72F7A4EC75D9D657336865B8D3023D3D645667625C9A07A6B7A137CF0C64198AE38FC238006FB2603F41F4F3BB9DA1347270F2F5D8C606E420958C5F7D50A71DE30142F70DE468889B5E3A08695B938A50FC980393A9CBCE44AD2D64F630BB33AD3F5F5FD495D31F37818C1D94071342E07F1BEC2194F6035BA5DED3936500EB82DFDA6E8AFB655B1EF3D0D7EBF86B66DD9F29F6B1D324FE8B26CE38AB2013DD13F611E7A594D675C4432350EA244CC34F3873CBA06592987A1D7E852ADC22EF5A2EE28132031E48F74037E3B34AB747F
exponent: '03'
checksum: F910A1504D5FFB793D94F3B500765E1ABCAD72D9
- aid: A000000277
index: '06'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
DB43A71FF30392069A9600143DCB628A4DABDFE69E31CB6151D9A2EB18A53ABA1EF75518CD3EDA29B96D55B002870A649AAFC65CE472BD01352C2D2E77D4EE352B3A64BC2CC170E29D426D7B3317BD3C4FC32EA2151CA0F1071A2ACFECD70468D3EBC7A44440DD63EC9499F302348BB6235F964BF3CAA30B29939B9901C42B5540BF4F837DD898F5392076F9B95F0EBCB6846374FFE71895A422775D95CABA9C25510627D4F7B57A3DBD755608EDD843
exponent: '010001'
checksum: D18AB9F1518FBC0F6EB0EEFB00C5D07CAE8A2197
- aid: A000000277
index: '08'
expDate: '12312025'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AB1B0667B2A68883477B2ED48F3068CB0F57ABBEC93E0AF40180BACD895120E36E2710784599CDE9035550D96BD6C5CEA55C4E8C88A5D0A81CE1309559BCE91930C7AA3E3D0A2D79A6036BE03C4000658A78ECA742034BE5FB0E08D530C7FF9458211E78E33E3803F8DFF24A4117EE0EDFE7A98CB3AE2ECCB2A3C3A75C32512EDD1183CF218BE1642FA78430A18A495E6FEFA7B98860C6FCEBFD27537D34F4E55B9CBDEB19DF029BDF00993E1A2E0B9E89E1B49777FCB7C1610CDA94A488C9177908B75C48DFE3F8BBD52886233B44B1A58373D5AFD0F309ABB939C39DF95D923F76B7300E83D182C2922EBB9FD018867A0E6D179EFF8C87
exponent: '010001'
checksum: 46EAD2ED0B8645D4DCB2AE4B1D285A0632B452D4
- aid: A000000025
index: 0F
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
C8D5AC27A5E1FB89978C7C6479AF993AB3800EB243996FBB2AE26B67B23AC482C4B746005A51AFA7D2D83E894F591A2357B30F85B85627FF15DA12290F70F05766552BA11AD34B7109FA49DE29DCB0109670875A17EA95549E92347B948AA1F045756DE56B707E3863E59A6CBE99C1272EF65FB66CBB4CFF070F36029DD76218B21242645B51CA752AF37E70BE1A84FF31079DC0048E928883EC4FADD497A719385C2BBBEBC5A66AA5E5655D18034EC5
exponent: '03'
checksum: A73472B3AB557493A9BC2179CC8014053B12BAB4
- aid: A000000025
index: '10'
expDate: '12312029'
algorithm: '10'
hashAlgorithm: '01'
key: >-
CF98DFEDB3D3727965EE7797723355E0751C81D2D3DF4D18EBAB9FB9D49F38C8C4A826B99DC9DEA3F01043D4BF22AC3550E2962A59639B1332156422F788B9C16D40135EFD1BA94147750575E636B6EBC618734C91C1D1BF3EDC2A46A43901668E0FFC136774080E888044F6A1E65DC9AAA8928DACBEB0DB55EA3514686C6A732CEF55EE27CF877F110652694A0E3484C855D882AE191674E25C296205BBB599455176FDD7BBC549F27BA5FE35336F7E29E68D783973199436633C67EE5A680F05160ED12D1665EC83D1997F10FD05BBDBF9433E8F797AEE3E9F02A34228ACE927ABE62B8B9281AD08D3DF5C7379685045D7BA5FCDE58637
exponent: '03'
checksum: C729CF2FD262394ABC4CC173506502446AA9B9FD
- aid: A000000152
index: '04'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
8EEEC0D6D3857FD558285E49B623B109E6774E06E9476FE1B2FB273685B5A235E955810ADDB5CDCC2CB6E1A97A07089D7FDE0A548BDC622145CA2DE3C73D6B14F284B3DC1FA056FC0FB2818BCD7C852F0C97963169F01483CE1A63F0BF899D412AB67C5BBDC8B4F6FB9ABB57E95125363DBD8F5EBAA9B74ADB93202050341833DEE8E38D28BD175C83A6EA720C262682BEABEA8E955FE67BD9C2EFF7CB9A9F45DD5BDA4A1EEFB148BC44FFF68D9329FD
exponent: '03'
checksum: 17F971CAF6B708E5B9165331FBA91593D0C0BF66
- aid: A000000152
index: '05'
expDate: '12312026'
algorithm: '01'
hashAlgorithm: '01'
key: >-
E1200E9F4428EB71A526D6BB44C957F18F27B20BACE978061CCEF23532DBEBFAF654A149701C14E6A2A7C2ECAC4C92135BE3E9258331DDB0967C3D1D375B996F25B77811CCCC06A153B4CE6990A51A0258EA8437EDBEB701CB1F335993E3F48458BC1194BAD29BF683D5F3ECB984E31B7B9D2F6D947B39DEDE0279EE45B47F2F3D4EEEF93F9261F8F5A571AFBFB569C150370A78F6683D687CB677777B2E7ABEFCFC8F5F93501736997E8310EE0FD87AFAC5DA772BA277F88B44459FCA563555017CD0D66771437F8B6608AA1A665F88D846403E4C41AFEEDB9729C2B2511CFE228B50C1B152B2A60BBF61D8913E086210023A3AA499E423
exponent: '03'
checksum: 12BCD407B6E627A750FDF629EE8C2C9CC7BA636A
- aid: A000000065
index: '12'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
ADF05CD4C5B490B087C3467B0F3043750438848461288BFEFD6198DD576DC3AD7A7CFA07DBA128C247A8EAB30DC3A30B02FCD7F1C8167965463626FEFF8AB1AA61A4B9AEF09EE12B009842A1ABA01ADB4A2B170668781EC92B60F605FD12B2B2A6F1FE734BE510F60DC5D189E401451B62B4E06851EC20EBFF4522AACC2E9CDC89BC5D8CDE5D633CFD77220FF6BBD4A9B441473CC3C6FEFC8D13E57C3DE97E1269FA19F655215B23563ED1D1860D8681
exponent: '03'
checksum: 874B379B7F607DC1CAF87A19E400B6A9E25163E8
- aid: A000000065
index: '14'
expDate: '12312026'
algorithm: '01'
hashAlgorithm: '01'
key: >-
AEED55B9EE00E1ECEB045F61D2DA9A66AB637B43FB5CDBDB22A2FBB25BE061E937E38244EE5132F530144A3F268907D8FD648863F5A96FED7E42089E93457ADC0E1BC89C58A0DB72675FBC47FEE9FF33C16ADE6D341936B06B6A6F5EF6F66A4EDD981DF75DA8399C3053F430ECA342437C23AF423A211AC9F58EAF09B0F837DE9D86C7109DB1646561AA5AF0289AF5514AC64BC2D9D36A179BB8A7971E2BFA03A9E4B847FD3D63524D43A0E8003547B94A8A75E519DF3177D0A60BC0B4BAB1EA59A2CBB4D2D62354E926E9C7D3BE4181E81BA60F8285A896D17DA8C3242481B6C405769A39D547C74ED9FF95A70A796046B5EFF36682DC29
exponent: '03'
checksum: C0D15F6CD957E491DB56DCDD1CA87A03EBE06B7B
- aid: A000000333
index: '03'
expDate: '12312024'
algorithm: '01'
hashAlgorithm: '01'
key: >-
B0627DEE87864F9C18C13B9A1F025448BF13C58380C91F4CEBA9F9BCB214FF8414E9B59D6ABA10F941C7331768F47B2127907D857FA39AAF8CE02045DD01619D689EE731C551159BE7EB2D51A372FF56B556E5CB2FDE36E23073A44CA215D6C26CA68847B388E39520E0026E62294B557D6470440CA0AEFC9438C923AEC9B2098D6D3A1AF5E8B1DE36F4B53040109D89B77CAFAF70C26C601ABDF59EEC0FDC8A99089140CD2E817E335175B03B7AA33D
exponent: '03'
checksum: 87F0CD7C0E86F38F89A66F8C47071A8B88586F26
- aid: A000000333
index: '04'
expDate: '12312032'
algorithm: '01'
hashAlgorithm: '01'
key: >-
BC853E6B5365E89E7EE9317C94B02D0ABB0DBD91C05A224A2554AA29ED9FCB9D86EB9CCBB322A57811F86188AAC7351C72BD9EF196C5A01ACEF7A4EB0D2AD63D9E6AC2E7836547CB1595C68BCBAFD0F6728760F3A7CA7B97301B7E0220184EFC4F653008D93CE098C0D93B45201096D1ADFF4CF1F9FC02AF759DA27CD6DFD6D789B099F16F378B6100334E63F3D35F3251A5EC78693731F5233519CDB380F5AB8C0F02728E91D469ABD0EAE0D93B1CC66CE127B29C7D77441A49D09FCA5D6D9762FC74C31BB506C8BAE3C79AD6C2578775B95956B5370D1D0519E37906B384736233251E8F09AD79DFBE2C6ABFADAC8E4D8624318C27DAF1
exponent: '03'
checksum: F527081CF371DD7E1FD4FA414A665036E0F5E6E5
- aid: A000000780
index: '05'
expDate: '12312030'
algorithm: '01'
hashAlgorithm: '01'
key: >-
95E3D868E014B01210491A6EA00C097D4261AED776930E6D4FCA31C7477E29AEC5B77F7D2F0B6E61B34C876806A71A8FF1EC3E897943BE5524E7A0F7BD23840FF3B1D25C078BC32FE38E57307B413A255E268B795B45CB5B430BEAD8ABFB835F3248AFA34F85DD028DBC77D1EABFA79A2D891806A0B0BC5D25D213188E3E18DB25F45B7942320D1F55D637299334744D5633D954C70E1BAA73C2562F3C142DF9545CE4841653B80D6DD1D88C2F652ABED57551BDCA98C16D77A4139D2F84E5E3633A00DEFB3E865825DB326E6B68DC04B6AE1FAEABB6C867C30E172C94E33FC220C7C7C4342A4356DABE0A5CAB61606B649B5F33B75E35CD
exponent: '03'
checksum: 30AB6C5690B74D7117355AFBA07749B5142B57F2
- aid: A000000768
index: F2
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
9318623777A684FA329C2DC24AA398678DE27CB2C547C6DB6542125409528823D75F42455789C2F7705D8B77EEA7674F923E3D657C0AB8ADF4941ED3AB2877058D30BE31572BF3D570652ED9F3C9E320BA8D96FF000047FEA4582E6BA368D8FF16BE90843657CB7467D4980C9B2ED67333BFBDAE60CAB42D420A34D648816406112186EA397E7155F5EE3858D8CCACA9D11E9D85BC5373FF4B074D3BAC5C3220003B7096614EB1D7FB9216D22D6B7B7695ADDC109A51D0CACFF438A0763F001711B687BAFCD26671FCA21EDD042B1201FCB01D5807C4E94D23CB3D56E3AD16F1F03DB61381FC7F152A391D8A62BCB9D339E12A23A76F9213
exponent: '03'
checksum: D8E9DA9B8461A43F469BBD08CD3A52B0B3AA775F
- aid: A000000768
index: FF
expDate: '12312027'
algorithm: '01'
hashAlgorithm: '01'
key: >-
86EFCDB87055ED668CF037EC4177B05B102C01EBAF0318CA2362698012ECED53CF176A06DE4F8A113CA091E7E9BDA6A715E3D89926895DFC320574D02EFFBFF1B81F158B9896651EFF8CBC548C51E7BD68338F5A11171C4540E194A91D9D36A6C4132D3799DF911F32132A0B5CCC632200EFBE5752DCCF930F2B7AB76B81588894604215B193CBF160C5BAA32C89F450D15CF0E6B866D3AA249960B69B18B9B2575D741BB2089102A96E6A42067EF6BB
exponent: '03'
checksum: E7ABF106A6704AE58CBA4ACA509FD9EC33A147D5
server:
name: TM01CE
responses:
TimeoutResponse:
description: Timeout
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
lighthouse:
type: object
properties:
data:
$ref: '#/components/schemas/LighthouseDataResponse'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
primaryCode: 9951
secondaryCode: 0
shortText: RESPONSE TIMEOUT
longText: Timeout waiting for response across the internet
lighthouse:
data: >-
eyJwYXltZW50SWQiOiI4NWM0MWNhNy01NzVjLTQzNGUtODIyZi0xYzZlOTE0ZDAzODYiLCJyZW1haW5pbmdBbW91bnQiOjB9
server:
name: U2API01CE
ErrorResponse:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
lighthouse:
$ref: '#/components/schemas/LighthouseResponse'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
primaryCode: 9842
secondaryCode: 0
shortText: NOT IN CARDRANGE
longText: Card type not recognized
lighthouse:
data: >-
eyJwYXltZW50SWQiOiI4NWM0MWNhNy01NzVjLTQzNGUtODIyZi0xYzZlOTE0ZDAzODYiLCJyZW1haW5pbmdBbW91bnQiOjB9
server:
name: U2API01CE
CardTokenErrorResponse:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
primaryCode: 9846
secondaryCode: 0
shortText: BAD UNIQUE ID
longText: >-
Unique Identifier(8048471746471119) not found for Merchant
0000057984 ENGINE01CE
server:
name: U2API01CE
TerminalIDErrorResponse:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
primaryCode: 9956
secondaryCode: 0
shortText: TID NO PINPAD
longText: Terminal(100) is not configured for any PinPad DEFAULT
server:
name: U2API01CE
ErrorResponse3DSecure:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
type: object
description: |
Returns the response code from the host
properties:
reasonCode:
$ref: >-
#/components/schemas/HostResponseReasonCode3DSecure
reasonDescription:
$ref: >-
#/components/schemas/HostResponseReasonDescription3DSecure
example:
result:
- dateTime: '2022-05-04T09:20:04.487-07:00'
error:
primaryCode: 9842
secondaryCode: 0
shortText: NOT IN CARDRANGE
longText: Card type not recognized
server:
name: U2API01CE
transaction:
invoice: '730518'
ErrorResponseOCT:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-01-06T09:18:23.283-07:00'
error:
code: 40102
severity: Info
shortText: Invalid Param
longText: Client request missing field
server:
name: TM01CE
TimeoutResponseOCT:
description: Timeout
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-01-06T09:18:23.283-07:00'
error:
code: 64002
severity: Error
shortText: Timed Out
longText: Connection Timeout
server:
name: TM01CE
ErrorResponseACH:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
error:
code: 40102
severity: Info
shortText: Invalid Param
longText: Client request missing field
server:
name: TM01CE
TimeoutResponseACH:
description: Timeout
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
error:
code: 64002
severity: Error
shortText: Timed Out
longText: Connection Timeout
server:
name: TM01CE
ErrorResponseUpdater:
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
code: 40103
severity: Info
shortText: Invalid Param
longText: Client request missing field
server:
name: TM01CE
TimeoutResponseUpdater:
description: Timeout
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2024-01-17T13:35:25.049-07:00'
error:
code: 64002
severity: Error
shortText: Timed Out
longText: Connection Timeout
server:
name: TM01CE
ErrorResponseMagicCube:
description: Error
content:
application/json:
schema:
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
error:
code: 40102
severity: Info
shortText: Invalid Param
longText: Client request missing field
server:
name: TM01CE
TimeoutResponseMagicCube:
description: Timeout
content:
application/json:
schema:
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
error:
$ref: '#/components/schemas/ErrorNoPrimarySecondary'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
error:
code: 64002
severity: Error
shortText: Timed Out
longText: Connection Timeout
server:
name: TM01CE
paths:
/credentials/accesstoken:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Credentials
summary: Access Token Exchange
operationId: accesstokenexchange
security:
- {}
description: >
This function is used to request exchanging a Client GUID and Auth Token
for an Access Token.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- credential
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
credential:
$ref: '#/components/schemas/Credential'
responses:
'200':
description: AccessToken request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
credential:
type: object
properties:
accessToken:
$ref: '#/components/schemas/CredentialAccessToken'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/AuthTokenNotValidError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/authorization:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Transactions
summary: Authorization
operationId: transactionsauthorization
security:
- AccessToken: []
description: >
Used to request processor approval for an authorization. If the invoice
number already exists, the amount requested will be compared to the
approved amount on file, and Shift4 will request approval for the
additional amount only. If approved, an updated transaction will be
displayed in [Lighthouse Transaction
Manager](https://ltm.shift4test.com/). This step does NOT close and
capture the funds, only authorizes the payment request.
*Please note that if you are tokenzing your credit card information
outside of Shift4, authorizing and capturing a payment is not available
unless you store the tokenized value from Shift4 from an authorized
payment request and use this token in the subsequent capture request.*
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/transactions_authorization_comengdevice'
- $ref: '#/components/schemas/transactions_authorization_comengcloud'
- $ref: '#/components/schemas/transactions_authorization_utgdevice'
- $ref: '#/components/schemas/transactions_authorization_token_gtv'
- $ref: '#/components/schemas/transactions_authorization_token_legacy'
- $ref: '#/components/schemas/transactions_authorization_p2pe_idtech'
- $ref: >-
#/components/schemas/transactions_authorization_p2pe_tdesdukpt_emv
- $ref: >-
#/components/schemas/transactions_authorization_p2pe_tdesdukpt_msr
- $ref: >-
#/components/schemas/transactions_authorization_p2pe_onguardsde_emv
- $ref: >-
#/components/schemas/transactions_authorization_p2pe_onguardsde_msr
- $ref: >-
#/components/schemas/transactions_authorization_unencryptedcard
- $ref: '#/components/schemas/transactions_authorization_3dsecurei4Go'
- $ref: >-
#/components/schemas/transactions_authorization_3dsecurecardnumber
- $ref: >-
#/components/schemas/transactions_authorization_3dsecuretoken_gtv
- $ref: >-
#/components/schemas/transactions_authorization_3dsecuretoken_legacy
- $ref: '#/components/schemas/transactions_authorization_applepay'
- $ref: '#/components/schemas/transactions_authorization_googlepay'
- $ref: '#/components/schemas/transactions_authorization_incremental'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
dcc:
$ref: '#/components/schemas/DCCTransactionResponse'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
emv:
$ref: '#/components/schemas/EMVResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
surcharge:
$ref: '#/components/schemas/SurchargeTransactionResponse'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
$ref: '#/components/schemas/HostResponse'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
avs:
$ref: '#/components/schemas/AVS'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
risk:
$ref: '#/components/schemas/RiskResponseDeny'
universalToken:
$ref: '#/components/schemas/UniversalToken'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
payment:
type: object
properties:
accountReference:
$ref: '#/components/schemas/PaymentAccountReference'
examples:
P2PEEMV:
$ref: '#/components/examples/transactionsauthorization_resp_p2peemv'
P2PE:
$ref: '#/components/examples/transactionsauthorization_resp_p2pe'
Token:
$ref: '#/components/examples/transactionsauthorization_resp_token'
Device:
$ref: >-
#/components/examples/transactionsauthorization_resp_utgdevice
Track:
$ref: '#/components/examples/transactionsauthorization_resp_track'
Unenc:
$ref: '#/components/examples/transactionsauthorization_resp_raw'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/capture:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Transactions
summary: Capture
operationId: transactionscapture
security:
- AccessToken: []
description: >
Used to close out an existing authorization request. If the invoice
number already exists, the amount requested will be compared to the
approved amount on file, and Shift4 will request approval for the
additional amount only. If approved, the authorization will be converted
to a sale transaction and be ready to be batched.
For Restaurant industry, review [Restaurant Authorization and Settlement
Flow](/guides/core-concepts/restaurant-authorization-and-settlement-flow)
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
Please note that if you are tokenzing your credit card information
outside of Shift4, authorizing and capturing a payment is not available
unless you store the tokenized value from Shift4 from an authorized
payment request and use this token in the subsequent capture request.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/transactions_capture_token_gtv'
- $ref: '#/components/schemas/transactions_capture_token_legacy'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
levelResult:
$ref: '#/components/schemas/CardLevelResult'
number:
$ref: '#/components/schemas/CardMaskedNumber'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeResp'
balance:
$ref: '#/components/schemas/CardBalance'
token:
$ref: '#/components/schemas/CardToken'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
dcc:
$ref: '#/components/schemas/DCCTransactionResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
hostResponse:
$ref: '#/components/schemas/HostResponse'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
universalToken:
$ref: '#/components/schemas/UniversalToken'
payment:
type: object
properties:
accountReference:
$ref: '#/components/schemas/PaymentAccountReference'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/sale:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Transactions
summary: Sale/Purchase
operationId: transactionssale
security:
- AccessToken: []
description: >
Used to request processor approval for an authorization and capture in
one request. If the invoice number already exists, the amount requested
will be compared to the approved amount on file, and Shift4 will request
approval for the additional amount only. If approved, a new sale
transaction will be displayed in Lighthouse Transaction Manager and be
ready to be batched.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/transactions_sale_comengdevice'
- $ref: '#/components/schemas/transactions_sale_comengcloud'
- $ref: '#/components/schemas/transactions_sale_utgdevice'
- $ref: '#/components/schemas/transactions_sale_token_gtv'
- $ref: '#/components/schemas/transactions_sale_token_legacy'
- $ref: '#/components/schemas/transactions_sale_p2pe_idtech'
- $ref: '#/components/schemas/transactions_sale_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/transactions_sale_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/transactions_sale_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/transactions_sale_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/transactions_sale_unencryptedcard'
- $ref: '#/components/schemas/transactions_sale_3dsecurei4Go'
- $ref: '#/components/schemas/transactions_sale_3dsecurecardnumber'
- $ref: '#/components/schemas/transactions_sale_3dsecuretoken_gtv'
- $ref: '#/components/schemas/transactions_sale_3dsecuretoken_legacy'
- $ref: '#/components/schemas/transactions_sale_applepay'
- $ref: '#/components/schemas/transactions_sale_googlepay'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
dcc:
$ref: '#/components/schemas/DCCTransactionResponse'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
emv:
$ref: '#/components/schemas/EMVResponse'
lighthouse:
type: object
properties:
data:
$ref: '#/components/schemas/LighthouseDataResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
surcharge:
$ref: '#/components/schemas/SurchargeTransactionResponse'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
hostResponse:
$ref: '#/components/schemas/HostResponse'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
avs:
$ref: '#/components/schemas/AVS'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
risk:
$ref: '#/components/schemas/RiskResponseDeny'
universalToken:
$ref: '#/components/schemas/UniversalToken'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
taxFree:
$ref: '#/components/schemas/TaxFree'
payment:
type: object
properties:
accountReference:
$ref: '#/components/schemas/PaymentAccountReference'
examples:
P2PEEMV:
$ref: '#/components/examples/transactionssale_resp_p2peemv'
P2PE:
$ref: '#/components/examples/transactionssale_resp_p2pe'
Token:
$ref: '#/components/examples/transactionssale_resp_token'
Device:
$ref: '#/components/examples/transactionssale_resp_utgdevice'
Track:
$ref: '#/components/examples/transactionssale_resp_track'
Unenc:
$ref: '#/components/examples/transactionssale_resp_raw'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/refund:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Transactions
summary: Refund
operationId: refund
security:
- AccessToken: []
description: >
This function can be used to refund a transaction for either the full or
a partial amount.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/transactions_refund_comengdevice'
- $ref: '#/components/schemas/transactions_refund_comengcloud'
- $ref: '#/components/schemas/transactions_refund_utgdevice'
- $ref: '#/components/schemas/transactions_refund_token_gtv'
- $ref: '#/components/schemas/transactions_refund_token_legacy'
- $ref: '#/components/schemas/transactions_refund_p2pe_idtech'
- $ref: '#/components/schemas/transactions_refund_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/transactions_refund_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/transactions_refund_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/transactions_refund_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/transactions_refund_unencryptedcard'
responses:
'200':
description: Refund was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
properties:
total:
type: number
maxLength: 14
example: 51.32
description: The amount of the refund.
card:
type: object
properties:
entryMode:
$ref: '#/components/schemas/CardEntryMode'
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
levelResult:
$ref: '#/components/schemas/CardLevelResult'
number:
$ref: '#/components/schemas/CardMaskedNumber'
present:
$ref: '#/components/schemas/CardPresent'
type:
$ref: '#/components/schemas/CardTypeResp'
balance:
$ref: '#/components/schemas/CardBalance'
token:
$ref: '#/components/schemas/CardToken'
debitType:
$ref: '#/components/schemas/CardDebitType'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
type: object
$ref: '#/components/schemas/ClerkResponse'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
emv:
$ref: '#/components/schemas/EMVResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
signature:
$ref: '#/components/schemas/Signature'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
hostResponse:
$ref: '#/components/schemas/HostResponse'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
universalToken:
$ref: '#/components/schemas/UniversalToken'
payment:
type: object
properties:
accountReference:
$ref: '#/components/schemas/PaymentAccountReference'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/invoice:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
get:
tags:
- Transactions
summary: Invoice Information
operationId: getinvoice
security:
- AccessToken: []
description: >
Used to request the status (e.g., approved, declined, error, referral,
etc.) for a specific invoice; it is primarily used after a timeout or
error has occurred. Voided or batched and settled invoices will return
an “Invoice Not Found” error. For more information, see the [Timeouts
and Communication
Failures](/guides/response-handling/timeouts-and-communications-failures)
section.
*Note: The GET request does not support a request body. Sending an empty
request body may result in an error.*
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/Invoice'
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/ApiOptions'
- $ref: '#/components/parameters/ReceiptColumns'
- $ref: '#/components/parameters/TokenValue'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
lighthouse:
type: object
properties:
data:
$ref: '#/components/schemas/LighthouseDataResponse'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/InvoiceError'
'504':
$ref: '#/components/responses/TimeoutResponse'
delete:
tags:
- Transactions
summary: Void
operationId: void
security:
- AccessToken: []
description: >
Used to void and reverse an invoice. This will attempt to reverse the
transaction with the processor and will mark the transaction as voided
in Shift4's Gateway.
*Note: The DELETE request does not support a request body. Sending an
empty request body may result in an error.*
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/Invoice'
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/ReceiptColumns'
- $ref: '#/components/parameters/ReversalReason'
- $ref: '#/components/parameters/TokenValue'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotal'
card:
$ref: '#/components/schemas/CardResponseVoid'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
hostResponse:
$ref: '#/components/schemas/HostResponse'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
deferredAuth:
$ref: '#/components/schemas/TransactionDeferredAuth'
payment:
type: object
properties:
accountReference:
$ref: '#/components/schemas/PaymentAccountReference'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
lighthouse:
type: object
properties:
data:
$ref: '#/components/schemas/LighthouseDataResponse'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/InvoiceError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/manualauthorization:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Transactions
summary: Manual Authorization
operationId: manualauthorization
security:
- AccessToken: []
description: >
This function is used to request authorization in an offline scenario,
which means that Shift4 will not seek processor approval. An
authorization code should be included in this request if the amount
being submitted in the request is greater than the authorization amount
currently on file.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: >-
#/components/schemas/transactions_manualauthorization_comengdevice
- $ref: >-
#/components/schemas/transactions_manualauthorization_comengcloud
- $ref: >-
#/components/schemas/transactions_manualauthorization_utgdevice
- $ref: >-
#/components/schemas/transactions_manualauthorization_token_gtv
- $ref: >-
#/components/schemas/transactions_manualauthorization_token_legacy
- $ref: >-
#/components/schemas/transactions_manualauthorization_p2pe_idtech
- $ref: >-
#/components/schemas/transactions_manualauthorization_p2pe_tdesdukpt_emv
- $ref: >-
#/components/schemas/transactions_manualauthorization_p2pe_tdesdukpt_msr
- $ref: >-
#/components/schemas/transactions_manualauthorization_p2pe_onguardsde_emv
- $ref: >-
#/components/schemas/transactions_manualauthorization_p2pe_onguardsde_msr
- $ref: >-
#/components/schemas/transactions_manualauthorization_unencryptedcard
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
emv:
$ref: '#/components/schemas/EMV'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
avs:
$ref: '#/components/schemas/AVS'
universalToken:
$ref: '#/components/schemas/UniversalToken'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/manualsale:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Transactions
summary: Manual Sale
operationId: manualsale
security:
- AccessToken: []
description: >
This function is used to request authorization and a sale in an offline
scenario, which means that Shift4 will not seek processor approval. An
authorization code should be included in this request if the amount
being submitted in the request is greater than the authorization amount
currently on file.
For Restaurant industry, review [Restaurant Authorization and Settlement
Flow](/guides/core-concepts/restaurant-authorization-and-settlement-flow)
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/transactions_manualsale_comengdevice'
- $ref: '#/components/schemas/transactions_manualsale_comengcloud'
- $ref: '#/components/schemas/transactions_manualsale_utgdevice'
- $ref: '#/components/schemas/transactions_manualsale_token_gtv'
- $ref: '#/components/schemas/transactions_manualsale_token_legacy'
- $ref: '#/components/schemas/transactions_manualsale_p2pe_idtech'
- $ref: >-
#/components/schemas/transactions_manualsale_p2pe_tdesdukpt_emv
- $ref: >-
#/components/schemas/transactions_manualsale_p2pe_tdesdukpt_msr
- $ref: >-
#/components/schemas/transactions_manualsale_p2pe_onguardsde_emv
- $ref: >-
#/components/schemas/transactions_manualsale_p2pe_onguardsde_msr
- $ref: '#/components/schemas/transactions_manualsale_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
emv:
$ref: '#/components/schemas/EMV'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
avs:
$ref: '#/components/schemas/AVS'
universalToken:
$ref: '#/components/schemas/UniversalToken'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/transactions/signature:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Transactions
summary: Upload Signature
operationId: transactionssignature
security:
- AccessToken: []
description: >
This function is used to upload the captured signature to an existing
invoice in Shift4's Gateway.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- transaction
- signature
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
device:
type: object
properties:
manufacturer:
$ref: '#/components/schemas/DeviceManufacturer'
model:
$ref: '#/components/schemas/DeviceModel'
serialNumber:
$ref: '#/components/schemas/DeviceSerialNumber'
capability:
$ref: '#/components/schemas/DeviceCapability'
merchant:
$ref: '#/components/schemas/MerchantResponse'
signature:
type: object
required:
- format
- data
properties:
data:
$ref: '#/components/schemas/SignatureData'
format:
$ref: '#/components/schemas/SignatureFormat'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
lighthouse:
type: object
properties:
data:
$ref: '#/components/schemas/LighthouseDataResponse'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/InvoiceError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/tokens/add:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Tokens
summary: TokenStore Add
operationId: tokensadd
security:
- AccessToken: []
description: >
This function requests that CHD be added to the Global Token Vault and
that a card token be returned for future use. This function cannot be
used for EMV processing.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/tokens_add_comengdevice'
- $ref: '#/components/schemas/tokens_add_comengcloud'
- $ref: '#/components/schemas/tokens_add_utgdevice'
- $ref: '#/components/schemas/tokens_add_p2pe_idtech'
- $ref: '#/components/schemas/tokens_add_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/tokens_add_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/tokens_add_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/tokens_add_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/tokens_add_p2pe_aes_mce'
- $ref: '#/components/schemas/tokens_add_unencryptedcard'
- $ref: '#/components/schemas/tokens_add_ach'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/tokens_add_response_card'
- $ref: '#/components/schemas/tokens_add_response_ach'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/tokens/duplicate:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Tokens
summary: TokenStore Duplicate
operationId: tokensduplicate
security:
- AccessToken: []
description: >
This function requests that a new card token be generated using an
existing card token. This request can be used to deposit a card token
into a Global TokenStore or as a means to continue using a token that is
about to expire. The card’s short-term data (if sent by the interface)
will be stored until it is used or for the period configured in the
merchant’s [Lighthouse Transaction Manager](https://ltm.shift4test.com/)
account.
**Note: This request only works for Legacy TrueToken style tokens. It
will not work for Global Token Vault style tokens.**
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
card:
type: object
required:
- token
properties:
token:
type: object
required:
- value
properties:
serialNumber:
$ref: '#/components/schemas/CardTokenSerialNumber'
value:
$ref: '#/components/schemas/CardTokenValue'
customer:
$ref: '#/components/schemas/Customer'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
serialNumber: '266'
value: 1119eqetd26hfne4
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
number:
$ref: '#/components/schemas/CardMaskedNumber'
type:
$ref: '#/components/schemas/CardTypeResp'
token:
$ref: '#/components/schemas/CardToken'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2022-05-10T06:34:25.049-07:00'
card:
expirationDate: 1230
number: XXXXXXXXXXXX1119
type: VS
token:
value: 1119djw7fh2jwo4r
merchant:
mid: 15877
name: Merchant XYZ
server:
name: TM01CE
universalToken:
value: 97032276-5944-00000001-16985FD179D
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/tokens/delete:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Tokens
summary: TokenStore Delete
operationId: tokensdelete
security:
- AccessToken: []
description: >
This function requests that a token be deleted from the TrueToken vault.
This process is irreversible. Once the token is deleted, there is no way
to recover it.
**Note: This request only works for Legacy TrueToken style tokens. It
will not work for Global Token Vault style tokens.**
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
type: object
required:
- value
properties:
value:
$ref: '#/components/schemas/CardTokenValue'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: 1119eqetd26hfne4
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
properties:
token:
$ref: '#/components/schemas/CardToken'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2022-05-10T06:34:25.049-07:00'
card:
token:
value: 1119eqetd26hfne4
merchant:
mid: 15877
name: Merchant XYZ
server:
name: TM01CE
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/tokens/universaltoken:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
get:
tags:
- Tokens
summary: Universal Token
operationId: tokensuniversaltoken
security:
- AccessToken: []
description: >
This function requests that the existing universal token for a card be
returned.
*Note: The GET request does not support a request body. Sending an empty
request body may result in an error.*
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/CardNumber'
- $ref: '#/components/parameters/P2PEData'
- $ref: '#/components/parameters/P2PEFormat'
- $ref: '#/components/parameters/P2PEKsn'
- $ref: '#/components/parameters/TokenSerialNumber'
- $ref: '#/components/parameters/TokenValue'
- $ref: '#/components/parameters/TrackData'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
universalToken:
$ref: '#/components/schemas/UniversalToken'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/tokens/4words:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Tokens
summary: Get Four Words
operationId: tokens4words
security:
- AccessToken: []
description: >
This function is used to generate a unique combination of four words
that can be used to reference cardholder data (CHD).
**Note: This functionality is supported with Legacy TrueTokens only. It
is not supported with GTV tokens.**
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- card
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
required:
- token
properties:
token:
$ref: '#/components/schemas/CardToken'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
card:
token:
value: '8048471746471119'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
$ref: '#/components/schemas/CardResponseFourWords'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/merchants/merchant:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
get:
tags:
- Merchants
summary: Merchant Information
operationId: merchantsmerchant
security:
- AccessToken: []
description: >
Used to request information about the merchant.
*Note: The GET request does not support a request body. Sending an empty
request body may result in an error.*
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/ApiOptionsGetMerchant'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
oneOf:
- title: Default
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
type: object
readOnly: true
properties:
addressLine1:
$ref: '#/components/schemas/MerchantAddressLine1'
addressLine2:
$ref: '#/components/schemas/MerchantAddressLine2'
city:
$ref: '#/components/schemas/MerchantCity'
dayEndingTime:
$ref: '#/components/schemas/MerchantDayEndingTime'
defaultCurrency:
$ref: '#/components/schemas/MerchantDefaultCurrency'
supportedCurrencies:
$ref: >-
#/components/schemas/MerchantSupportedCurrencies
industry:
$ref: '#/components/schemas/MerchantIndustry'
mid:
$ref: '#/components/schemas/MerchantMID'
name:
$ref: '#/components/schemas/MerchantName'
region:
$ref: '#/components/schemas/MerchantRegion'
phone:
$ref: '#/components/schemas/MerchantPhone'
postalCode:
$ref: '#/components/schemas/MerchantPostalCode'
serialNumber:
$ref: '#/components/schemas/MerchantSerialNumber'
cardTypes:
$ref: '#/components/schemas/MerchantCardTypesArray'
dcc:
$ref: '#/components/schemas/MerchantDCCObject'
gtv:
$ref: '#/components/schemas/MerchantGTVObject'
surcharge:
$ref: '#/components/schemas/MerchantSurchargeObject'
autoClose:
$ref: '#/components/schemas/MerchantAutoCloseObject'
server:
$ref: '#/components/schemas/Server'
- title: RETURNPROCESSORS
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
type: object
readOnly: true
properties:
addressLine1:
$ref: '#/components/schemas/MerchantAddressLine1'
addressLine2:
$ref: '#/components/schemas/MerchantAddressLine2'
city:
$ref: '#/components/schemas/MerchantCity'
dayEndingTime:
$ref: '#/components/schemas/MerchantDayEndingTime'
defaultCurrency:
$ref: '#/components/schemas/MerchantDefaultCurrency'
supportedCurrencies:
$ref: >-
#/components/schemas/MerchantSupportedCurrencies
industry:
$ref: '#/components/schemas/MerchantIndustry'
mid:
$ref: '#/components/schemas/MerchantMID'
name:
$ref: '#/components/schemas/MerchantName'
region:
$ref: '#/components/schemas/MerchantRegion'
phone:
$ref: '#/components/schemas/MerchantPhone'
postalCode:
$ref: '#/components/schemas/MerchantPostalCode'
serialNumber:
$ref: '#/components/schemas/MerchantSerialNumber'
cardTypes:
$ref: >-
#/components/schemas/MerchantCardTypesReturnProcessorsArray
dcc:
$ref: '#/components/schemas/MerchantDCCObject'
gtv:
$ref: '#/components/schemas/MerchantGTVObject'
surcharge:
$ref: '#/components/schemas/MerchantSurchargeObject'
autoClose:
$ref: '#/components/schemas/MerchantAutoCloseObject'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/AccessTokenNotFoundError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/activate:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Activate
operationId: activate
security:
- AccessToken: []
description: >
This function requests that a new gift card be activated for use or that
a new gift card be loaded with funds.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_activate_comengdevice'
- $ref: '#/components/schemas/giftcards_activate_comengcloud'
- $ref: '#/components/schemas/giftcards_activate_utgdevice'
- $ref: '#/components/schemas/giftcards_activate_token_gtv'
- $ref: '#/components/schemas/giftcards_activate_token_legacy'
- $ref: '#/components/schemas/giftcards_activate_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_activate_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/giftcards_activate_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/giftcards_activate_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGCResponse'
card:
$ref: '#/components/schemas/CardResponseGC'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 20
card:
number: XXXXXXXXXXXX1333
balance:
amount: 20
token:
value: '8058471748050009'
type: YC
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: UTGAPI01CE
transaction:
authSource: E
invoice: '192030'
responseCode: A
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/GiftCardActivateError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/allocate:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Gift Cards
summary: Allocate
operationId: allocate
security:
- AccessToken: []
description: >
This function requests that a new gift card be allocated for use under a
specific Program ID. The new card will be generated during the request
and activated with the requested amount.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- amount
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGC'
programId:
$ref: '#/components/schemas/ProgramId'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 25
programId: '95'
transaction:
invoice: '192029'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGCResponse'
card:
type: object
properties:
number:
type: string
maxLength: 32
description: >
The gift card number that was created during the
gift card allocate request.
type:
$ref: '#/components/schemas/CardTypeGCResp'
balance:
$ref: '#/components/schemas/CardBalance'
merchant:
$ref: '#/components/schemas/MerchantResponse'
programId:
$ref: '#/components/schemas/ProgramId'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 20
card:
number: '1000083000004141494'
type: GC
balance:
amount: 20
merchant:
mid: 15877
name: Merchant XYZ
programId: '95'
server:
name: UTGAPI01CE
transaction:
invoice: '192029'
responseCode: A
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
longText: 'ALLOCATE Failed: Need sample error'
primaryCode: 9101
secondaryCode: 0
shortText: ALLOCATE FAILED
server:
name: U2API01CE
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/deactivate:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Deactivate
operationId: deactivate
security:
- AccessToken: []
description: >
This function requests that an active gift card be deactivated so that
it can’t be used to process transactions. A balance will remain on the
gift card (if supported by the processor). If you want to return the
card's current balance back to the customer, use the
[Cashout](/apis/payments-platform-rest/openapi/gift-cards/cashout)
endpoint instead.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_deactivate_comengdevice'
- $ref: '#/components/schemas/giftcards_deactivate_comengcloud'
- $ref: '#/components/schemas/giftcards_deactivate_utgdevice'
- $ref: '#/components/schemas/giftcards_deactivate_token_gtv'
- $ref: '#/components/schemas/giftcards_deactivate_token_legacy'
- $ref: '#/components/schemas/giftcards_deactivate_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_deactivate_p2pe_tdesdukpt_msr'
- $ref: >-
#/components/schemas/giftcards_deactivate_p2pe_onguardsde_msr
- $ref: '#/components/schemas/giftcards_deactivate_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
$ref: '#/components/schemas/CardResponseDeact'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
card:
entryMode: '1'
number: XXXXXXXXXXXX1333
present: 'Y'
deactivationReason: lost or stolen
balance:
amount: 20
token:
value: 0009hfqbt8b396x1
type: YC
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: UTGAPI01CE
transaction:
authSource: E
invoice: '192032'
responseCode: A
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/cashout:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
deprecated: true
tags:
- Gift Cards
summary: Cashout
operationId: cashout
security:
- AccessToken: []
description: >
This function requests that an active gift card be deactivated so that
it can’t be used to process transactions. Any current balance is
removed from the card so that the funds can be returned to the consumer
as cash.
**This endpoint has been deprecated and should no longer be used. It has
been replaced by the [Gift Card
Cashback](/apis/payments-platform-rest/openapi/gift-cards/cashback)
endpoint.**
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_cashout_comengdevice'
- $ref: '#/components/schemas/giftcards_cashout_comengcloud'
- $ref: '#/components/schemas/giftcards_cashout_utgdevice'
- $ref: '#/components/schemas/giftcards_cashout_token_gtv'
- $ref: '#/components/schemas/giftcards_cashout_token_legacy'
- $ref: '#/components/schemas/giftcards_cashout_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_cashout_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/giftcards_cashout_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/giftcards_cashout_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGCResponse'
card:
$ref: '#/components/schemas/CardResponseCashout'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 20
card:
entryMode: '1'
number: XXXXXXXXXXXX1333
present: 'Y'
deactivationReason: lost or stolen
token:
value: 0009hfqbt8b396x1
type: YC
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: UTGAPI01CE
transaction:
authSource: E
invoice: '192034'
responseCode: A
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/cashback:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Cashback
operationId: cashback
security:
- AccessToken: []
description: >
This function requests that an active gift card be deactivated so that
it can’t be used to process transactions. Any current balance is
removed from the card so that the funds can be returned to the consumer
as cash.
**This endpoint replaces the [Gift Card
Cashout](/apis/payments-platform-rest/openapi/gift-cards/cashout)
endpoint.**
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_cashout_comengdevice'
- $ref: '#/components/schemas/giftcards_cashout_comengcloud'
- $ref: '#/components/schemas/giftcards_cashout_utgdevice'
- $ref: '#/components/schemas/giftcards_cashout_token_gtv'
- $ref: '#/components/schemas/giftcards_cashout_token_legacy'
- $ref: '#/components/schemas/giftcards_cashout_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_cashout_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/giftcards_cashout_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/giftcards_cashout_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGCResponse'
card:
$ref: '#/components/schemas/CardResponseCashout'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 20
card:
entryMode: '1'
number: XXXXXXXXXXXX1333
present: 'Y'
deactivationReason: lost or stolen
token:
value: 0009hfqbt8b396x1
type: YC
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: UTGAPI01CE
transaction:
authSource: E
invoice: '192034'
responseCode: A
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/reactivate:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Reactivate
operationId: reactivate
security:
- AccessToken: []
description: >
This function requests that a previously deactivated gift card be
reactivated. If there was a balance remaining on the gift card at the
time of deactivation, the balance will again become available for use.
Funds cannot be added to a gift card during a Reactivate request.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_reactivate_comengdevice'
- $ref: '#/components/schemas/giftcards_reactivate_comengcloud'
- $ref: '#/components/schemas/giftcards_reactivate_utgdevice'
- $ref: '#/components/schemas/giftcards_reactivate_token_gtv'
- $ref: '#/components/schemas/giftcards_reactivate_token_legacy'
- $ref: '#/components/schemas/giftcards_reactivate_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_reactivate_p2pe_tdesdukpt_msr'
- $ref: >-
#/components/schemas/giftcards_reactivate_p2pe_onguardsde_msr
- $ref: '#/components/schemas/giftcards_reactivate_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
$ref: '#/components/schemas/CardResponseGC'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
card:
number: XXXXXXXXXXXX1333
balance:
amount: 30
token:
value: 0009hfqbt8b396x1
type: YC
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: UTGAPI01CE
transaction:
authSource: E
invoice: '192033'
responseCode: A
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/reload:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Reload
operationId: reload
security:
- AccessToken: []
description: >
This function requests that an active gift card be loaded with
additional funds.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_reload_comengdevice'
- $ref: '#/components/schemas/giftcards_reload_comengcloud'
- $ref: '#/components/schemas/giftcards_reload_utgdevice'
- $ref: '#/components/schemas/giftcards_reload_token_gtv'
- $ref: '#/components/schemas/giftcards_reload_token_legacy'
- $ref: '#/components/schemas/giftcards_reload_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_reload_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/giftcards_reload_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/giftcards_reload_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGCResponse'
card:
$ref: '#/components/schemas/CardResponseGC'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 20
card:
number: XXXXXXXXXXXX1333
balance:
amount: 30
token:
value: 0009hfqbt8b396x1
type: YC
device:
terminalId: '1742'
merchant:
mid: 15877
name: Merchant XYZ
server:
name: UTGAPI01CE
transaction:
authSource: E
invoice: '192031'
responseCode: A
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/balance:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Balance
operationId: balance
security:
- AccessToken: []
description: >
This function requests that a gift card's balance, masked card number,
expiration date, and discount percentage be returned. Merchants may be
required to pay a fee for an inquiry request depending on their
processor agreement.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_balance_comengdevice'
- $ref: '#/components/schemas/giftcards_balance_comengcloud'
- $ref: '#/components/schemas/giftcards_balance_utgdevice'
- $ref: '#/components/schemas/giftcards_balance_token_gtv'
- $ref: '#/components/schemas/giftcards_balance_token_legacy'
- $ref: '#/components/schemas/giftcards_balance_p2pe_idtech'
- $ref: '#/components/schemas/giftcards_balance_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/giftcards_balance_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/giftcards_balance_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
$ref: '#/components/schemas/CardResponseDeact'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
history:
type: array
description: |
Returned if `RETURNHIST` is sent in `apiOptions`.
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
transactionType:
type: string
enum:
- Sale
- Activate
- Allocate
- Deactivate
- Cashback
- Reactivate
- Reload
- Balance
- Cancel
description: |
The gift card transaction type
examples:
Active:
summary: Active Card
value:
result:
- dateTime: '2019-04-15T16:10:44.000-07:00'
card:
balance:
amount: 20
entryMode: M
number: XXXXXXXXXXXX1333
token:
value: 1333jd4nmj9p787m
type: YC
merchant:
mid: 15877
name: Merchant XYZ
server:
name: U2API01CE
transaction:
authSource: E
invoice: '6241932450'
responseCode: A
history:
- dateTime: '2019-04-12T08:13:23.000-07:00'
amount:
total: 80
transactionType: Sale
- dateTime: '2019-03-12T08:10:44.000-07:00'
amount:
total: 100
transactionType: Activate
Inactive:
summary: Inactive Card
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
card:
balance:
amount: 24.33
deactivationReason: lost or stolen
entryMode: M
number: XXXXXXXXXXXX8774
present: 'Y'
token:
value: 87743q5p3ffhv67y
type: YC
merchant:
mid: 15877
name: Merchant XYZ
server:
name: U2API01CE
transaction:
authSource: E
invoice: '192029'
responseCode: A
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/giftcards/cancel:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Gift Cards
summary: Cancel
operationId: cancel
security:
- AccessToken: []
description: >
This function attempts to undo the last /giftcards/* request that was
made against a gift card or private label card. For example, an Activate
or Reload request may eligible for cancellation. Some processors do not
support this functionality. This endpoint cannot be used to cancel a
sale or authorization against a gift card - the Void request should be
used for that scenario.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/giftcards_cancel_token_gtv'
- $ref: '#/components/schemas/giftcards_cancel_token_legacy'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountGCResponse'
card:
$ref: '#/components/schemas/CardResponseGC'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/CardTokenErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/cards/verify:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
post:
tags:
- Cards
summary: Verify Card with Processor
operationId: cardsverify
security:
- AccessToken: []
description: >
This function is used to request card validation by going online to
verify the card information with the processor. If Address Verification
System (AVS) and/or Card Security Code (CSC) data are sent in the
request, that information will also be validated.
To process an Account Name Inquiry request the `USEANI` API Option and
`customer.lastName` must be sent in the request. `customer.firstName`
and `customer.middleName` are optional. Account Name Inquiry requests
are currently limited to Visa cards.
**Integration Methods:**
- Host Direct
- Commerce Engine For On Premise
- Commerce Engine For Cloud
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/cards_verify_comengdevice'
- $ref: '#/components/schemas/cards_verify_comengcloud'
- $ref: '#/components/schemas/cards_verify_utgdevice'
- $ref: '#/components/schemas/cards_verify_token_gtv'
- $ref: '#/components/schemas/cards_verify_token_legacy'
- $ref: '#/components/schemas/cards_verify_p2pe_idtech'
- $ref: '#/components/schemas/cards_verify_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/cards_verify_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/cards_verify_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/cards_verify_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/cards_verify_unencryptedcard'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
customer:
$ref: '#/components/schemas/Customer'
card:
type: object
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
number:
$ref: '#/components/schemas/CardMaskedNumber'
type:
$ref: '#/components/schemas/CardTypeResp'
securityCode:
$ref: '#/components/schemas/CardSecurityCode'
token:
$ref: '#/components/schemas/CardTokenResponse'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCodeCardsVerify
avs:
$ref: '#/components/schemas/AVS'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
server:
$ref: '#/components/schemas/Server'
accountNameInquiry:
$ref: '#/components/schemas/AccountNameInquiryResponse'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/cards/identify:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
post:
tags:
- Cards
summary: Identify Card Type
operationId: cardsidentify
security:
- AccessToken: []
description: >
This function is used to request and return the card type.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/cards_identify_utgdevice'
- $ref: '#/components/schemas/cards_identify_token_gtv'
- $ref: '#/components/schemas/cards_identify_token_legacy'
- $ref: '#/components/schemas/cards_identify_p2pe_idtech'
- $ref: '#/components/schemas/cards_identify_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/cards_identify_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/cards_identify_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/cards_identify_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/cards_identify_unencryptedcard'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
$ref: '#/components/schemas/CardResponseIdentify'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/promptsignature:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Devices
summary: Request Signature
operationId: devicessignatures
security:
- AccessToken: []
description: >
This function is used to request a prompt for signature on a UTG or
Commerce Engine controlled PIN pad and returns the signature.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_promptsignature_comengdevice'
- $ref: '#/components/schemas/devices_promptsignature_comengcloud'
- $ref: '#/components/schemas/devices_promptsignature_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/promptconfirmation:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Prompt Confirmation
operationId: devicespromptconfirmation
security:
- AccessToken: []
description: >
This function is used to display text for a consumer’s confirmation on a
UTG-controlled PIN pad.
**Integration Methods:**
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
promptConfirmation:
$ref: '#/components/schemas/DevicePromptConfirmation'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptConfirmation:
$ref: '#/components/schemas/DevicePromptConfirmation'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/termsandconditions:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Prompt Terms and Conditions
operationId: devicestermsandconditions
security:
- AccessToken: []
description: >
This function is used to display terms and conditions for a consumer to
accept or decline on a Commerce Engine or UTG-controlled PIN pad.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_termsandconditions_comengdevice'
- $ref: '#/components/schemas/devices_termsandconditions_comengcloud'
- $ref: '#/components/schemas/devices_termsandconditions_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptTermsAndConditions:
$ref: >-
#/components/schemas/DevicePromptTermsAndConditions
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/lineitems:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Display Line Items
operationId: deviceslineitems
security:
- AccessToken: []
description: >
This function is used to display up to 10 line items on a UTG-controlled
PIN pad. In additional Display Line Items requests, if the API Option
APPENDLINEITEM is sent, the UTG will append the new line item(s) to the
existing line item(s) displayed.
**Integration Methods:**
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
apiOptions:
$ref: '#/components/schemas/ApiOptions'
device:
type: object
required:
- terminalId
- lineItems
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
lineItems:
$ref: '#/components/schemas/DeviceLineItemsArray'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
device:
lineItems:
- Hamburger
- Fries
- Soda
- Cookie
terminalId: '1742'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
delete:
tags:
- Devices
summary: Clear Line Items
operationId: devicesdeletelineitems
security:
- AccessToken: []
description: >
This function is used to clear the line items displayed on a
UTG-controlled PIN pad.
*Note: The DELETE request does not support a request body. Sending an
empty request body may result in an error.*
**Integration Methods:**
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/TerminalID'
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/info:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
get:
tags:
- Devices
summary: Device Information
operationId: devicesinfo
security:
- AccessToken: []
description: >
This function is used to request information regarding the status of a
specific Commerce Engine or UTG-controlled PIN pad. Depending on the
type of device in use, this request may return a variety of device
information in the response, including the types of encryption keys
injected on the device.
*Note: The GET request does not support a request body. Sending an empty
request body may result in an error.*
**Integration Methods:**
- Commerce Engine For On Premise
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/TerminalIDDevicesInfo'
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_info_comeng'
- $ref: '#/components/schemas/devices_info_utgingenico'
- $ref: '#/components/schemas/devices_info_utgverifone'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/initializereaders:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Initialize Readers
operationId: devicesinitializereaders
security:
- AccessToken: []
description: >
This function is used to request a card swipe, insert, tap (if
applicable), etc. on a UTG-controlled PIN pad before an
[Authorization](/apis/payments-platform-rest/openapi/transactions/transactionsauthorization)
or
[Sale/Purchase](/apis/payments-platform-rest/openapi/transactions/transactionssale)
request.
**Integration Methods:**
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- device
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
required:
- terminalId
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalIdRequired'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/reset:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Reset Device
operationId: devicesreset
security:
- AccessToken: []
description: >
This function is used to reset a Commerce Engine or UTG-controlled PIN
pad to idle. When there is pending consumer input (e.g., waiting for the
consumer to confirm the amount, swipe their card, select credit or
debit, etc.), sending this request will cancel the request.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_reset_comengdevice'
- $ref: '#/components/schemas/devices_reset_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/promptcardread:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Prompt Card Read
operationId: devicespromptcardread
security:
- AccessToken: []
description: >
This function is used to prompt a P2PE-enabled, Commerce Engine or UTG
controlled PIN pad to request a pass-through card swipe, causing the
output of the swipe to be returned directly to the interface without any
action or validation by Shift4 or the processor.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_promptcardread_comengdevice'
- $ref: '#/components/schemas/devices_promptcardread_comengcloud'
- $ref: '#/components/schemas/devices_promptcardread_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
oneOf:
- title: Unencrypted Gift, Loyalty, or Employee Badge Data
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
properties:
entryMode:
$ref: >-
#/components/schemas/CardEntryModeResponseTrackOnly
expirationDate:
type: integer
minLength: 3
maxLength: 4
format: MMYY
description: >
Card expiration date in MMYY format. This
will only be returned for non-card brand
cards such as gift cards and employee badge
cards.
This field will not be returned if the swipe
data received is in a non-standard format.
number:
type: string
maxLength: 32
description: >
The unencrypted card number. This will only
be returned for non-card brand cards such as
gift cards and employee badge cards.
This field will not be returned if the swipe
data received is in a non-standard format.
trackData:
type: string
description: >
The raw track data read from the card swipe.
This can contain track 1 data, track 2 data,
or both. This will only be returned for
non-card brand cards such as gift cards and
employee badge cards.
server:
$ref: '#/components/schemas/Server'
- title: Encrypted Card Brand Data
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
card:
type: object
properties:
entryMode:
$ref: >-
#/components/schemas/CardEntryModeResponseTrackOnly
number:
$ref: '#/components/schemas/CardMaskedNumber'
type:
$ref: '#/components/schemas/CardTypeResp'
p2pe:
$ref: '#/components/schemas/P2PE'
server:
$ref: '#/components/schemas/Server'
examples:
unencryptedgiftcard:
summary: Unencrypted Gift Card
value:
result:
- dateTime: '2024-05-21T09:18:23.283-07:00'
card:
entryMode: '2'
expirationDate: 643
number: '0001366477393106'
trackData: ;0001366477393106=430692960042575?
server:
name: Commerce Engine K
unencryptedemployeecard:
summary: Unencrypted Employee Badge Data Card
value:
result:
- dateTime: '2024-05-21T09:18:23.283-07:00'
card:
entryMode: '2'
trackData: ;:<>4114952129?
server:
name: Commerce Engine K
encryptedcard:
summary: Encrypted Card Brand Data
value:
result:
- dateTime: '2024-05-21T09:18:23.283-07:00'
card:
entryMode: '1'
number: XXXXXXXXXXXX6186
type: NS
p2pe:
data: >-
a%B369989****6186^DC/TRACK1
ONLY^2212101**************************??b?c;FFFF49003614954000BB:1:0072:8B997BF3896636D43593897B86C58A4C7B684B69C5DC150FF53882A15C34C3FCBCEBCFEA0FA68FAC3F0148431B3C6470514A20A5104AF853BDF4D1BD8EBD0E9FAB493176BD2614DC
format: '03'
server:
name: U2API01CE
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/promptinput:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Prompt for Input
operationId: devicespromptinput
security:
- AccessToken: []
description: >
This function is used to prompt a Commerce Engine or UTG-controlled PIN
pad to collect a specified value from a consumer. The interface will
specify the value based on the `device.promptInput.index` field. Each
request will collect one specified value; when multiple values need to
be collected, separate requests must be sent.
**Integration Methods:**
- Commerce Engine For On Premise
- Commerce Engine For Cloud
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_promptinput_comengdevice'
- $ref: '#/components/schemas/devices_promptinput_comengcloud'
- $ref: '#/components/schemas/devices_promptinput_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
type: object
properties:
terminalId:
$ref: '#/components/schemas/DeviceTerminalId'
promptInput:
$ref: '#/components/schemas/DevicePromptInput'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/processform:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Display Custom Form
operationId: devicesprocessform
security:
- AccessToken: []
description: >
This function is used to display a custom form and text for a consumer’s
input on a Commerce Engine or UTG controlled PIN pad.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_processform_comengdevice'
- $ref: '#/components/schemas/devices_processform_comengcloud'
- $ref: '#/components/schemas/devices_processform_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_processform_response_utg'
- $ref: >-
#/components/schemas/devices_processform_response_comeng_message
- $ref: >-
#/components/schemas/devices_processform_response_comeng_multiButtonScrollingText
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/print:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- Devices
summary: Print Receipts
operationId: devicesprint
security:
- AccessToken: []
description: >
This function is used to print a receipt using a device’s built-in
printer. The receipt may include a scannable bar code.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
- Commerce Engine For Cloud
Commerce Engine for On Premise and Commerce Engine For Cloud support
both the legacy printing format for backwards compability with UTG
integrations as well as a new structured printing format. With the new
structured printing format you can format an entire receipt as a bmp
image including text, QR codes, and images. In future Commerce Engine
releases we will be enhancing the structured format to support handling
text and bar codes.
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_print_comengdevice_structured'
- $ref: '#/components/schemas/devices_print_comengcloud_structured'
- $ref: '#/components/schemas/devices_print_comengdevice_legacy'
- $ref: '#/components/schemas/devices_print_comengcloud_legacy'
- $ref: '#/components/schemas/devices_print_utgdevice'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
device:
$ref: '#/components/schemas/DeviceOnlyTIDResponse'
server:
$ref: '#/components/schemas/Server'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/getstatus:
servers:
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Devices
summary: Get Device Status
operationId: devicesgetstatus
security:
- AccessToken: []
description: >
This function is used to get the status of the device.
**Integration Methods:**
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_getstatus_comengdevice'
- $ref: '#/components/schemas/devices_getstatus_comengcloud'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
cloudRegistered:
$ref: '#/components/schemas/CloudRegistered'
cloudConnected:
$ref: '#/components/schemas/CloudConnected'
offlineMode:
$ref: '#/components/schemas/OfflineMode'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/devices/prompttip:
servers:
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
- url: https://api.shift4test.com/api/rest/v1
description: Commerce Engine For Cloud Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Commerce Engine For Cloud Production URL
post:
tags:
- Devices
summary: Prompt Tip
operationId: devicesprompttip
security:
- AccessToken: []
description: >
This function is used to prompt for tip outside of a payment
transaction.
**Integration Methods:**
- Commerce Engine For On Premise
- Commerce Engine For Cloud
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/devices_prompttip_comengdevice'
- $ref: '#/components/schemas/devices_prompttip_comengcloud'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
properties:
tip:
$ref: '#/components/schemas/AmountTipResponse'
total:
$ref: '#/components/schemas/AmountTotal'
tip:
type: object
properties:
selectedOption:
$ref: '#/components/schemas/TipSelectedOption'
server:
$ref: '#/components/schemas/ServerComEng'
'400':
$ref: '#/components/responses/TerminalIDErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/reports/batchtotals:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
get:
tags:
- Reports
summary: Totals Report
operationId: reportsbatchtotals
security:
- AccessToken: []
description: >
This function is used to request a simple totals report for automated
analysis. It does not supersede the standard auditing and reporting
tools that are included with Shift4’ products.
*Note: The GET request does not support a request body. Sending an empty
request body may result in an error.*
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/BusinessDateTotals'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/Inclusive'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
batch:
$ref: '#/components/schemas/BatchResponseNoProcessors'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/AccessTokenNotFoundError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/batches/submit:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- Batches
summary: Submit Batch
operationId: batchessubmit
security:
- AccessToken: []
description: >
This function is used to close a batch.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- transaction
- batch
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
transaction:
type: object
required:
- businessDate
properties:
businessDate:
$ref: '#/components/schemas/SubmitBatchBusinessDate'
batch:
$ref: '#/components/schemas/Batch'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
batch:
$ref: '#/components/schemas/BatchResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
businessDate:
$ref: '#/components/schemas/TransactionBusinessDate'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/BatchError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/qrpayments/getqrcode:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- QR Payments
summary: Get QR Code
operationId: getqrcode
security:
- AccessToken: []
description: >
This endpoint is used to obtain a transaction based QR code.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- amount
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
- tax
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
tip:
$ref: '#/components/schemas/AmountTip'
cashback:
$ref: '#/components/schemas/AmountCashback'
transaction:
type: object
required:
- invoice
- saleFlag
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlagQR'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
qrCode:
$ref: '#/components/schemas/QRCodeResponse'
server:
$ref: '#/components/schemas/Server'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
tip:
$ref: '#/components/schemas/AmountTip'
cashback:
$ref: '#/components/schemas/AmountCashback'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlagQR'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
longText: Fail to post QR Pay record
primaryCode: 9870
secondaryCode: 4
shortText: QR PAY ERROR
server:
name: U2API02CE
'504':
$ref: '#/components/responses/TimeoutResponse'
/qrpayments/getqrdetails:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- QR Payments
summary: Get QR Details
operationId: getqrdetails
security:
- AccessToken: []
description: >
This endpoint is used to get detailed information for a transaction
based QR code.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- qrCode
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
qrCode:
$ref: '#/components/schemas/QRCodeRequest'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
properties:
total:
$ref: '#/components/schemas/AmountTotal'
tax:
$ref: '#/components/schemas/AmountTax'
tip:
$ref: '#/components/schemas/AmountTip'
cashback:
$ref: '#/components/schemas/AmountCashback'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlagQR'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
merchant:
type: object
properties:
addressLine1:
$ref: '#/components/schemas/MerchantAddressLine1'
addressLine2:
$ref: '#/components/schemas/MerchantAddressLine2'
city:
$ref: '#/components/schemas/MerchantCity'
dayEndingTime:
$ref: '#/components/schemas/MerchantDayEndingTime'
industry:
$ref: '#/components/schemas/MerchantIndustry'
name:
$ref: '#/components/schemas/MerchantName'
region:
$ref: '#/components/schemas/MerchantRegion'
phone:
$ref: '#/components/schemas/MerchantPhone'
postalCode:
$ref: '#/components/schemas/MerchantPostalCode'
serialNumber:
$ref: '#/components/schemas/MerchantSerialNumber'
mid:
$ref: '#/components/schemas/MerchantMID'
cardTypes:
$ref: '#/components/schemas/MerchantCardTypesArray'
qrPayConfig:
$ref: '#/components/schemas/QRPayConfig'
server:
$ref: '#/components/schemas/Server'
credential:
type: object
properties:
accessToken:
$ref: '#/components/schemas/CredentialAccessToken'
apiSerialNumber:
$ref: '#/components/schemas/CredentialApiSerialNumber'
apiPassword:
$ref: '#/components/schemas/CredentialAuthToken'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
longText: Invalid QR Code - not found
primaryCode: 9870
secondaryCode: 1
shortText: QR PAY ERROR
server:
name: U2API01CE
'504':
$ref: '#/components/responses/TimeoutResponse'
/qrpayments/getqrpaymentstatus:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- QR Payments
summary: Get QR Payment Status
operationId: getqrpaymentstatus
security:
- AccessToken: []
description: >
This endpoint is used to poll for the status of the QR code payment.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- qrCode
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
qrCode:
$ref: '#/components/schemas/QRCodeRequest'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
clerk:
$ref: '#/components/schemas/ClerkResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
signature:
$ref: '#/components/schemas/Signature'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCodeQRPaymentStatus
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
amex:
$ref: '#/components/schemas/TransactionAmex'
avs:
$ref: '#/components/schemas/AVS'
universalToken:
$ref: '#/components/schemas/UniversalToken'
examples:
QRPAYSUCCESS:
summary: QR Payment Processed Successfully
value:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
cashback: 20
tax: 15
tip: 20
total: 160
card:
entryMode: '1'
expirationDate: 1222
number: XXXXXXXXXXXX1119
present: 'N'
token:
value: '8048471746471119'
type: VS
clerk:
numericId: 1576
customer:
firstName: John
lastName: Smith
merchant:
mid: 15877
name: Merchant XYZ
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: KEYED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
server:
name: UTGAPI01CE
transaction:
authorizationCode: OK126Z
authSource: E
invoice: '192029'
responseCode: A
saleFlag: S
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
longText: QR Pay is Cancelled - unable to process request
primaryCode: 9870
secondaryCode: 6
shortText: QR PAY ERROR
server:
name: U2API01CE
'504':
$ref: '#/components/responses/TimeoutResponse'
/qrpayments/cancelqrpayment:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
post:
tags:
- QR Payments
summary: Cancel QR Payment
operationId: cancelqrpayment
security:
- AccessToken: []
description: >
This endpoint is used to cancel a QR code payment. If the payment was
already processed the transaction will be reversed. If the payment has
not yet processed it will prevent the QR code from being used to process
a payment.
**Integration Methods:**
- Host Direct
- Locally Installed UTG
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- qrCode
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
qrCode:
$ref: '#/components/schemas/QRCodeRequest'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
transaction:
type: object
properties:
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCodeQRCancel
merchant:
type: object
properties:
serialNumber:
$ref: '#/components/schemas/MerchantSerialNumber'
mid:
$ref: '#/components/schemas/MerchantMID'
name:
$ref: '#/components/schemas/MerchantName'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
example:
result:
- error:
longText: Invalid QR Code - not found
primaryCode: 9870
secondaryCode: 1
shortText: QR PAY ERROR
server:
name: U2API01CE
'504':
$ref: '#/components/responses/TimeoutResponse'
/mode/offline:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
post:
tags:
- Mode
summary: Go Offline
operationId: modeoffline
security:
- AccessToken: []
description: >
This function is used to put UTG/Commerce Engine into offline mode.
UTG/Commerce Engine will be configured to set a maximum duration for how
long it will stay in offline mode in order to prevent UTG/Commerce
Engine from staying offline indefinitely if the Interface Vendor does
not send the go online request.
Note: To utilize this feature with UTG, you must be running UTG version
3080 or later. UTG can be configured to disable this feature, which will
prevent the API request from putting UTG into offline mode.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
responses:
'200':
description: Go Offline request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceMode'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/AuthTokenNotValidError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/mode/online:
servers:
- url: https://192.168.1.10:277/api/rest/v1
description: Locally Installed UTG URL
- url: https://192.168.1.20:8085/api/rest/v1
description: Commerce Engine For On Premise URL
post:
tags:
- Mode
summary: Go Online
operationId: modeonline
security:
- AccessToken: []
description: >
This function is used to bring UTG/Commerce Engine out of offline mode
after putting UTG/Commerce Engine into offline mode via the [Go
Online](/apis/payments-platform-rest/openapi/mode/modeoffline) request.
Note: To utilize this feature with UTG, you must be running UTG version
3080 or later.
**Integration Methods:**
- Locally Installed UTG
- Commerce Engine For On Premise
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
responses:
'200':
description: Go Online request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceMode'
server:
$ref: '#/components/schemas/Server'
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
server:
$ref: '#/components/schemas/Server'
examples:
Error:
$ref: '#/components/examples/AuthTokenNotValidError'
'504':
$ref: '#/components/responses/TimeoutResponse'
/risk/assess:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- Risk
summary: Risk Assess
operationId: riskassess
security:
- AccessToken: []
description: >
Used to check the level of risk before processing a transaction. Risk
assessment returns four possible values: approve, deny, escalate and
review. If the risk transaction is approved or review, you will be able
to make a payment call with the risk assessment, risk id and
transaction id you get in response.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/risk_assess_unencryptedcard'
- $ref: '#/components/schemas/risk_assess_token_gtv'
responses:
'200':
description: Risk assessment was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- risk
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
card:
type: object
properties:
token:
$ref: '#/components/schemas/CardTokenResponse'
merchant:
$ref: '#/components/schemas/MerchantResponse'
risk:
type: object
required:
- tranId
- assessment
properties:
tranId:
$ref: '#/components/schemas/RiskTranId'
assessment:
$ref: '#/components/schemas/RiskAssessment'
transaction:
type: object
required:
- s4RiskId
- invoice
properties:
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskId'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
orderId:
$ref: '#/components/schemas/TransactionOrderId'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 76001.99
card:
token:
value: '8058471748284111'
merchant:
mid: 15877
name: Merchant XYZ
risk:
tranId: DDWT0P3LG6LL
assessment: A
transaction:
s4RiskId: EC52377F-5A8E-4534-BE7A-CF779A35BE45
invoice: '0207123502'
orderId: orderId
'400':
description: Error
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
transaction:
type: object
properties:
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskId'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
hostResponse:
type: object
properties:
reasonCode:
$ref: >-
#/components/schemas/HostResponseReasonCodeRisk
reasonDescription:
$ref: >-
#/components/schemas/HostResponseReasonDescriptionRisk
orderId:
$ref: '#/components/schemas/TransactionOrderId'
example:
result:
- error:
longText: format error
primaryCode: 9151
secondaryCode: 0
shortText: format error
transaction:
s4RiskId: EC52377F-5A8E-4534-BE7A-CF779A35BE45
invoice: '0207123502'
orderId: orderId
hostResponse:
reasonCode: '232'
reasonDescription: The credit card information is missing
'504':
description: Timeout
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
error:
$ref: '#/components/schemas/Error'
transaction:
type: object
properties:
s4RiskId:
$ref: '#/components/schemas/TransactionS4RiskId'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
orderId:
$ref: '#/components/schemas/TransactionOrderId'
example:
result:
- error:
longText: Timeout waiting for response across the internet
primaryCode: 9951
secondaryCode: 0
shortText: RESPONSE TIMEOUT
transaction:
s4RiskId: EC52377F-5A8E-4534-BE7A-CF779A35BE45
invoice: '0207123502'
orderId: orderId
/paypal/initiate:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- PayPal
summary: PayPal Initiate
operationId: paypalinitiate
security:
- AccessToken: []
description: >
This request initiates a PayPal transaction.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- amount
- currencyCode
- customer
- dateTime
- sourceIp
- transaction
properties:
amount:
type: object
required:
- tax
- total
properties:
tax:
$ref: '#/components/schemas/AmountTax'
total:
$ref: '#/components/schemas/AmountTotal'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
customer:
type: object
required:
- addressLine1
- city
- country
- emailAddress
- firstName
- lastName
- ipAddress
- phoneNumber
- phoneCountry
- region
- externalId
- enrollDate
properties:
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
city:
$ref: '#/components/schemas/CustomerCity'
country:
$ref: '#/components/schemas/CustomerCountry'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
phoneCountry:
$ref: '#/components/schemas/CustomerPhoneCountry'
region:
$ref: '#/components/schemas/CustomerRegion'
externalId:
$ref: '#/components/schemas/CustomerExternalId'
enrollDate:
$ref: '#/components/schemas/CustomerEnrollDate'
dateTime:
$ref: '#/components/schemas/DateTime'
sourceIp:
$ref: '#/components/schemas/SourceIP'
transaction:
type: object
required:
- invoice
- vendorReference
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
ota:
$ref: '#/components/schemas/OTARequestPayPal'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
required:
- amount
- dateTime
- payPal
- server
- transaction
properties:
amount:
type: object
required:
- tax
- total
properties:
tax:
$ref: '#/components/schemas/AmountTax'
total:
$ref: '#/components/schemas/AmountTotal'
dateTime:
$ref: '#/components/schemas/DateTime'
payPal:
type: object
required:
- clientToken
properties:
clientMetaDataId:
$ref: '#/components/schemas/PayPalClientMetaDataId'
clientToken:
$ref: '#/components/schemas/PayPalClientToken'
server:
type: object
required:
- name
properties:
name:
$ref: '#/components/schemas/ServerName'
transaction:
type: object
required:
- authSource
- invoice
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
/paypal/sale:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- PayPal
summary: PayPal Sale Transaction
operationId: paypalsale
security:
- AccessToken: []
description: >
This authorizes and captures the transaction. In addition, it will
return a payload that includes the transaction's sale details.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- amount
- transaction
- sourceIp
- customer
- currencyCode
- payPal
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
payPal:
type: object
required:
- payerId
- paymentMethodNonce
- deviceData
properties:
payerId:
$ref: '#/components/schemas/PayPalPayerId'
paymentMethodNonce:
$ref: '#/components/schemas/PayPalPaymentMethodNonce'
paymentMethodIdUsage:
$ref: '#/components/schemas/PayPalPaymentMethodIdUsage'
deviceData:
$ref: '#/components/schemas/PayPalDeviceData'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
airline:
$ref: '#/components/schemas/AirlineRequestPayPal'
notes:
$ref: '#/components/schemas/TransactionNotes'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
sourceIp:
$ref: '#/components/schemas/SourceIP'
customer:
type: object
required:
- browserType
properties:
browserType:
$ref: '#/components/schemas/CustomerBrowserType'
example:
dateTime: '2022-04-14T13:31:52.023807'
amount:
total: 15
currencyCode: USD
transaction:
invoice: '0414133134'
payPal:
payerId: 6CB2GS6AQRS5S
paymentMethodNonce: fd66f90e-c8ec-0363-6b45-aeb930175e43
deviceData: '{"correlation_id":"010e4 a744d78644f971fc5f9dc1c43aa"}'
sourceIp: 10.249.11.254
customer:
browserType: Mozilla 5.0
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
required:
- payPal
- dateTime
- amount
- transaction
- server
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
required:
- authSource
- invoice
- responseCode
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
server:
type: object
required:
- name
properties:
name:
$ref: '#/components/schemas/ServerName'
payPal:
type: object
required:
- transactionId
- legacyId
- authorizationId
- captureId
- orderId
- status
properties:
transactionId:
$ref: '#/components/schemas/PayPalTransactionId'
legacyId:
$ref: '#/components/schemas/PayPalLegacyId'
orderId:
$ref: '#/components/schemas/PayPalOrderId'
status:
$ref: '#/components/schemas/PayPalStatus'
authorizationId:
$ref: '#/components/schemas/PayPalAuthorizationId'
captureId:
$ref: '#/components/schemas/PayPalCaptureId'
paymentMethodId:
$ref: '#/components/schemas/PayPalPaymentMethodId'
example:
result:
- dateTime: '2022-04-14T12:18:26.717923-07:00'
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
invoice: '0414151800'
responseCode: A
server:
name: WH-APM-V01.PPDEV1
payPal:
transactionId: dHJhbnNhY3Rpb25fazd6cDB5ZzA
legacyId: k7zp0yg0
orderId: 444106-8010720-0414151800-4371
authorizationId: 6W6361048T1775802
captureId: 3EK61497JE2934158
status: SETTLING
paymentMethodId: dda7z0fq
amount:
total: 15
/paypal/refund:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- PayPal
summary: PayPal Refund Transaction
operationId: paypalrefund
security:
- AccessToken: []
description: >
This refunds a settled transaction. In addition, it will return a
payload that includes the transaction’s refund details.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- amount
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
transaction:
type: object
required:
- invoice
- originalInvoice
- originalDate
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
originalDate:
$ref: '#/components/schemas/TransactionOriginalDate'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 15
transaction:
invoice: '0414151837'
originalInvoice: '0414151800'
originalDate: '2022-04-14T00:00:00-04:00'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- transaction
- server
- payPal
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
required:
- total
properties:
total:
$ref: '#/components/schemas/AmountTotal'
merchant:
$ref: '#/components/schemas/MerchantResponse'
payPal:
type: object
required:
- transactionId
- legacyId
- orderId
- status
properties:
transactionId:
$ref: '#/components/schemas/PayPalTransactionId'
legacyId:
$ref: '#/components/schemas/PayPalLegacyId'
orderId:
$ref: '#/components/schemas/PayPalOrderId'
status:
$ref: '#/components/schemas/PayPalStatus'
transaction:
type: object
required:
- authSource
- invoice
- responseCode
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCode'
server:
type: object
required:
- name
properties:
name:
$ref: '#/components/schemas/ServerName'
example:
result:
- dateTime: '2022-04-14T12:18:47.515770-07:00'
amount:
total: 15
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
invoice: '0414151837'
responseCode: A
payPal:
transactionId: cmVmdW5kX2s4dDRkZGEx
legacyId: k8t4dda1
orderId: 444106-8010720-0414151837-4372
status: SETTLING
server:
name: WH-APM-V01.PPDEV1
/3dsecure/standalone:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- 3D Secure
summary: 3D Secure Standalone
operationId: 3dsecurestandalone
security:
- AccessToken: []
description: >
This function is used to process a request via the 3D Secure process
without authorizing the payment. This will return the result of the 3D
Secure process as well as the 3D Secure data that can then be used to
process a payment via the
[Authorization](/apis/payments-platform-rest/openapi/transactions/transactionsauthorization)
or
[Sale/Purchase](/apis/payments-platform-rest/openapi/transactions/transactionssale)
endpoint.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/3dsecure_standalone_cardnumber'
- $ref: '#/components/schemas/3dsecure_standalone_token_gtv'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
oneOf:
- title: Request Complete
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- currencyCode
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
city:
$ref: '#/components/schemas/CustomerCity'
region:
$ref: '#/components/schemas/CustomerRegion'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
country:
$ref: '#/components/schemas/CustomerCountry'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
shipping:
$ref: >-
#/components/schemas/CustomerShipping3DSecure
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
hostResponse:
$ref: '#/components/schemas/HostResponse'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCode3DSStandalone
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
avs:
$ref: '#/components/schemas/AVS'
threeDSecure:
type: object
properties:
trxId:
$ref: '#/components/schemas/ThreeDSecureTrxId'
cardholderInfo:
$ref: >-
#/components/schemas/ThreeDSecureCardholderInfo
cryptogram:
$ref: '#/components/schemas/ThreeDSecureCryptogram'
programProtocol:
$ref: >-
#/components/schemas/ThreeDSecureProgramProtocol
directoryServerTranId:
$ref: >-
#/components/schemas/ThreeDSecureDirectoryServerTranId
ecommIndicator:
$ref: >-
#/components/schemas/ThreeDSecureEcommIndicator
securityLevelIndicator:
$ref: >-
#/components/schemas/ThreeDSecureSecurityLevelIndicator
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
universalToken:
$ref: '#/components/schemas/UniversalToken'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
example:
dateTime: '2022-05-04T09:20:04.487-07:00'
amount:
tax: 15
total: 160
currencyCode: EUR
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
securityCode:
result: M
valid: 'Y'
token:
value: '8048471746471119'
type: VS
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
merchant:
mid: 15877
name: Merchant XYZ
threeDSecure:
trxId: a7bbd49a-ffe6-49b2-8a92-541f0a3b053d
cryptogram: >-
AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==
programProtocol: '2'
directoryServerTranId: 07e54000-2721-4df9-aa51-04fa0e079aa8
ecommIndicator: '5'
server:
name: TM01CE
transaction:
authSource: A
avs:
postalCodeVerified: 'N'
result: A
streetVerified: 'Y'
valid: 'Y'
invoice: '730518'
responseCode: A
retrievalReference: 402F9H0230S0
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: KEYED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
- title: Device Fingerprint
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- currencyCode
- threeDSecure
- redirectUrl
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
$ref: '#/components/schemas/CardResponse3DSChallenge'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
city:
$ref: '#/components/schemas/CustomerCity'
region:
$ref: '#/components/schemas/CustomerRegion'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
country:
$ref: '#/components/schemas/CustomerCountry'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
shipping:
$ref: >-
#/components/schemas/CustomerShipping3DSecure
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCode3DSFingerprint
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
threeDSecure:
type: object
required:
- trxId
properties:
trxId:
$ref: '#/components/schemas/ThreeDSecureTrxId'
redirectUrl:
$ref: '#/components/schemas/RedirectURL3DSResponse'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2022-05-04T09:20:04.487-07:00'
amount:
tax: 15
total: 160
currencyCode: EUR
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
type: VS
token:
value: '8048471746471119'
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
invoice: '730518'
responseCode: H
retrievalReference: 402F9H0230S0
redirectUrl: https://issuer.com/fingerprint
threeDSecure:
trxId: a7bbd49a-ffe6-49b2-8a92-541f0a3b053d
server:
name: TM01CE
- title: 3D Secure Challenge
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- currencyCode
- threeDSecure
- redirectUrl
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
$ref: '#/components/schemas/CardResponse3DSChallenge'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
city:
$ref: '#/components/schemas/CustomerCity'
region:
$ref: '#/components/schemas/CustomerRegion'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
country:
$ref: '#/components/schemas/CustomerCountry'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
shipping:
$ref: >-
#/components/schemas/CustomerShipping3DSecure
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCode3DSChallenge
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
threeDSecure:
type: object
required:
- trxId
properties:
trxId:
$ref: '#/components/schemas/ThreeDSecureTrxId'
redirectUrl:
$ref: '#/components/schemas/RedirectURL3DSResponse'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2022-05-04T09:20:04.487-07:00'
amount:
tax: 15
total: 160
currencyCode: EUR
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
type: VS
token:
value: '8048471746471119'
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
invoice: '730518'
responseCode: G
retrievalReference: 402F9H0230S0
redirectUrl: https://issuer.com/challenge
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponse3DSecure'
'504':
$ref: '#/components/responses/TimeoutResponse'
/3dsecure/completion:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- 3D Secure
summary: 3D Secure Completion
operationId: 3dsecurecompletion
security:
- AccessToken: []
description: >
This endpoint is utilized to send the status of the device fingerprint.
This must be sent whenever the response to the [3D Secure
Standalone](/apis/payments-platform-rest/openapi/3d-secure/3dsecurestandalone)
results in a device fingerprint required.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- transaction
- threeDSecure
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
required:
- invoice
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
threeDSecure:
type: object
required:
- trxId
- compInd
properties:
trxId:
$ref: '#/components/schemas/ThreeDSecureTrxId'
compInd:
$ref: '#/components/schemas/ThreeDSecureCompInd'
example:
dateTime: '2022-05-04T09:20:04.487-07:00'
merchant:
mid: 15877
name: Merchant XYZ
transaction:
invoice: '730518'
threeDSecure:
trxId: a7bbd49a-ffe6-49b2-8a92-541f0a3b053d
compInd: 'Y'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
oneOf:
- title: Transaction Complete
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- currencyCode
- card
- customer
- transaction
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
$ref: '#/components/schemas/CardResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
city:
$ref: '#/components/schemas/CustomerCity'
region:
$ref: '#/components/schemas/CustomerRegion'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
country:
$ref: '#/components/schemas/CustomerCountry'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authorizationCode:
$ref: >-
#/components/schemas/TransactionAuthorizationCode
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
hostResponse:
$ref: '#/components/schemas/HostResponse'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCode3DSStandalone
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
avs:
$ref: '#/components/schemas/AVS'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
threeDSecure:
type: object
properties:
trxId:
$ref: '#/components/schemas/ThreeDSecureTrxId'
cardholderInfo:
$ref: >-
#/components/schemas/ThreeDSecureCardholderInfo
receipt:
$ref: '#/components/schemas/ReceiptArray'
server:
$ref: '#/components/schemas/Server'
universalToken:
$ref: '#/components/schemas/UniversalToken'
cardBrandToken:
$ref: '#/components/schemas/CardBrandToken'
example:
dateTime: '2022-05-04T09:20:04.487-07:00'
amount:
tax: 15
total: 160
currencyCode: EUR
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
securityCode:
result: M
valid: 'Y'
token:
value: '8048471746471119'
type: VS
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
merchant:
mid: 15877
name: Merchant XYZ
server:
name: TM01CE
transaction:
authorizationCode: OK868Z
authSource: A
avs:
postalCodeVerified: 'N'
result: A
streetVerified: 'Y'
valid: 'Y'
invoice: '730518'
responseCode: A
retrievalReference: 402F9H0230S0
saleFlag: S
receipt:
- key: CardEntryMode
printName: ENTRY METHOD
printValue: KEYED
- key: MaskedPAN
printValue: XXXXXXXXXXXX1119
- key: SignatureRequired
printValue: 'Y'
- key: TransactionResponse
printName: Response
printValue: APPROVED
- title: 3D Secure Challenge
properties:
result:
type: array
items:
type: object
required:
- dateTime
- amount
- currencyCode
- card
- customer
- transaction
- threeDSecure
- redirectUrl
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/Amount'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
card:
$ref: '#/components/schemas/CardResponse3DSChallenge'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstName'
lastName:
$ref: '#/components/schemas/CustomerLastName'
phoneNumber:
$ref: '#/components/schemas/CustomerPhoneNumber'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
addressLine1:
$ref: '#/components/schemas/CustomerAddressLine1'
city:
$ref: '#/components/schemas/CustomerCity'
region:
$ref: '#/components/schemas/CustomerRegion'
postalCode:
$ref: '#/components/schemas/CustomerPostalCode'
country:
$ref: '#/components/schemas/CustomerCountry'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
invoice:
$ref: '#/components/schemas/TransactionInvoice'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCode3DSChallenge
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReference
saleFlag:
$ref: '#/components/schemas/TransactionSaleFlag'
cardOnFile:
$ref: '#/components/schemas/CardOnFile'
threeDSecure:
type: object
required:
- trxId
properties:
trxId:
$ref: '#/components/schemas/ThreeDSecureTrxId'
redirectUrl:
$ref: '#/components/schemas/RedirectURL3DSResponse'
server:
$ref: '#/components/schemas/Server'
example:
dateTime: '2022-05-04T09:20:04.487-07:00'
amount:
tax: 15
total: 160
currencyCode: EUR
card:
entryMode: M
number: XXXXXXXXXXXX1119
present: 'N'
type: VS
token:
value: '8048471746471119'
customer:
firstName: John
lastName: Smith
addressLine1: 65 Easy St
city: Las Vegas
postalCode: '65144'
emailAddress: firstname.lastname@email.com
ipAddress: 63.57.84.101
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
invoice: '730518'
responseCode: G
retrievalReference: 402F9H0230S0
saleFlag: S
threeDSecure:
trxId: a7bbd49a-ffe6-49b2-8a92-541f0a3b053d
redirectUrl: https://issuer.com/challenge
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponse3DSecure'
'504':
$ref: '#/components/responses/TimeoutResponse'
/oct/payout:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- OCT
summary: OCT Payout
operationId: octpayout
security:
- AccessToken: []
description: >
Used to process an original credit transaction to transfer funds from
the merchant to the recipient.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/oct_payout_unencryptedcard'
- $ref: '#/components/schemas/oct_payout_token_gtv'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
description: >
Object containing information regarding the amount
being requested. The `total` field within the object
is required and specifies the amount being
requested.
properties:
total:
$ref: '#/components/schemas/AmountTotal'
fee:
$ref: '#/components/schemas/AmountFeeOCT'
card:
type: object
properties:
number:
$ref: '#/components/schemas/CardMaskedNumber'
type:
$ref: '#/components/schemas/CardTypeResp'
token:
$ref: '#/components/schemas/CardTokenResponse'
customer:
type: object
properties:
firstName:
$ref: '#/components/schemas/CustomerFirstNameResponse'
lastName:
$ref: '#/components/schemas/CustomerLastNameResponse'
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
ipAddress:
$ref: '#/components/schemas/CustomerIpAddress'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
invoice:
$ref: >-
#/components/schemas/TransactionInvoiceAlphanumeric
responseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
- D
description: >
Code indicating the Shift4 host
response.
Value | Description | Details
-------|-------------|--------
A | Approved | The transaction is
approved.
D | Declined | The transaction is
declined.
hostResponse:
$ref: '#/components/schemas/HostResponseOCT'
retrievalReference:
$ref: >-
#/components/schemas/TransactionRetrievalReferenceOCT
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
example:
result:
- dateTime: '2021-04-15T09:18:23.283-07:00'
amount:
total: 160
card:
number: XXXXXXXXXXXX1119
type: VS
token:
value: '8048471746471119'
customer:
firstName: John
lastName: Smith
emailAddress: johnsmith@email.com
ipAddress: 63.57.84.101
merchant:
mid: 15877
name: Merchant XYZ
server:
name: TM01CE
transaction:
authSource: A
invoice: '192029'
responseCode: A
retrievalReference: ICTN-178768-233-79170-FUX
'400':
$ref: '#/components/responses/ErrorResponseOCT'
'504':
$ref: '#/components/responses/TimeoutResponseOCT'
/oct/updaterecipient:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- OCT
summary: OCT Update Recipient
operationId: octupdaterecipient
security:
- AccessToken: []
description: >
Used to update the OCT recipient email address.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- customer
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
customer:
type: object
required:
- emailAddress
- newEmailAddress
properties:
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
newEmailAddress:
$ref: '#/components/schemas/CustomerNewEmailAddress'
sourceIp:
$ref: '#/components/schemas/SourceIP'
example:
dateTime: '2021-04-15T09:18:23.283-07:00'
sourceIp: 63.57.84.101
customer:
emailAddress: oldaddress@email.com
newEmailAddress: newaddress@email.com
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
customer:
type: object
properties:
emailAddress:
$ref: '#/components/schemas/CustomerEmailAddress'
newEmailAddress:
$ref: '#/components/schemas/CustomerNewEmailAddress'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
type: string
minLength: 1
maxLength: 1
readOnly: true
example: A
enum:
- A
description: >
Code indicating the Shift4 host
response.
Value | Description | Details
-------|-------------|--------
A | Approved | The request is approved.
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2022-05-10T06:34:25.049-07:00'
customer:
emailAddress: firstname.lastname@email.com
newEmailAddress: firstname.lastname@email.com
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
responseCode: A
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponseOCT'
'504':
$ref: '#/components/responses/TimeoutResponseOCT'
/ach/verify:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- ACH
summary: ACH Verify
operationId: achverify
security:
- AccessToken: []
description: >
Used to verify an ach bank account prior to sending an ACH sale/refund
transaction.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- dateTime
- ach
- sourceIp
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
ach:
type: object
required:
- accountNumber
- routingNumber
- accountType
- verificationType
- accountHolderName
properties:
accountNumber:
$ref: '#/components/schemas/ACHAccountNumber'
routingNumber:
$ref: '#/components/schemas/ACHRoutingNumber'
accountType:
$ref: '#/components/schemas/ACHAccountType'
verificationType:
$ref: '#/components/schemas/ACHVerificationTypePrenotification'
accountHolderName:
$ref: '#/components/schemas/ACHAccountHolderName'
sourceIp:
$ref: '#/components/schemas/SourceIP'
transaction:
type: object
properties:
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
example:
dateTime: '2023-02-08T09:18:23.283-07:00'
ach:
accountNumber: '1234567890'
routingNumber: '121000248'
accountType: PC
verificationType: P
accountHolderName: John Smith
sourceIp: 172.110.166.244
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
type: object
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
token:
$ref: '#/components/schemas/TokenACH'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCodeACHPending
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
merchant:
$ref: '#/components/schemas/MerchantResponse'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
merchant:
mid: 15877
name: Merchant XYZ
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
responseCode: P
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponseACH'
'504':
$ref: '#/components/responses/TimeoutResponseACH'
/ach/sale:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- ACH
summary: ACH Sale
operationId: achsale
security:
- AccessToken: []
description: >
Used to process an ach sale transaction.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/ach_sale_bankaccount'
- $ref: '#/components/schemas/ach_sale_token_gtv'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
description: >
Object containing information regarding the amount
being requested. The `total` field within the object
is required and specifies the amount being
requested.
properties:
total:
$ref: '#/components/schemas/AmountTotal'
token:
$ref: '#/components/schemas/TokenACH'
ach:
type: object
properties:
balanceVerificationResult:
$ref: >-
#/components/schemas/ACHBalanceVerificationResult
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
invoice:
$ref: >-
#/components/schemas/TransactionInvoiceAlphanumeric
responseCode:
$ref: '#/components/schemas/TransactionResponseCodeACH'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
notificationId:
$ref: '#/components/schemas/NotificationId'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
amount:
total: 135.87
merchant:
mid: 15877
name: Merchant XYZ
token:
value: '9829283019231234'
type: ACH
ach:
balanceVerificationResult: VS
transaction:
authSource: A
invoice: '192029'
responseCode: P
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponseACH'
'504':
$ref: '#/components/responses/TimeoutResponseACH'
/ach/refund:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- ACH
summary: ACH Refund
operationId: achrefund
security:
- AccessToken: []
description: >
Used to process an ach refund transaction.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/ach_refund_bankaccount'
- $ref: '#/components/schemas/ach_refund_token_gtv'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
description: >
Object containing information regarding the amount
being requested. The `total` field within the object
is required and specifies the amount being
requested.
properties:
total:
$ref: '#/components/schemas/AmountTotal'
merchant:
$ref: '#/components/schemas/MerchantResponse'
token:
$ref: '#/components/schemas/TokenACH'
server:
$ref: '#/components/schemas/Server'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
invoice:
$ref: >-
#/components/schemas/TransactionInvoiceAlphanumeric
originalInvoice:
$ref: '#/components/schemas/TransactionOriginalInvoice'
responseCode:
$ref: '#/components/schemas/TransactionResponseCodeACH'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
notificationId:
$ref: '#/components/schemas/NotificationId'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
amount:
total: 135.87
merchant:
mid: 15877
name: Merchant XYZ
token:
value: '9829283019231234'
type: ACH
transaction:
authSource: A
invoice: '192030'
originalInvoice: '192029'
responseCode: P
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponseACH'
'504':
$ref: '#/components/responses/TimeoutResponseACH'
/ach/plaid/link_token/create:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- ACH
summary: Create Plaid Link Token
operationId: achplaidlinktokencreate
security:
- AccessToken: []
description: >
Used to create a Plaid Link token to use with the Plaid Link UI.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- plaid
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
plaid:
type: object
required:
- client_user_id
properties:
client_user_id:
$ref: '#/components/schemas/ACHPlaidLinkTokenClientUserId'
language:
$ref: '#/components/schemas/ACHPlaidLinkTokenLanguage'
redirectUrl:
$ref: '#/components/schemas/ACHPlaidLinkTokenRedirectUrl'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCodeACHPlaidLinkToken
plaid:
type: object
properties:
link_token:
$ref: '#/components/schemas/ACHPlaidLinkToken'
expiration:
$ref: '#/components/schemas/ACHPlaidLinkTokenExpiration'
client_user_id:
$ref: >-
#/components/schemas/ACHPlaidLinkTokenClientUserId
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
responseCode: S
plaid:
link_token: link-sandbox-bea285c1-ad79-4191-8d1b-aaf537f7df59
expiration: '2023-02-13T21:00:25Z'
client_user_id: ae1a59fe-8646-4637-bbb8-d270856c508c
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponseACH'
'504':
$ref: '#/components/responses/TimeoutResponseACH'
/ach/plaid/public_token/exchange:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- ACH
summary: Plaid Public Token Exchange
operationId: achplaidpublictokenexchange
security:
- AccessToken: []
description: >
Used to create a Plaid Link token to use with the Plaid Link UI.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- ach
- plaid
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
ach:
type: object
required:
- accountHolderName
properties:
accountHolderName:
$ref: '#/components/schemas/ACHAccountHolderName'
plaid:
type: object
required:
- public_token
- metadata
properties:
public_token:
$ref: '#/components/schemas/ACHPlaidPublicToken'
metadata:
$ref: '#/components/schemas/ACHPlaidPublicTokenMetadata'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
transaction:
type: object
properties:
authSource:
$ref: '#/components/schemas/TransactionAuthSourceAPM'
responseCode:
$ref: >-
#/components/schemas/TransactionResponseCodeACHPlaidPublicTokenExchange
notificationId:
$ref: '#/components/schemas/NotificationId'
ach:
type: object
properties:
accountLastFour:
$ref: '#/components/schemas/ACHAccountNumberLastFour'
token:
$ref: '#/components/schemas/TokenACH'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2023-02-08T09:18:23.283-07:00'
merchant:
mid: 15877
name: Merchant XYZ
transaction:
authSource: A
responseCode: A
notificationId: 6ca3c55e-1b7c-4cad-8ae2-cac052b5510d
ach:
accountLastFour: '7890'
token:
value: '9829283019231234'
type: ACH
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponseACH'
'504':
$ref: '#/components/responses/TimeoutResponseACH'
/updater/request:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- Updater
summary: Account Update
operationId: updaterrequest
security:
- AccessToken: []
description: >
This function is used to request an account update for a set of tokens.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- cards
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
cards:
type: array
minItems: 1
maxItems: 5000
description: |
Array of card tokens
items:
type: object
required:
- token
properties:
token:
description: >
The token representing the card account number for
which you are requesting an update.
type: string
maxLength: 16
example:
- token: '8589410119524356'
- token: '8048471746471119'
- token: '8589410119529857'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
updaterRequestId:
$ref: '#/components/schemas/UpdaterRequestId'
'400':
$ref: '#/components/responses/ErrorResponseUpdater'
'504':
$ref: '#/components/responses/TimeoutResponseUpdater'
/updater/status:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- Updater
summary: Account Update Status
operationId: updaterstatus
security:
- AccessToken: []
description: >
This function is used to request a status update to a previous [Account
Update](/apis/payments-platform-rest/openapi/updater/updaterrequest)
request for a set of tokens.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
required:
- dateTime
- updaterRequestId
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
updaterRequestId:
$ref: '#/components/schemas/UpdaterRequestId'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
cards:
type: array
description: |
Array of card tokens
items:
type: object
properties:
token:
$ref: '#/components/schemas/UpdaterToken'
status:
$ref: '#/components/schemas/UpdaterCardsStatus'
expirationDate:
$ref: '#/components/schemas/UpdaterExpirationDate'
newExpirationDate:
$ref: '#/components/schemas/UpdaterNewExpirationDate'
newToken:
$ref: '#/components/schemas/UpdaterNewToken'
example:
- token: '8589410119524356'
status: A
expirationDate: '0824'
newToken: '8589410119524357'
- token: '8048471746471119'
status: B
expirationDate: '0925'
newExpirationDate: '1026'
- token: '8589410119529857'
status: E
expirationDate: '1024'
dateTime:
$ref: '#/components/schemas/DateTime'
merchant:
$ref: '#/components/schemas/MerchantResponse'
server:
$ref: '#/components/schemas/Server'
updaterRequestId:
$ref: '#/components/schemas/UpdaterRequestId'
updaterStatus:
$ref: '#/components/schemas/UpdaterStatus'
'400':
$ref: '#/components/responses/ErrorResponseUpdater'
'504':
$ref: '#/components/responses/TimeoutResponseUpdater'
/dcc/ratelookup:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- DCC
summary: DCC Rate Lookup
operationId: dccratelookup
security:
- AccessToken: []
description: >
Used to look up the dynamic currency conversion rate.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/dcc_ratelookup_token_gtv'
- $ref: '#/components/schemas/dcc_ratelookup_token_legacy'
- $ref: '#/components/schemas/dcc_ratelookup_p2pe_idtech'
- $ref: '#/components/schemas/dcc_ratelookup_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/dcc_ratelookup_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/dcc_ratelookup_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/dcc_ratelookup_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/dcc_ratelookup_unencryptedcard'
responses:
'200':
description: Transaction was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
$ref: '#/components/schemas/AmountTotalOnly'
card:
type: object
properties:
expirationDate:
$ref: '#/components/schemas/CardExpirationDateResponse'
number:
$ref: '#/components/schemas/CardMaskedNumber'
securityCode:
$ref: '#/components/schemas/CardSecurityCodeResponse'
token:
$ref: '#/components/schemas/CardTokenResponse'
dcc:
$ref: '#/components/schemas/DCCResponse'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2024-07-09T09:18:23.283-07:00'
amount:
total: 160
card:
number: XXXXXXXXXXXX1119
token:
value: '8048471746471119'
dcc:
rateTimeStamp: '2024-07-09T09:18:25.875-07:00'
currencyCode: CAD
foreignAmount: 180.23
conversionRate: '1.35'
marginPercentage: '9.73'
currencyMinorUnits: 2
transactionId: 1A2820D2G334
diffOverEcb: '2.85'
displayUnit: 2
provider: GLOBAL_BLUE
supportIndicator: '0'
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/rule/verify:
servers:
- url: https://api.shift4test.com/api/rest/v1
description: Host Direct Test URL
- url: https://api.shift4api.net/api/rest/v1
description: Host Direct Production URL
post:
tags:
- Rule
summary: Rule Verification
operationId: ruleverify
security:
- AccessToken: []
description: >
Used to check for various processing rules such as surcharge
eligibility.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
See the [JSON Body Schemas](/guides/quickstart#json-body-schemas) for
more details on the various JSON body formats.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/rules_verify_token_gtv'
- $ref: '#/components/schemas/rules_verify_p2pe_idtech'
- $ref: '#/components/schemas/rules_verify_p2pe_tdesdukpt_emv'
- $ref: '#/components/schemas/rules_verify_p2pe_tdesdukpt_msr'
- $ref: '#/components/schemas/rules_verify_p2pe_onguardsde_emv'
- $ref: '#/components/schemas/rules_verify_p2pe_onguardsde_msr'
- $ref: '#/components/schemas/rules_verify_unencryptedcard'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/DateTime'
amount:
type: object
properties:
total:
type: number
maxLength: 14
description: >
The total amount being charged for a particular
transaction.
If the `ruleCheck` array contained `SURCHARGE`
in the request and the card is surcharge
eligible the `amount.total` value will be
incremented by the `amount.surcharge` value. For
example, if the rule verification request had
`amount.total = 100` and the
`surcharge.percentage` was 1.5%, the rule
verification response would include
`amount.total = 101.50` and `amount.surcharge =
1.50`
surcharge:
type: number
maxLength: 14
description: >
**Conditional: Returned if the `ruleCheck` array
contained `SURCHARGE` in the request and the
card is surcharge eligible.**
The surcharge fee amount that can be applied to
the transaction. The fee amount is also added
into `amount.total`. For example, if the rule
verification request had `amount.total = 100`
and the `surcharge.percentage` was 1.5%, the
rule verification response would include
`amount.total = 101.50` and `amount.surcharge =
1.50`
card:
type: object
properties:
number:
$ref: '#/components/schemas/CardMaskedNumber'
token:
$ref: '#/components/schemas/CardTokenResponse'
type:
$ref: '#/components/schemas/CardTypeResp'
surcharge:
type: object
description: >
Returned if the `ruleCheck` array contained
`SURCHARGE` in the request.
properties:
result:
$ref: '#/components/schemas/SurchargeResult'
transactionId:
$ref: '#/components/schemas/RulesTransactionId'
percentage:
$ref: '#/components/schemas/SurchargePercentage'
transaction:
type: object
properties:
invoice:
$ref: '#/components/schemas/TransactionInvoice'
vendorReference:
$ref: '#/components/schemas/TransactionVendorReference'
authSource:
$ref: '#/components/schemas/TransactionAuthSource'
merchant:
$ref: '#/components/schemas/MerchantResponse'
clerk:
$ref: '#/components/schemas/ClerkOptional'
currencyCode:
$ref: '#/components/schemas/CurrencyCode'
universalToken:
$ref: '#/components/schemas/UniversalToken'
server:
$ref: '#/components/schemas/Server'
example:
result:
- dateTime: '2024-05-21T09:18:23.283-07:00'
amount:
total: 163.2
surcharge: 3.2
card:
number: XXXXXXXXXXXX1119
token:
value: '8048471746471119'
type: VS
surcharge:
result: P
transactionId: string
percentage: 2
transaction:
invoice: '0510093358'
vendorReference: 12382-01
merchant:
mid: 15877
name: Merchant XYZ
server:
name: TM01CE
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/paymentlinks/create:
post:
servers:
- url: https://api.shift4.com/api/rest/v1
description: Host Direct URL
tags:
- Payment Links
summary: Create Link
operationId: paymentslinkcreate
security:
- AccessToken: []
description: >
Used to send out a link via the Payment Links system
Set `paymentLink.type` to choose the flow:
- `line_items` (default) — a standard payment flow. Provide the products
in `paymentLink.lineItems`.
- `card_verification` — performs a $0 authorization to confirm the card
is valid and save it on file **without** charging it. These links take
**no** `lineItems`, but **require** `paymentLink.currency` and a
`customer` (a new inline customer or an existing one referenced by
`id`).
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- paymentLink
properties:
paymentLink:
$ref: '#/components/schemas/PaymentLinkRequest'
customer:
$ref: '#/components/schemas/PaymentLinksCustomer'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
$ref: '#/components/schemas/PaymentLinkResponse'
customer:
$ref: '#/components/schemas/PaymentLinksCustomerResponse'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/paymentlinks/list:
get:
servers:
- url: https://api.shift4.com/api/rest/v1
description: Host Direct URL
tags:
- Payment Links
summary: List Links
operationId: paymentslinklist
security:
- AccessToken: []
description: >
Used to retrieve a list of links via the Payment Links system
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/PaymentLinksLimit'
- $ref: '#/components/parameters/PaymentLinksStartingAfterId'
- $ref: '#/components/parameters/PaymentLinksEndingBeforeId'
- $ref: '#/components/parameters/PaymentLinksDateTimeAfter'
- $ref: '#/components/parameters/PaymentLinksDateTimeBefore'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
hasMore:
$ref: '#/components/schemas/PaymentLinksHasMore'
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
$ref: '#/components/schemas/PaymentLinkResponse'
customer:
$ref: '#/components/schemas/PaymentLinksCustomerResponse'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/paymentlinks/retrieve:
get:
servers:
- url: https://api.shift4.com/api/rest/v1
description: Host Direct URL
tags:
- Payment Links
summary: Retrieve Link
operationId: paymentslinkretrieve
security:
- AccessToken: []
description: >
Used to retrieve a single link via the Payment Links system
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/PaymentLinksId'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
$ref: '#/components/schemas/PaymentLinkResponse'
customer:
$ref: '#/components/schemas/PaymentLinksCustomerResponse'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/paymentlinks/update:
post:
servers:
- url: https://api.shift4.com/api/rest/v1
description: Host Direct URL
tags:
- Payment Links
summary: Update Link
operationId: paymentslinkupdate
security:
- AccessToken: []
description: >
Used to update an existing payment link.
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/PaymentLinksId'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
paymentLink:
$ref: '#/components/schemas/PaymentLinkUpdateRequest'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
$ref: '#/components/schemas/PaymentLinkResponse'
customer:
$ref: '#/components/schemas/PaymentLinksCustomerResponse'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/checkoutsessions/list:
get:
servers:
- url: https://api.shift4.com/api/rest/v1
description: Host Direct URL
tags:
- Checkout Sessions
summary: List Checkout Sessions
operationId: checkoutsessionslist
security:
- AccessToken: []
description: >
Used to retrieve a list of checkout sessions via the Payment Links
system
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/PaymentLinksLimit'
- $ref: '#/components/parameters/PaymentLinksStartingAfterId'
- $ref: '#/components/parameters/PaymentLinksEndingBeforeId'
- $ref: '#/components/parameters/PaymentLinksDateTimeAfter'
- $ref: '#/components/parameters/PaymentLinksDateTimeBefore'
- $ref: '#/components/parameters/PaymentLinksIdOptional'
- $ref: '#/components/parameters/CheckoutSessionsStatus'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
hasMore:
$ref: '#/components/schemas/PaymentLinksHasMore'
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
type: object
properties:
id:
$ref: '#/components/schemas/PaymentLinkId'
checkoutSession:
$ref: '#/components/schemas/CheckoutSessionResponse'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
/checkoutsessions/retrieve:
get:
servers:
- url: https://api.shift4.com/api/rest/v1
description: Host Direct URL
tags:
- Checkout Sessions
summary: Retrieve Checkout Session
operationId: checkoutsessionsretrieve
security:
- AccessToken: []
description: >
Used to retrieve a single checkout session via the Payment Links system
**Integration Methods:**
- Host Direct
See the [Integration Methods](/guides/quickstart#integration-methods)
and [URLs Section](/guides/quickstart#urls) sections of the Development
Quick Start guide for details regarding each processing option.
parameters:
- $ref: '#/components/parameters/InterfaceVersion'
- $ref: '#/components/parameters/InterfaceName'
- $ref: '#/components/parameters/CompanyName'
- $ref: '#/components/parameters/AccessToken'
- $ref: '#/components/parameters/CheckoutSessionsId'
responses:
'200':
description: Request was processed
content:
application/json:
schema:
properties:
result:
type: array
items:
type: object
properties:
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
checkoutSession:
$ref: '#/components/schemas/CheckoutSessionResponse'
'400':
$ref: '#/components/responses/ErrorResponse'
'504':
$ref: '#/components/responses/TimeoutResponse'
webhooks:
ach-notification:
post:
tags:
- ACH
summary: Notification
description: >
This is an outbound HTTP POST message from the Shift4 gateway to the
merchant's environment that provides status of the ach request. This
notification request will be sent from Shift4 to the URL provided in the
merchant's boarding configuration.
This requires the interface vendor to establish a listening service to
receive these requests.
operationId: achnotification
security:
- {}
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/webhook_ach_verification_status_update'
- $ref: '#/components/schemas/webhook_ach_sale_status_update'
- $ref: '#/components/schemas/webhook_ach_refund_status_update'
- $ref: '#/components/schemas/webhook_ach_dispute_initiated'
- $ref: '#/components/schemas/webhook_ach_dispute_status_update'
- $ref: '#/components/schemas/webhook_ach_distribute_status_update'
responses:
'200':
description: >
Return 200 status to indicate that the Notification was received
successfully.
paymentlinks-notification:
post:
servers:
- url: https://api.merchant.com
tags:
- Payment Links
summary: Payment Links Notification
description: >
This is an outbound HTTP POST message from the Shift4 gateway to the
merchant's environment that provides a status of the Payment Links
request. This notification request will be sent from Shift4 to the URL
provided in the merchant's boarding configuration.
This requires the interface vendor to establish a listening service to
receive these requests.
operationId: paymentlinksnotification
security:
- {}
requestBody:
content:
application/json:
schema:
properties:
event:
type: object
properties:
type:
type: string
enum:
- payment_link_created
- payment_link_updated
description: >
Occurs when the status of the Payment Links request is
updated.
| Value | Description
|
|----------------------|--------------------------------|
| payment_link_created | Payment Link has been created.
|
| payment_link_updated | Payment Link has been updated.
|
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
$ref: '#/components/schemas/PaymentLinkResponse'
customer:
$ref: '#/components/schemas/PaymentLinksCustomerResponse'
metadata:
$ref: '#/components/schemas/PaymentLinksMetadata'
responses:
'200':
description: >
Return 200 status to indicate that the Notification was received
successfully.
checkoutsessions-notification:
post:
servers:
- url: https://api.merchant.com
tags:
- Checkout Sessions
summary: Checkout Sessions Notification
description: >
This is an outbound HTTP POST message from the Shift4 gateway to the
merchant's environment that provides a status of the checkout session.
This notification request will be sent from Shift4 to the URL provided
in the merchant's boarding configuration.
This requires the interface vendor to establish a listening service to
receive these requests.
operationId: checkoutsessionsnotification
security:
- {}
requestBody:
content:
application/json:
schema:
properties:
event:
type: object
properties:
type:
type: string
enum:
- checkout_session_completed
description: >
Occurs when the status of the Checkout Session is
updated.
| Value |
Description |
|-----------------------------------------|---------------------------------------------------|
| checkout_session_completed | Checkout
session has been completed. |
dateTime:
$ref: '#/components/schemas/PaymentLinksDateTime'
paymentLink:
type: object
properties:
id:
$ref: '#/components/schemas/PaymentLinkId'
checkoutSession:
$ref: '#/components/schemas/CheckoutSessionResponse'
responses:
'200':
description: >
Return 200 status to indicate that the Notification was received
successfully.