Callbacks
J.P. Morgan’s Global Payments API supports callbacks to notify your application of real-time status updates when an event occurs. Callbacks are more efficient for both the API provider and clients because applications don’t need to frequently poll for data to get status updates.
Before you begin
To enable callbacks, you will need to:
- Contact your J.P. Morgan Representative to initiate an implementation request when you are ready to start using the J.P. Morgan Treasury Services API.
- Complete the implementation process to receive the certificate necessary to set up a new callback. For more information, see Getting Started.
How callbacks work
When a payment initiation request is received, it is acknowledged with a successful 202 HTTP status that includes the endToEndId
and paymentId
in the response body. A payment then triggers a callback to your registered callback URL with a PENDING
status and continues to send you callbacks as the payment transitions into further status changes.
The payment initiation status callback response is usually received within 30 seconds. The Global Payments API always provides the latest and most accurate information about the payment. If an HTTP error occurs, J.P. Morgan automatically retries until the error is no longer received.
Callbacks are available in all products and markets, except for Wire payments.
Payment status callbacks
The callbacks are a notification to your client through the Global Payment API. For more information, see the Global Payments Open API Specification.
Confirm callback response
The following response shows a payment in the REJECTED
state:
"events": [
{
"eventId": "253f67f3-b640-44cb-aabd-2cc348b50000",
"eventTimestamp": "2024-07-19T11:06:28.230Z",
"paymentId": "253f67f3-b640-44cb-aabd-2cc348b52678",
"paymentType": "RTP",
"transferType": "CREDIT",
"paymentIdentifiers": {
"endToEndId": "AD202109311354152"
},
"requestedExecutionDate": "2024-07-19",
"paymentStatus": "REJECTED",
"paymentSubStatus": "REJECTED_BY_EXTERNAL",
"statusUpdatedAt": "2024-07-19T11:06:28.230Z",
"exceptions": [
{
"code": "11007",
"message": "Creditor account number closed",
"location": "BODY",
"field": "$.creditor.account.accountNumber",
"additionalContext": [
{
"type": "ISO20022",
"code": "AC07",
"message": "Creditor account number closed"
}
]
}
]
}
]
}
Resources
Status response types
A status message indicates the status of a payment. For example, the RECEIVED
status indicates that the payment was received and will be processed. In some cases, a status includes a sub-status to provide further details. For example, the PROCESSING
status includes a Processing by J.P. Morgan sub-status, indicating that the payment is being processed by J.P. Morgan.
The following table contains the supported statuses, sub-statuses, and their descriptions for the Global Payments API:
Status | Sub-status | Description |
---|---|---|
RECEIVED |
RECEIVED |
The payment request was received and will process accordingly. |
ACCEPTED |
ACCEPTED |
The payment was accepted at the initiation layer. |
PROCESSING |
PROCESSING BY JPM |
The payment is being processed by J.P. Morgan. |
PENDING CLIENT ACTION |
Payment is currently on hold, customer is required to perform an action for the payment to continue processing. | |
PENDING COMPLIANCE REVIEW |
Payment is under review of J.P. Morgan Compliance. | |
PENDING FRAUD REVIEW |
Payment is on hold to review possible fraud. | |
PENDING FUNDING REVIEW |
Payment is pending funding in J.P. Morgan. | |
PENDING JPM REVIEW |
Payment is currently on hold. | |
SCHEDULED |
The payment is scheduled for future execution. | |
PENDING POSTING |
The payment has been processed by J.P. Morgan, sent to the clearing network, and is awaiting a response. | |
CANCELED |
CANCELED |
The payment was canceled by the client. |
REJECTED |
REJECTED |
The payment has been rejected. |
REJECTED BY JPM |
The payment has been rejected by J.P. Morgan. | |
COMPLETED |
COMPLETED BY JPM |
The payment was fully processed by J.P. Morgan and the necessary movement of money within J.P. Morgan accounts has occurred. It is no longer under the control of J.P. Morgan. |
SENT TO CLEARING |
Payment instruction has been sent to the clearing network. | |
DELIVERED TO RECIPIENT |
The payment was applied to the receiver's account. | |
RETURNED |
RETURNED |
The payment was returned by an external party, such as a clearinghouse or beneficiary bank. |
This table lists all possible status responses that are supported by Global Payments; not all statuses are applicable to each payment method. To see supported status responses for each payment method, refer to their individual Resources page.