Shift4 ACH API is one of 21 APIs that Shift4 publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include ACH. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an API reference.
This API exposes
5 operations
across 5 paths,
and defines 59 schemas.
It is described by OpenAPI 3.2.0, at version 1.7.57.
Requests are made against 2 base URLs: https://api.shift4test.com/api/rest/v1, https://api.shift4api.net/api/rest/v1.
The identity and technical contract details declared by the specification.
ach_refund_token_gtv
object
5 properties
5 required
webhook_ach_dispute_status_update
object
5 properties
webhook_ach_distribute_status_update
object
5 properties
ACHPlaidLinkTokenClientUserId
string
A unique ID representing the end user. Typically this will be a user ID number from your application. Personally identifiable information, such as an email add…
TransactionResponseCodeACHPlaidLinkToken
string
Code indicating the Shift4 host response. Value | Description | Details -------|-------------|-------- S | Success | The Plaid link token request was successfu…
MerchantMID
number
The merchant ID associated with the merchant account.
AmountACH
object
Object containing information regarding the amount being requested. The total field within the object is required and specifies the amount being requested.
1 property
1 required
TokenACH
object
2 properties
1 required
TransactionOriginalInvoice
string
The invoice number from the original sale. Used to link the refund to the original sale. Note: For US and Canadian processing: Although the invoice number is s…
ACHAccountHolderName
string
ACH account holder's name
TransactionResponseCodeACHDispute
string
Code indicating the Shift4 host response. Value | Description | Details -------|-------------|-------- D | Declined | The ACH request is declined.
ErrorCodeNoCondition
integer
Code indicating the type of error that occurred. Refer to the [Error Codes](/guides/appendices/error-codes) section of this document for more details.
ACHAccountType
string
Bank account type Value | Description ------|--------------- PC | Personal Checking PS | Personal Savings CC | Corporate Checking CS | Corporate Savings
webhook_ach_refund_status_update
object
5 properties
ErrorNoPrimarySecondary
object
4 properties
ServerName
string
The name of the server that processed the request.
TokenTypeACH
string
Specifies the type of token. Value = ACH
AmountTotalACH
number
The amount being processed for the ACH transaction. The amount must be greater than zero with a maximum amount of 99999999.99.
TransactionInvoiceAlphanumeric
string
10 character invoice number assigned by the interface to identify a transaction. An invoice number serves as a unique key that identifies a transaction within…
ACHVerifyBalance
boolean
Send as true if you want to verify the balance before processing the ACH transaction. The balance check will only be possible if the customer logged into their…
MerchantResponse
object
2 properties
MerchantName
string
The merchant’s business name as configured with Shift4.
ACHVerificationTypePrenotification
string
The type of verification used to validate the account. Value | Description ------|--------------- P | Prenotification
TransactionVendorReference
string
Optional field for information that can be searched in the merchant portal.
ErrorSeverity
string
Severity level of the error. | Severity | Description | | -------- | ---------------------------------------------------------------- | | Info | Action not req…
HostResponseReasonDescriptionACH
string
Returns a description from the host.
TransactionResponseCodeACHPlaidPublicTokenExchange
string
Code indicating the Shift4 host response. | Value | Description | Details |--------|--------------|------------------------------------------------------------…
DateTime
string
The date and time in ISO 8601 format including the timezone offset (yyyy-mm-ddThh:mm:ss.nnn+hh:mm). Must be sent as the local date/time of the merchant. For ex…
TransactionAuthSourceAPM
string
In a response, a code returned by the processor to indicate which host issued the response. Value | Description -------|---------------------------- A | APM (O…
TransactionInvoice
string
10-digit invoice number assigned by the interface to identify a transaction. An invoice number serves as a unique key that identifies a transaction within a ba…
ACHBalanceVerificationResult
string
Specifies whether or not the balance was verified Value | Description ------|------------- VS | Balance was verified and requested amount is below account bala…
ach_refund_bankaccount
object
5 properties
5 required
webhook_ach_sale_status_update
object
5 properties
ACHPlaidLinkTokenRedirectUrl
string
Contains the URL to which the browser should be redirected. Conditional: must be sent if the customer is using a 'mobile device' or 'website with redirection'.…
ErrorLongText
string
Extended error message that is returned if an error condition exists.
HostResponseReasonCodeACH
string
Returns a response code from the host. Value | Description ------|----------- C01 | Incorrect DFI Account Number C02 | Incorrect Routing Number C03 | Incorrect…
ACHPlaidPublicToken
string
Plaid Public Token
ACHAccountNumber
string
Bank Account Number. Do not include any dashes, spaces, or additional zeros.
ErrorShortText
string
Abbreviated error message that is always returned if an error condition exists
TokenValueACH
string
The token representing the customer's bank account credentials.
HostResponseACH
object
Returns the response code detailing why the transaction was declined.
2 properties
ACHPlaidLinkTokenLanguage
string
The language that Link should be displayed in. If no language is sent it will default to English. Value | Description ------|------------- da | Danish nl | Dut…
AmountTotal
number
The amount being charged for a particular transaction. If other amount fields are sent, they must be included in the total amount. Amount cannot be zero.
ACHPlaidPublicTokenMetadata
string
JSON encoded object received from the Plaid SDK. The metadata object received from the Plaid SDK must be json encoded and sent in this object.
ACHPlaidLinkToken
string
Plaid Link Token
NotificationId
string
Notification ID value generated by Shift4 and returned in the response. Used for matching webhook notifications back to their original request.
SourceIP
string
Public source IP Address where the request originates, not the IP Address of the web server.
TransactionResponseCodeACH
string
Code indicating the Shift4 host response. Value | Description | Details -------|-------------|-------- P | Pending | The ACH transaction is pending D | Decline…
ACHAccountNumberLastFour
string
The last 2-4 alphanumeric characters of an account's official account number.
ACHVerificationTypeVerifyWebhook
string
The type of verification used to validate the account. Value | Description ------|--------------- P | Prenotification M | Microdeposit
webhook_ach_dispute_initiated
object
5 properties
ach_sale_bankaccount
object
5 properties
5 required
ACHPaymentTypeCode
string
Specifies the payment type. If not provided in the request the transaction will default to ST. Value | Description ------|--------------- S | Single Entry. Con…
webhook_ach_verification_status_update
object
6 properties
TransactionResponseCodeACHPending
string
Code indicating the Shift4 host response. Value | Description | Details -------|-------------|-------- P | Pending | The ACH transaction is pending
ACHRoutingNumber
string
The routing number identifying the bank.
ach_sale_token_gtv
object
6 properties
5 required
ACHPlaidLinkTokenExpiration
string
Plaid Link Token Expiration
The full machine-readable OpenAPI contract behind this narrative.
Other APIs Shift4 publishes across the network.