Stop Payment

clock 3-minute read calender 1.0.6 | updated Oct. 28, 2025

Stop a check payment

Stop Payment endpoints

What you can doEndpoint
Health checkget /accounts/payments/v1/healthCheck
Stop a paymentpost /accounts/payments/v1/stop

Before you begin

All KeyBank APIs require certificates, user credentials, and certain permissions. Check out our Get Started Guide to learn more.

Payment stop window

You can only stop a payment between the hours of 06:00 a.m. and 11:59 p.m. EST.

post /accounts/payments/v1/stop

Stop a check payment

NAMETYPEDESCRIPTION
AccountNumberrequiredstringBank account number. This field cannot exceed 16 characters.
BankNumberrequiredstringA four-digit code that corresponds with the state location of the client's account. Use the USA code, 3211, if the state is not listed. Valid values: 0101 (OH), 0242 (AK), 0618 (CO), 1256 (ID), 1961 (ME), 2912 (NH), 3211 (USA), 3290 (NY), 3720 (OR), 4451 (UT), 4560 (VT), 4731 (WA)
CheckNumberrequiredObjectcheckNumber
CheckAmountnumberAmount of the check
DescriptionstringComments that describes stop payment reasons. This field cannot exceed 30 characters.

Request example

copylink
{
    "AccountNumber": "123456789",
    "BankNumber": "0101",
    "CheckNumber": {
        "CheckNumberLow": "590",
        "CheckNumberHigh": "591"
    },
    "CheckAmount": 1.52,
    "Description": "Test Stop_SB_08130116"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.

Response example (200)

copylink
{
    "Status": "Success",
    "StatusCode": "000",
    "Severity": "Info",
    "StatusDesc": "stopPaymentAdd operation executed successfully - stopPaymentAdd_20190205024213818",
    "TransactionId": "000000057307_590_1.52",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-30T18:55:10.337Z"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (400)

copylink
{
    "Status": "Failure",
    "StatusCode": "400",
    "Severity": "Error",
    "StatusDesc": "Mandatory data not provided, please verify the data and resubmit the request",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (401)

copylink
{
    "Status": "Failure",
    "StatusCode": "401",
    "Severity": "Error",
    "StatusDesc": "Received request is unauthorized, please provide valid credentials",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (402)

copylink
{
    "Status": "Failure",
    "StatusCode": "402",
    "Severity": "Error",
    "StatusDesc": "Failed to add stop payment on account; STAR failed  - stopPaymentAdd_20220513015308610",
    "TransactionId": "000000057307_590_591",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2022-05-13T05:53:08.702Z",
    "Api-Url": "/accounts/payments/v1/stop",
    "ServiceError": {
        "SEStatusCode": "402",
        "SESeverity": "Error",
        "SEStatusDesc": "Failed to add stop payment on account; STAR failed - stopPaymentAdd_20220513015308610",
        "AdditionalStatus": {
            "ASStatusCode": "202",
            "ASSeverity": "Error",
            "ASStatusDesc": "CHECK(S) ALREADY STOPPED",
            "SubjectElement": {
                "Path": "STAR"
            }
        }
    }
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (403)

copylink
{
    "Status": "Failure",
    "StatusCode": "403",
    "Severity": "Error",
    "StatusDesc": "Access Denied for client ip",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (404)

copylink
{
    "Status": "Failure",
    "StatusCode": "404",
    "Severity": "Error",
    "StatusDesc": "Requested resource is not found, please verify the resource and resubmit the request",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (405)

copylink
{
    "Status": "Failure",
    "StatusCode": "405",
    "Severity": "Error",
    "StatusDesc": "Requested method is not allowed, please verify the method and resubmit the request",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (415)

copylink
{
    "Status": "Failure",
    "StatusCode": "415",
    "Severity": "Error",
    "StatusDesc": "Requested media type is not allowed, please verify the media type and resubmit the request",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (429)

copylink
{
    "Status": "Failure",
    "StatusCode": "429",
    "Severity": "Error",
    "StatusDesc": "Looks like you've sent too many requests. Please wait a moment and try again later.",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2022-05-17T04:39:32.449Z",
    "Api-Url": "/accounts/payments/v1/stop"
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (500)

copylink
{
    "Status": "Failure",
    "StatusCode": "500",
    "Severity": "Error",
    "StatusDesc": "Runtime error occurred in the service, please check with application support team before resubmitting the request",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "3288b87c-d4e7-639a-88d0-9cdfede8941e",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop",
    "ServiceError": {
        "connectError": "Runtime error occurred in the service, please check with application support team before resubmitting the request"
    }
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (502)

copylink
{
    "Status": "Failure",
    "StatusCode": "502",
    "Severity": "Error",
    "StatusDesc": "Error received from backend",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop",
    "ServiceError": {
        "connectError": "Connectivity error occurred with the downstream service (Unexpected EOF at target), please check with application support team before resubmitting the request"
    }
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (502)

copylink
{
    "Status": "Failure",
    "StatusCode": "502",
    "Severity": "Error",
    "StatusDesc": "Error received from backend",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop",
    "ServiceError": {
        "connectError": "Connectivity error occurred with the downstream service (Unexpected EOF at target), please check with application support team before resubmitting the request"
    }
}
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
Api-UrlstringThe API URL path of the call that generated the response.
ServiceErroroneOfserviceErrorData connectError

Response example (504)

copylink
{
    "Status": "Failure",
    "StatusCode": "504",
    "Severity": "Error",
    "StatusDesc": "Error received from backend",
    "TransactionId": "rrt-7709400285867417207-b-gce-27587-2383364-1",
    "X-CorrelationId": "2ebd5c24-0e8d-5a70-0e91-ffd2727c1aab",
    "TransactionTime": "2021-06-11T16:31:34.041Z",
    "Api-Url": "/accounts/payments/v1/stop",
    "ServiceError": {
        "connectError": "Request could not be processed on time (GatewayTimeout), please wait a moment and resubmit the request."
    }
}
NAMETYPEDESCRIPTION
StatusstringStatus of the health check response.
SourcestringOrigin of the system response can be 'Gateway' or 'Roundtrip'. Roundtrip returns a response from the farthest system involved.
TimestampstringDate (YYYY-MM-DD) and time (HH:MM:SS) of response from the API service.
ClientIpstringClient IP address the gateway receives from the request.
X-Forwarded-ForstringSequence of IP addresses for systems between the client and the gateway.
NAMETYPEDESCRIPTION
AccountNumberrequiredstringBank account number. This field cannot exceed 16 characters.
BankNumberrequiredstringA four-digit code that corresponds with the state location of the client's account. Use the USA code, 3211, if the state is not listed. Valid values: 0101 (OH), 0242 (AK), 0618 (CO), 1256 (ID), 1961 (ME), 2912 (NH), 3211 (USA), 3290 (NY), 3720 (OR), 4451 (UT), 4560 (VT), 4731 (WA)
CheckNumberrequiredObjectcheckNumber
CheckAmountnumberAmount of the check
DescriptionstringComments that describes stop payment reasons. This field cannot exceed 30 characters. Make sure special characters are correctly escaped to avoid errors.
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
NAMETYPEDESCRIPTION
CheckNumberLowrequiredstringTo stop a single check, use this field to specify that check number. To stop a range of checks, use this field to specify the first check number of the range.
CheckNumberHighstringTo stop a range of checks, use this field to specify the last check number in the range. This field is unnecessary when stopping a single check.
NAMETYPEDESCRIPTION
StatusrequiredstringStatus of the processed request. Valid values: Success, Failure
StatusCoderequiredstringStatus code of the processed request.
SeverityrequiredstringSeverity level of the processed request. Valid values: Info, Error
StatusDescrequiredstringStatus description of the processed request.
TransactionIdrequiredstringUnique ID that gets assigned for the processed request.
X-CorrelationIdrequiredstringA unique identifier generated for each transaction that remains with the transaction through the chain of API operations.
TransactionTimerequiredstringDate (YYYY-MM-DD) and time (HH:MM:SS) the transaction processed.
ServiceErroroneOfserviceErrorData connectError
NAMETYPEDESCRIPTION
SEStatusCoderequiredstringService error status code of the processed request.
SESeverityrequiredstringService error severity of the processed request.
SEStatusDescrequiredstringService error status description of the processed request.
AdditionalStatusrequiredObjectadditionalStatusData
NAMETYPEDESCRIPTION
ASStatusCoderequiredstringAdditional status code of the processed request. For 402 errors, this field contains the unique error code returned from the Stop Payment downstream service.
ASSeverityrequiredstringAdditional status severity of the processed request.
ASStatusDescrequiredstringAdditional status description of the processed request. For 402 errors, this field contains the unique error description returned from the Stop Payment downstream service.
SubjectElementrequiredObjecterrorData
NAMETYPEDESCRIPTION
PathrequiredstringTroubleshooting field that contains the operational path that failed.
NAMETYPEDESCRIPTION
connectErrorstringAPI connectivity error information, if available.

For more information about general errors, see Error handling.

Note: The Stop Payment API is unavailable between the hours of 12:00 a.m. and 6:00 a.m. EST. If a request to stop payment is submitted within this timeframe you will receive an error.

There may be additional error information in the exception schema. API-specific KeyBank error codes and details are in the serviceErrorData. object for additional information specific to the API request.

 

HTTP STATUS CODECUSTOM STATUS CODEDESCRIPTION
402202

CHECK(S) ALREADY STOPPED
Failed to add stop payment on account.

A stop payment has already been placed on that check and or account.

402201

CHECKS(S) ALREADY POSTED TODAY
Failed to add stop payment on account.

Check has already posted to the account.

402203

TELLER CHECK HOLD ON ACCOUNT
Failed to add stop payment on account.

The payment was already stopped.

402208

ERROR LOCATING DDA
Failed to add stop payment on account.

There is an invalid value for the accountNumber field. Review and make sure the accountNumber is correct.

503209

STOP SERVICE UNAVAILABLE, PLEASE RETRY BETWEEN 6:00AM AND 11:59PM ET

The Stop Payment API is unavailable between the hours of 12:00 a.m. and 06:00 a.m. EST. Please retry your request outside of this time window.

 

ReleaseAPI versionChange descriptionImpact
September 20251.0.6
  • Added Api-Url parameter to all instances of the exception schema. This parameter is now a standard part of all error messages to help you identify which call triggered an unsuccessful response.
LOW
April 20251.0.5
  • For BankNumber, added a reference table for code values to state locations. Modified the parameter description to include state abbreviates for each four-digit code.
LOW
August 20241.0.4
  • Added clarity to the checkNumber description.
  • Parameter description updates. This change is for technical content only. The code and operations of the API remain the same. 
MID
December 20221.0.0
  • Released on the Developer Portal.
 

Impact levels

  • LOW: This is a minor change or enhancement that does not alter the operations of the API. Upgrading to the latest specifications is preferable but not required.
  • MID: The previous API version is valid and operates, but does not contain latest enhancements. You need to update your specifications to get these enhancements.
  • HIGH: The previous API version is no longer operable. You must upgrade to the latest specifications to access and use this API product.

YAML file download