Shift4 Transactions API

The Transactions API from Shift4 — 8 operation(s) for transactions.

Operations 9

POST /transactions/authorization Authorization #
POST /transactions/capture Capture #
POST /transactions/sale Sale/Purchase #
POST /transactions/refund Refund #
GET /transactions/invoice Invoice Information #
DELETE /transactions/invoice Void #
POST /transactions/manualauthorization Manual Authorization #
POST /transactions/manualsale Manual Sale #
POST /transactions/signature Upload Signature #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/shift4-transactions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

shift4-transactions-api-openapi.yml Raw ↑
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 

# --- truncated at 32 KB (595 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/shift4/refs/heads/main/openapi/shift4-transactions-api-openapi.yml