openapi: 3.2.0 info: version: 1.7.57 title: Shift4 Payment Transactions 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 tags: - name: Transactions paths: /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. \n\n*Note: The DELETE request does not support a request body. Sending an empty request body may result in an error.*\n\n**Integration Methods:**\n- Host Direct\n- Locally Installed UTG\n- Commerce Engine For On Premise\n- Commerce Engine For Cloud\n\nSee 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.\n" 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' components: schemas: P2PEType0102IDTECH: type: object required: - data - format properties: data: $ref: '#/components/schemas/P2PEData' format: $ref: '#/components/schemas/P2PEFormatIDTech' 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' 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. ' 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. ' 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** ' 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. ' 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. ' 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). ' CardResponseVoid: type: object properties: entryMode: $ref: '#/components/schemas/CardEntryMode' number: $ref: '#/components/schemas/CardMaskedNumber' type: $ref: '#/components/schemas/CardTypeResp' token: $ref: '#/components/schemas/CardTokenResponse' AutoRentalPostalCode: type: string maxLength: 9 example: '83145' description: 'Postal Code where rental car was picked up in U.S. postal abbreviation format. ' 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.** ' 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. ' 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' 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. ' 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_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. \n\nValue|Description\n-----|-----------\nM | Manual Entry\n" 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' TransactionVendorReference: type: string maxLength: 50 example: 12382-01 description: 'Optional field for information that can be searched in the merchant portal. ' AirlineFlightLegsTripLegInfo: type: string maxLength: 35 example: Trip Leg Info 1 description: 'Description of leg or stage of trip. ' ReportingDataCustomerInfoBoardingPriority: type: string example: '3' maxLength: 3 description: 'Customer''s boarding priority ' 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. ' 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_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 CardToken: type: object description: '**Conditional: Send this object when using a card on file.** ' properties: value: $ref: '#/components/schemas/CardTokenValue' 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). ' 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. ' Server: type: object readOnly: true properties: name: $ref: '#/components/schemas/ServerName' 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' 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). ' 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 ServerName: type: string maxLength: 50 example: TM01CE description: 'The name of the server that processed the request. ' 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. ' ReportingDataPspDataPspResponseText: type: string maxLength: 256 example: Payment Approved description: 'PSP host response description/text. ' 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' ErrorLongText: type: string maxLength: 255 readOnly: true example: Card type not recognized description: 'Extended error message that is returned if an error condition exists. ' 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.** ' RiskResponseDeny: type: object description: 'Returned if risk assessment was performed and not approved. ' properties: tranId: $ref: '#/components/schemas/RiskTranId' assessment: $ref: '#/components/schemas/RiskAssessmentDeny' 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' 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' 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. ' LighthouseRequest: type: object writeOnly: true properties: data: $ref: '#/components/schemas/LighthouseDataRequest' 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' 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.** ' 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' HotelAdditionalChargesLaundry: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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.** ' 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. ' 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. ' HotelRoomRatesNights: type: integer maxLength: 2 example: 2 description: 'The number of nights being charged at this rate. ' 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 ' 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' 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. ' 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 ' AirlineNumberOfPassengers: type: number maxLength: 3 example: 5 description: 'The number of passengers in the transaction. ' 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) ' ReportingDataCustomerInfoDateOfBirth: type: string example: 01281980 minLength: 8 maxLength: 8 description: 'Customer''s date of birth in MMDDYYYY format ' 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`. | ' 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' 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). ' 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` ' 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 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. ' AirlineExchangeTicketNumber: type: string maxLength: 15 example: '507212345678768' description: 'The original ticket number that was replaced by a new ticket number. ' 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. ' AmountTip: type: number maxLength: 14 example: 20 description: '**Conditional: Send in the request if a tip is included.** The tip amount of the transaction. ' 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. ' ReportingDataPspDataPspTid: type: string maxLength: 32 example: '12345678' description: 'PSP terminal identifier (TID). ' 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. ' CardTokenRequiredLegacy: type: object required: - value properties: value: $ref: '#/components/schemas/CardTokenValue' serialNumber: $ref: '#/components/schemas/CardTokenSerialNumber' 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. ' 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. ' 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. ' PurchaseCard: type: object required: - customerReference - destinationPostalCode - productDescriptors properties: customerReference: $ref: '#/components/schemas/PurchaseCardCustomerReference' destinationPostalCode: $ref: '#/components/schemas/PurchaseCardDestinationPostalCode' productDescriptors: $ref: '#/components/schemas/PurchaseCardProductDescriptors' 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 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`. ' 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' 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.\n\nValue | Description \n-------|---------------\nC | Change to existing ticket\nN | New ticket\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' 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' AirlineFlightLegsCarrierCode: type: string maxLength: 2 example: DL description: 'Code indicating name of carrier (United Airlines, Jet Blue, etc.) for the leg. ' 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' 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). ' AutoRentalRegion: type: string maxLength: 2 example: NV description: 'Region (State) where rental car was picked up in U.S. postal abbreviation format. ' DeviceOnlyTIDResponse: type: object properties: terminalId: $ref: '#/components/schemas/DeviceTerminalIdRequired' AutoAdditionalChargesGasoline: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N IIASAmount: type: number maxLength: 14 example: 34 description: 'The subtotal for this type of healthcare expenses. ' 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. ' 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. ' 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. ' 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). ' AutoAdditionalChargesOneWayServiceFee: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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. ' 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. ' UniversalToken: type: object properties: value: $ref: '#/components/schemas/UniversalTokenValue' 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' 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. ' 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** ' 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. ' 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' 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' AmountTaxIndicator: type: string maxLength: 1 enum: - Y - N example: Y description: 'Value|Description -----|----------- Y | Tax is included N | Tax is not included ' 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. ' 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 | ' 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. ' 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' 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. ' UISuppressFinalResult: type: boolean example: 'true' description: 'When `true`, the terminal suppresses the final transaction result screen. ' 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' 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 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' 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. \n\nFor 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`\n" AirlineFlightLegsFlightNumber: type: string maxLength: 5 example: '2490' description: 'Number of the airline flight to be taken on Leg of the trip. ' 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' ReportingDataCustomerInfoGender: type: string example: male maxLength: 20 description: 'Customer''s gender ' 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' 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. ' 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.** ' 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 | ' HostResponseReasonCode: type: string maxLength: 3 example: '04' description: "Returns a response code from the host.\n\nValue |Category|Description\n------|--------|-----------\n04 | 1 | Pick Up Card\n07 | 1 | Pick Up Card, Special Condition\n12 | 1 | Invalid Transaction\n15 | 1 | No Such Issuer\n41 | 1 | Lost Card\n43 | 1 | Stolen Card\n46 | 1 | Closed Account \n57 | 1 | Trans. not Permitted to Cardholder\nR0 | 1 | Stop Payment Order\nR1 | 1 | Revocation of Auth Order\nR3 | 1 | Revocation of all Authorization \n03 | 2 | Invalid Merchant\n19 | 2 | Re-enter Transaction\n51 | 2 | Not sufficient funds\n59 | 2 | Suspected Fraud\n61 | 2 | Exceeds approval amount limit\n62 | 2 | Restricted Card (card invalid in region or country)\n65 | 2 | Exceeds withdrawal frequency limit\n75 | 2 | Allowable number of PIN-entry tried exceeded\n78 | 2 | Blocked, first used\n86 | 2 | Cannot Verify PIN\n91 | 2 | Issuer or switch inoperative\n93 | 2 | Transaction cannot be completed - violation of law \n96 | 2 | System malfunction\nN3 | 2 | Cash service not available\nN4 | 2 | Cash request exceeds issuer of approved limit\n14 | 3 | Invalid Account\n54 | 3 | Expired card or expiration date missing\n55 | 3 | PIN incorrect or missing\n70 | 3 | PIN data required\n82 | 3 | Negative Online CAM, dCVV, iCVV, or CVV results\n1A | 3 | Additional customer authentication required\nN7 | 3 | Decline for CVV2 Failure\n05 | 4 | Do not honor\n06 | 4 | General error \n08 | 4 | Honor MasterCard with ID\n13 | 4 | Invalid amount \n21 | 4 | Invalid amount\n30 | 4 | Format error\n39 | 4 | No credit account\n52 | 4 | No checking account\n53 | 4 | No savings account\n58 | 4 | Transaction not permitted-Terminal\n63 | 4 | Security violation \n66 | 4 | Card Acceptor call Acquirer’s security dept\n67 | 4 | Hard capture (requires ATM pick-up)\n68 | 4 | Response received too late\n71 | 4 | PIN Not Changed\n76 | 4 | Unsolicited reversal\n77 | 4 | Invalid Data including AVS failures.\n79 | 4 | Already reversed at switch\n80 | 4 | No Financial impact\n81 | 4 | Cryptographic error \n92 | 4 | Unable to route transaction\n94 | 4 | Duplicate Transaction\nB1 | 4 | Surcharge amount not permitted on debit cards or EBTfoodstamps\nB2 | 4 | Surcharge amount not supported by debit network issuer \nCV | 4 | Card Type VerificationError\nEA | 4 | Acct Length Err\nEB | 4 | Check Digit Err\nEC | 4 | CID Format Error\nHV | 4 | Hierarchy Verification Error\nN0 | 4 | Force STIP\nP5 | 4 | PIN Change/Unblock failed\nP6 | 4 | New PIN not accepted\nZ3 | 4 | Unable to go online; offline-declined\n\\-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. |\nD2 | 4 | Decline Retry Later\n\nAll other, generic declines may be classified as a Category 4 response code.\n" CustomerMiddleName: type: string maxLength: 30 example: Andrew description: 'Specifies a consumer’s middle name. ' AutoDriver: type: object properties: license: $ref: '#/components/schemas/AutoDriverLicense' name: $ref: '#/components/schemas/AutoDriverName' taxNumber: $ref: '#/components/schemas/AutoDriverTaxNumber' 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' AutoReturnRegion: type: string maxLength: 2 example: NV description: 'Region (State) where rental car was returned in U.S. postal abbreviation format. ' 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' 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` ' 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. ' 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`. ' 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 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_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_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' 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 ' HotelRoomRates: type: object properties: nights: $ref: '#/components/schemas/HotelRoomRatesNights' rate: $ref: '#/components/schemas/HotelRoomRatesRate' HotelAdditionalChargesOther: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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). ' RulesTransactionId: type: string readOnly: true maxLength: 20 description: 'Transaction ID for the rule check ' HostResponseReasonDescription: type: string maxLength: 73 example: Pick Up Card description: 'Returns a description from the host. ' MerchantMID: type: number maxLength: 10 example: 15877 description: 'The merchant ID associated with the merchant account. ' 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' DCCForeignAmount: type: number maxLength: 14 example: 180 description: 'Foreign Currency Amount ' 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. ' 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. ' 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' 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.\n\nValue| Description\n-----|------------\nAX | American Express\nAP | Alipay\nBC | Backed Card \nCI | Citgo \nDB | Debit card\nGC | Gift Card\nJC | JCB\nMC | Mastercard\nNS | Discover/JCB/Novus\nPL | Private Label\nSC | Sears Canada\nVS | Visa\nWP | WeChat Pay\nYC | IT’S YOUR CARD\n" 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 ' 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.** ' 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' 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. ' ReportingDataPspDataPspTxnTraceNo: type: string maxLength: 32 example: '000013' description: 'PSP transaction trace number. ' 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. ' ReportingDataPspDataPspResponseCode: type: string maxLength: 16 example: '00' description: 'PSP host response code. ' 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' 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. \n\nValue|Description\n-----|-----------\nM | Manual Entry\n" 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' AutoAdditionalChargesMileage: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N AirlineFlightLegsOriginAirportCode: type: string maxLength: 5 example: AUH description: 'Indicates origination city''s airport code for the leg. ' 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. ' 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' 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_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_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' 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' EMVFallbackOnly: type: object description: '**Conditional: Required when processing an EMV fallback transaction.** ' properties: fallback: $ref: '#/components/schemas/EMVFallback' CardTokenRequired: type: object required: - value properties: value: $ref: '#/components/schemas/CardTokenValue' HotelRoomRatesRate: type: number maxLength: 14 example: 159.95 description: 'The per night room rate. ' 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) ' DeviceModel: type: string maxLength: 50 example: A800 description: '**Conditional: Required when using a non-UTG-controlled device.** Specifies the model of the device. ' 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' 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 ' 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' TransactionDeferredAuth: type: string minLength: 1 maxLength: 1 example: D enum: - D description: "**Conditional: Must be sent if the transaction is deferred**\n\nSpecifies 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.\n\nValue | Description \n-------|-----------------------------\nD | Transaction is a deferred authorization\n" TransactionAmex: type: object properties: propertyCode: $ref: '#/components/schemas/AmexPropertyCode' 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' 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' TransactionPinBlock: type: string maxLength: 16 example: '1234567890123456' description: 'Encrypted PIN data received from a POS-controlled PIN pad (not controlled by the UTG). ' 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' 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. \n\nValue | Description \n-------|---------------\nR | Round-Trip\nO | One Way\nM | Multi-City\n" 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 ' 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 ' 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:\n \n|Value | Description\n|----------------|------------\n|ksn | The key serial number (24 byte hex)\n|track indicator | `1` = track 1 only
`2` = track 2 only
`3` = manual entry
`4` = dual track
\n|length | The length of the encrypted data\n|encrypted data | Encrypted track/manual entry data\n\nDual Track Example: `FFFF495A0000000200000005:4:0128:F48C880DE0DAF549E642C5CC25E65ADF9947E7EB0636DB80C4A490B4C0930AEF64B7201505343CED533A2AE9AFABFE6453875F705519A8109362197CA3BD8DA0FE90DB3F954B9CDA0DB58BDA3330862ADD28CB31EFDA7C641575E33D395D8BFF72EBF0B1FF9630DB0EAB080FE8C9B2FAC28127CDC48CA9F7D532D5BDE4CCE270`\n\nManual entry Example: `FFFF495A0000000200000006:3:0032:E394820DB97AF927B9B5E05F356750BBF5DFCCB3BC18B87E8FC3C9BC596229E7`\n" 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 ReportingDataCustomerInfoBaggage: type: string example: carryon maxLength: 20 description: 'Description for the customer''s baggage ' 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. ' 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. ' 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. ' AmountRefund: type: object required: - tax - total properties: total: $ref: '#/components/schemas/AmountTotal' tax: $ref: '#/components/schemas/AmountTax' 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.\n\nValue | Description \n-------|---------------\nA | Passenger transport ancillary purchase cancellation\nB | Airline ticket and passenger transport ancillary purchase cancellation\nC | Airline ticket cancellation\nO | Other\nP | Partial refund of airline ticket\n" 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. ' 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' 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' 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. ' 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' 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' 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' ReportingDataCustomerInfoLastName: type: string example: Smith maxLength: 30 description: 'Customer''s last name ' HotelCheckOutRefund: type: object description: '**Conditional: Utilize this object for Hotel transactions** ' properties: arrivalDateTime: $ref: '#/components/schemas/HotelArrivalDateTime' departureDateTime: $ref: '#/components/schemas/HotelDepartureDateTime' AirlineNumberOfCarriers: type: number maxLength: 2 example: 5 description: 'This field contains the number of airline carriers. ' 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' 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.** ' AutoRentalCountryCode: type: string maxLength: 3 example: '840' description: 'Country where rental card was picked up. ' HotelAdditionalChargesRestaurant: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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. ' MerchantName: type: string maxLength: 22 example: Merchant XYZ description: 'The merchant’s business name as configured with Shift4. ' 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' AutoCheckIn: type: object description: '**Conditional: Utilize this object for Auto Rental transactions** ' properties: estimatedDays: $ref: '#/components/schemas/AutoEstimatedDays' 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_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_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 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. ' HotelAdditionalChargesTelephone: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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' 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. ' ThreeDSecureCryptogram: type: string example: AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw== maxLength: 80 description: 'Ecommerce Cryptogram information ' 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. ' 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. ' 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. ' 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.\n\nValue | Description \n------|---------------\nBF | Bundled Service\nBG | Baggage Fee\nCF | Change Fee\nCG | Cargo\nCO | Carbon Offset\nFF | Frequent Flyer\nGF | Gift Card\nGT | Ground Transport\nIE | In-Flight Entertainment\nLG | Lounge\nMD | Medical\nML | Meal/Beverage\nOT | Other\nPA | Passenger Assist Fee\nPT | Pets\nSA | Seat Fees\nSB | Standby\nSF | Service Fee\nST | Store\nTS | Travel Service\nUN | Unaccompanied Travel\nUP | Upgrades\nWI | Wi-Fi\n" 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. ' CustomerEmailAddress: type: string maxLength: 80 example: john.smith@email.com description: 'Customer email address. ' 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. \n" mPOS: type: object description: '**Conditional: Send in the request if transaction is coming from an mPOS** ' properties: type: $ref: '#/components/schemas/mPOSType' AutoDriverLicense: type: string maxLength: 20 example: '1889624485' description: 'The cardholder''s driver''s license number. ' 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. ' 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. ' 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' 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. ' 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 ' 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. ' 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. ' 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' 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' 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' 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. ' 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. ' 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' 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] ' Signature: type: object properties: data: $ref: '#/components/schemas/SignatureData' format: $ref: '#/components/schemas/SignatureFormat' 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' 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 AirlineCarrierName: type: string maxLength: 19 example: American Airlines description: 'The name of the airline carrier issuing the ticket. ' ReportingDataCustomerInfoSeats: type: string example: 1A maxLength: 3 description: 'Customer''s assigned seat ' 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.** ' AutoReturnCity: type: string maxLength: 18 example: Las Vegas description: 'City where rental car was returned. ' 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' DeviceCommerceEngineCloud: type: object required: - cloud - manufacturer - serialNumber properties: cloud: $ref: '#/components/schemas/DeviceCloud' manufacturer: $ref: '#/components/schemas/DeviceManufacturer' serialNumber: $ref: '#/components/schemas/DeviceSerialNumber' 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. ' 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' 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) ' 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. ' 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** ' 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. ' UIMode: type: string enum: - light - dark example: dark description: 'Set the UI to light mode by sending `light` or dark mode by sending `dark` ' 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. ' MerchantResponse: type: object properties: mid: $ref: '#/components/schemas/MerchantMID' name: $ref: '#/components/schemas/MerchantName' 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' 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. ' 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. ' 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_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_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' 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. ' ReportingDataPspDataPspTxnTime: type: string format: 24-hour time example: '235959' description: 'PSP transaction time (hhmmss) ' AutoAdditionalChargesViolationFee: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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' 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` ' 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.** ' AutoRentalCity: type: string maxLength: 18 example: Las Vegas description: 'City where rental car was picked up. ' 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' 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.\n\nValue | Description \n------|---------------\n01 | Passenger Ticket\n02 | Additional Collection\n03 | Excess Baggage\n04 | Misc. Charge Order (MCO) / Prepaid Ticket Auth\n05 | Special Service Ticket\n06 | Supported Refund\n07 | Unsupported Refund\n08 | Lost Ticket Application\n09 | Tour Order Voucher\n10 | Ticket by Mail\n11 | Undercharge Adjustment\n12 | Group Ticket\n13 | Exchange Adjustment\n14 | SPD/Air Freight\n15 | In-flight Adjustment\n16 | Agency Passenger Ticket\n17 | Agency Tour Order/Voucher\n18 | Agency Misc. Charge Order (MCO)\n19 | Agency Exchange Order\n20 | Agency Group Ticket\n21 | Debit Adjustment Duplicate Refund/Use\n22 | In-flight Merchandise Ordered\n23 | Catalogue Merchandise Ordered\n24 | In-flight Phone Charges\n25 | Frequent Flyer Fee/Purchase\n26 | Kennel Charge\n27 | Animal Transportation Charge\n28 | Firearms Case\n29 | Upgrade Charge\n30 | Credit Unused Transportation\n31 | Credit Class of Service Adjustment\n32 | Credit Denied Boarding\n33 | Credit Misc. Refund\n34 | Credit Lost Ticket Refund\n35 | Credit Exchange Refund\n36 | Credit Overcharge Adjustment\n37 | Credit Multiple Unused Tickets\n38 | Exchange Order\n39 | Self-Service Ticket(s)\n41 | In-flight Duty Free Purchase\n42 | Senior Citizen Discount Booklets\n43 | Club Membership Fee\n44 | Coupon Book\n45 | In-flight Charges\n46 | Tour Deposit\n47 | Frequent Flyer Overnight Delivery Charge\n48 | Frequent Flyer Fulfillment\n49 | Small Package Delivery\n50 | Vendor Sale\n51 | Miscellaneous Tax(es) Fee(s)\n52 | Travel Agency Fee\n60 | Vendor Refund Credit\n64 | Duty Free Sale\n65 | Preferred Seat Upgrade\n66 | Cabin Upgrade\n67 | Lounge/Club Access or Day Pass\n68 | Agent Assisted Reservation. Ticketing Fee\n69 | Ticket Change or Cancel Fee\n70 | Trip Insurance\n71 | Unaccompanied Minor\n72 | Standby Fee\n73 | Curbside Baggage\n74 | Inflight Medical Equipment\n75 | Ticket or Pass Print Fee\n76 | Checked Sporting/Special Equipment\n77 | Dry Ice Fee\n78 | Mail/Postage Fee\n79 | Club Membership Fee - Temporary/Trial\n80 | Frequent Flyer Activation/Reinstatement\n81 | Gift Certificate\n82 | Onboard/Inflight Prepaid Voucher\n83 | Optional Services Fee\n84 | Advanced Purchase - Excess Baggage\n85 | Advanced Purchase - Preferred Seat Upgrade\n86 | Advanced Purchase - Cabin Upgrade\n87 | Advanced Purchase - Optional Services\n88 | WiFi\n89 | Packages\n90 | Inflight Entertainment/Internet Access\n91 | Overweight Bag Fee\n92 | Sleep Sets\n93 | Special Purchase Fee\n" HotelAdditionalChargesGiftShop: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N 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' TransactionExemptionReason: type: string example: '01' enum: - '01' - '02' - '04' description: "**Conditional: required when sending `transaction.exemptionAction = 02`**\n\nValue | Description \n-------|-----------------------------\n01 | Low value transaction (below 30 EUR or equivalent)\n02 | Low risk transaction (TRA)1\n04 | Secure Corporate Cards 3\n" 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 | ' 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). ' 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' ReportingDataPspDataPspMid: type: string maxLength: 32 example: '123456' description: 'PSP merchant identifier (MID). ' 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. ' CardBalance: type: object readOnly: true properties: amount: $ref: '#/components/schemas/BalanceAmount' 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.** ' 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.** ' 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' 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" ' 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`. ' 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. ' CardTokenResponse: type: object properties: value: $ref: '#/components/schemas/CardTokenValue' CardExpirationDateResponse: type: integer minLength: 3 maxLength: 4 format: MMYY example: 1230 description: "**Conditional: Requires API Option \"RETURNEXPDATE\".**\n\nCard expiration date in MMYY format. This value will only be populated if \"RETURNEXPDATE\" is included in the `apiOptions` array. \n" 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' 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.** ' 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. ' 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' 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. ' HostResponse: type: object description: "Returns the response code detailing why the transaction was declined. \n\n**Notes:**\n - **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.**\n - **Support for this field is dependent on the processor. Our demo environment does not return this field in the response.**\n" properties: reasonCode: $ref: '#/components/schemas/HostResponseReasonCode' reasonDescription: $ref: '#/components/schemas/HostResponseReasonDescription' reattemptPermission: $ref: '#/components/schemas/HostResponseReattemptPermission' ErrorShortText: type: string maxLength: 16 readOnly: true example: NOT IN CARDRANGE description: 'Abbreviated error message that is always returned if an error condition exists ' 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. ' 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` ' 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.\n\nValue | Description \n-------|---------------\nO | Stopover allowed\nX | Stopover not allowed\nD | Destination point\n" IIASAmounts: type: object properties: amount: $ref: '#/components/schemas/IIASAmount' type: $ref: '#/components/schemas/IIASType' 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 ' 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` ' 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. ' ThreeDSecureAuthenticationSourceWallet: type: string enum: - '1' writeOnly: true example: '1' minLength: 1 maxLength: 1 description: 'Authentication Source for the cryptogram value. Value| Description -----|------------ 1 | inApp ' 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' 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' 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. ' ThreeDSecureAuthenticationSource: type: string enum: - '2' writeOnly: true example: '2' minLength: 1 maxLength: 1 description: 'Authentication Source for the cryptogram value. Value| Description -----|------------ 2 | ACS ' 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 ' 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' 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. \n\nValue | Description | Details\n-------|---------------------------------------------------------------------------------------|--------\nA | Approved | The transaction is approved.\nC | 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.)\nD | 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.\ne | [Error](/guides/appendices/error-codes) | There is an error condition.\nf | [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.\nP | [Partial approval](/guides/advanced-concepts/partial-approval) | A partial approval has occurred. Check `amount.total` for the approved amount.\nR | Voice referral | The transaction requires a voice referral.\n[blank]| Status is unknown | The approval status is unknown.\nX | Expired card | There is an error condition due to the card being expired.\nS | 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.\nI | 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.\nJ | 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.\n" 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.\n\nValue | Description \n-------|---------------\nTKT | Ticket Purchase\nREF | Refund\nEXC | Exchange Ticket\nMSC | Miscellaneous (non-Ticket Purchase- and non-Exchange Ticket-related transactions only)\n" 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 AutoAdditionalChargesLateReturn: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N DCCDisplayUnit: type: number example: 2 description: "Display unit for currency. \n\nIt 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\n" 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' 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. ' 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' AutoRentalAgreement: type: string maxLength: 9 example: '123203592' description: 'Contract number for an auto rental agreement. ' 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' 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) ' AutoDriverTaxNumber: type: string maxLength: 20 example: '192012838' description: 'This field contains the driver’s Tax Identification Number. ' 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' 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. ' ClerkResponse: type: object properties: numericId: $ref: '#/components/schemas/ClerkNumericId' 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. ' 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 ' 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. ' AutoReturnPostalCode: type: string maxLength: 9 example: '17721' description: 'Postal Code where rental car was returned in U.S. postal abbreviation format. ' 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' HotelAdditionalChargesMiniBar: type: string minLength: 1 maxLength: 1 example: Y enum: - Y - N AirlineElectronicTicketIndicator: type: string maxLength: 1 enum: - Y - N example: Y description: "Indicates if an electronic ticket was issued.\n\nValue | Description \n-------|-------------------\nY | Yes\nN | No \n" 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:\n \nValue | Description\n----------------|------------\nksn | The key serial number (24 byte hex)\ntrack indicator | `E` indicating EMV TLV Data\nlength | The length of the encrypted data\nencrypted data | Encrypted TLV containing tags 57 and 5A\n\nExample: `FFFF495A0000000200000002:E:0032:E0AB94F7704E77AB37F81A7E236A1ABC1465C6DFCE43A506240D6E7D6DDA7EA9`\n" 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_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' 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. ' 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. ' EMVTlvDataResponse: type: string readOnly: true example: 910A0102030405060708090A description: 'This field will contain the EMV response tags in standard TLV format. ' 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. ' AirlineFlightLegsDestAirportCode: type: string maxLength: 5 example: YXX description: 'Indicates destination city''s airport code for the leg. ' 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 ' 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' SurchargePercentage: type: number example: 2 maximum: 99.99 description: 'The surcharge percentage that can be applied to a transaction. ' 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. ' 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.\n\nSince Commerce Engine is running directly on the payment device it does not require a `device.terminalId` to be specified. \n" TransactionExemptionAction: type: string example: '02' enum: - '02' description: "Indicates the merchant preference regarding SCA exemption.\n\nValue | Description \n-------|-----------------------------\n02 | Request an exemption as part of the payment request. \n\n\n**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.\n" LighthouseResponse: type: object readOnly: true properties: data: $ref: '#/components/schemas/LighthouseDataResponse' AirlineAncillaryServicesServiceFee: type: number maxLength: 14 example: 2 description: 'This field contains the amount associated with the value provided in ancillary Service Code. ' 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. ' 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. ' AirlineRestrictedTicketIndicator: type: string maxLength: 1 example: '1' enum: - '0' - '1' description: "Indicates whether this ticket is non-refundable.\n\nValue | Description \n-------|-------------------\n0 | No restriction\n1 | Restricted (non-refundable) ticket\n" 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). ' 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 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' PurchaseCardRefund: type: object properties: customerReference: $ref: '#/components/schemas/PurchaseCardCustomerReference' destinationPostalCode: $ref: '#/components/schemas/PurchaseCardDestinationPostalCode' productDescriptors: $ref: '#/components/schemas/PurchaseCardProductDescriptors' 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 ' AirlineFlightLegsServiceClass: type: string maxLength: 2 example: FC description: "Indicates service class for leg.\n\nValue | Description \n-------|---------------\nFC | First Class\nBC | Business Class\nEC | Economy/Coach Class\n" 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.**\n\nThe method used to capture a payment card in an authorization/sale request. \n\nValue|Description\n-----|-----------\nM | Manual Entry\n" 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' 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 ' 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 ' 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. ' AirlineInternetIndicator: type: string maxLength: 1 enum: - Y - N example: Y description: "Indicates if this is an internet transaction.\n\nValue | Description \n-------|-------------------\nY | Yes\nN | No \n" 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**\n\nThe method used to capture a payment card in an authorization/sale request. \n\nValue|Description\n-----|-----------\n1 | Track 1 Only or Dual Track (Track 1 & 2)\n2 | Track 2 Only\nC | EMV Contactless via card or mobile wallet\nE | EMV Chip\nM | Manual Entry\nQ | QR Code\nR | Contactless MSD\n" 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.** ' ReportingDataPspDataPspId: type: string maxLength: 64 example: PSP Name XYZ description: 'PSP identifier / label ' AirlineConjunctionTicketIndicator: type: string maxLength: 1 enum: - Y - N example: N description: "Indicates whether the itinerary contains more than four segments of travel.\n\nValue | Description \n-------|-------------------\nY | Yes\nN | No\n" AutoReturnCountryCode: type: string maxLength: 3 example: '840' description: 'Country where rental card was returned. ' 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' 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. ' ReportingDataPspDataPspTxnDate: type: string format: date example: '20260110' description: 'PSP transaction date (YYYYMMDD). ' 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' 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.** ' 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' AirlineFlightLegsCouponNumber: type: number maxLength: 1 example: 1 description: 'Number of coupons in the ticket for the leg. ' 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' 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. ' AirlineTicketsTicketNumber: type: string maxLength: 15 example: '344567890234567' description: 'The ticket number provided by the Carrier for the passenger. ' 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. ' 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. ' ThreeDSecureProgramProtocol: type: string enum: - '1' - '2' - '3' - '4' - '5' - '6' - '7' - '8' - '9' example: '2' maxLength: 1 description: "Indicates the 3D Secure protocol version. \n\n**Required when processing for merchants in the United States. For merchants outside of the United States use the `threeDSecure.version` field instead.**\n\n |Value| Description\n |-----|----------------------------|\n | 1 | EMV 3-D Secure Version 2.1 |\n | 2 | EMV 3-D Secure Version 2.2 |\n | 3 | EMV 3-D Secure Version 2.3 |\n | 4 | EMV 3-D Secure Version 2.4 |\n | 5 | EMV 3-D Secure Version 2.5 |\n | 6 | EMV 3-D Secure Version 2.6 |\n | 7 | EMV 3-D Secure Version 2.7 |\n | 8 | EMV 3-D Secure Version 2.8 |\n | 9 | EMV 3-D Secure Version 2.9 |\n" TransactionSource: type: string minLength: 1 maxLength: 2 example: '6' enum: - '6' description: "**Conditional: Must be sent when processing transactions on an unattended device.**\n\nTransaction source type. \n\nValue | Description \n-------|-----------------------------\n6 | Unattended Cardholder Activated Terminal (UCAT)\n" 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 ' AutoEstimatedDays: type: integer maxLength: 2 example: 5 description: 'Estimated contract length of car rental. ' 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. ' ThreeDSecureVersion: type: string enum: - '2.0' - 2.1.0 - 2.2.0 example: '2' maxLength: 1 description: "Indicates the 3D Secure protocol version. \n\n**Required when processing for merchants outside of the United States. For merchants in the United States use the `threeDSecure.programProtocol` field instead.**\n" 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 ' mPOSType: type: string enum: - '00' - '01' - '02' - '03' example: '01' description: "mPOS (mobile POS) device type indicator\n\nValue| Description\n-----|------------\n00 | mPOS Accessory/dongle with contact and contactless interfaces, with or without PIN pad.\n01 | Mobile device based contactless only mPOS without PIN support.\n02 | mPOS Accessory/dongle with contact and contactless interfaces and PIN on Glass support \n03 | Mobile device based contactless only mPOS with PIN on Glass support.\n" DeviceSerialNumber: type: string maxLength: 64 example: '1170301234' description: 'Specifies the serial number of the device. ' HotelCheckIn: type: object description: '**Conditional: Utilize this object for Hotel transactions** ' properties: estimatedDays: $ref: '#/components/schemas/HotelEstimatedDays' DCCProvider: type: string enum: - WAY4 - GLOBAL_BLUE example: GLOBAL_BLUE description: 'DCC Provider ' 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. ' AutoDistanceDriven: type: integer maxLength: 5 example: 167 description: 'The amount of distance the cardholder drove the vehicle. ' Clerk: type: object required: - numericId properties: numericId: $ref: '#/components/schemas/ClerkNumericId' 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.**\n\nThe method used to capture a payment card in an authorization/sale request. \n\nValue|Description\n-----|-----------\nM | Manual Entry\n" 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' 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.** ' 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. ' 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' 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' 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.**\n\nThe method used to capture a payment card in an authorization/sale request. \n\nValue|Description\n-----|-----------\nM | Manual Entry\n" 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' 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.** ' 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' AirlineCarrierCode: type: string maxLength: 4 example: '5472' description: 'The code of the airline carrier issuing the ticket. ' ReportingDataCustomerInfoFirstName: type: string example: John maxLength: 30 description: 'Customer''s first name ' P2PEKSN: type: string maxLength: 20 example: 6299495001100E200041 description: 'The key serial number which was used to encrypt the P2PE data. ' 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_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' DeviceManufacturer: type: string enum: - Ingenico - Innowi - PAX - Verifone - Castles - Miura example: PAX description: 'Specifies the company which manufactured the device. ' 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. \n\n\nThis value enables merchants, acquirers, and payment processors to link a payment token to a cardholder’s underlying payment account.\n" 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. \n" 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. ' 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. ' 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) ' AirlineTickets: type: object required: - passengerName - ticketNumber - ticketFare properties: passengerName: $ref: '#/components/schemas/AirlineTicketsPassengerName' ticketNumber: $ref: '#/components/schemas/AirlineTicketsTicketNumber' ticketFare: $ref: '#/components/schemas/AirlineTicketsTicketFare' 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' 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. ' CardMaskedNumber: type: string maxLength: 32 example: XXXXXXXXXXXX1119 description: 'The card number field will always be masked when returned in a response. ' RiskAssessmentDeny: type: string enum: - D example: D description: 'This is the answer to the risk assessment. Value| Description -----|------------ D | Deny. Try another payment method ' 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 ' 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.\n\nValue | Description \n-------|----------------------------\nE | Engine (Online)\nO | Offline\nA | APM (Online)\nF | Payment Platform (Online)\n" AirlineAncillaryServices: type: object required: - serviceCode - serviceFee properties: serviceCode: $ref: '#/components/schemas/AirlineAncillaryServicesServiceCode' serviceFee: $ref: '#/components/schemas/AirlineAncillaryServicesServiceFee' 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 | ' UniversalTokenValue: type: string maxLength: 50 example: 97032276-5944-00000001-16985FD179D description: 'An identifier for a card or payment account across all Shift4 merchants. ' 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' 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' 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' 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' 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.** ' 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. ' parameters: 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. 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`. ' 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: $ % : ^ - ~ ` < > , ? “ ” ‘ ’ { } [ ] \ + = ' 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. ' 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: $ % : ^ - ~ ` < > , ? “ ” ‘ ’ { } [ ] \ + = ' 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: $ % : ^ - ~ < > , ? “ ” ‘ ’ { } [ ] \ + = ' 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 ' examples: 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 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 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 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 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_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_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 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 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 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_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 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 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. \n\nExample:\n ```\n AccessToken: EA79FB05-3AA7-4500-AF9A-73F986FF2C1D\n ```\n" HMAC-SHA256: type: http scheme: hmac-sha256 description: "Authentication using HMAC-256 signatures as the authorization scheme.\n\nSent in the `Authorization` header in the following format:\n\n`Authorization`: **HMAC-SHA256** `Credential`={value}&`Signature`={value}\n\n| Argument | Description |\n|---------------|--------------------------------------------------|\n| HMAC-SHA256 | Authorization scheme. |\n| Credential | The ID of the key used to compute the signature. |\n| Signature | base64 encoded HMACSHA256 value. |\n\nExample: \n ```\n Authorization: HMAC-SHA256 Credential=AESKEY1&Signature=8SFtIc6zQlswxAZqDKXL+BpRmlDvIWyjOwU8wdl0zK4=\n ```\n"