Skip to main content
Beta version available

The Global Payments 2 API is currently available in beta. Contact our team to start your integration process.

Initiate a Kinexys Digital Payments deposit request

In this tutorial, you'll learn how to use the Global Payments API to initiate a Kinexys Digital Payments deposit to fund a Blockchain Deposit Account (BDA). By the end of this tutorial, you'll know how to:

  • Create a well-formed Kinexys Digital Payments deposit request payload.
  • Interpret the values in a successful response.

Before you begin

To initiate a Kinexys Digital Payments deposit, you'll need:

  • registered and fully onboarded developer account on the J.P. Morgan Payments Developer Portal.
  • An active project that provides you with the credentials used to make a request.
  • A J.P. Morgan BDA opened at J.P. Morgan Chase Bank, N.A and/or J.P. Morgan SE, Frankfurt.
  • A Demand Deposit Account (DDA) must be opened in an approved funding location where you intend to perform a Kinexys Digital Payments transaction.
Tip

In addition to regular Demand Deposit Accounts (DDA), select Client Money Accounts (CMA) and Mortgage Servicing Accounts (MSA) are supported by this product, subject to J.P. Morgan review.

Create and send a Kinexys Digital Payments deposit request payload

Request payloads for the Global Payments API include both optional and required fields. The complete request payload is sent using a POST HTTP request

The following example shows the minimum required payload for a Kinexys Digital Payments deposit request, without any optional fields included:

Kinexys Digital Payments Deposit (DDA to BDA)
Curl
curl --request POST \   --url https://api-mock.payments.jpmorgan.com/tsapi/v1/tsapi/v1/payments \   --header 'Accept: application/json' \   --header 'Content-Type: application/json' \   --data '{   "payments": {     "requestedExecutionDate": "2033-06-10",     "debtor": {       "debtorAccount": {         "accountId": "8830699900",         "accountType": "DDA"       }     },     "creditor": {       "creditorAccount": {         "accountId": "0070103277",         "accountType": "BDA"       }     },     "debtorAgent": {       "financialInstitutionId": {         "bic": "CHASSGSG"       }     },     "paymentType": "BLOCKCHAIN",     "transferType": "CREDIT",     "creditorAgent": {       "financialInstitutionId": {         "bic": "CHASUS33"       }     },     "paymentAmount": 6500,     "paymentCurrency": "USD",     "paymentIdentifiers": {       "endToEndId": "202E092v021D35E4"     }   } }'

Confirm response

Upon successful completion, you should receive a response containing a firmRootId and an endToEndId. These values are used to retrieve the status of your request.

Kinexys Digital Payments Deposit Confirmation Response
Json
{
  "endToEndId": "202E092v021D35E4",
  "firmRootId": "98275a2d-1e88-beed-6938-0521a7e0oinc"
}

For more information about potential error responses, see the Error codes section.

Kinexys Digital Payments deposit request webhooks

Transaction status responses for your Kinexys Digital Payments deposit request are provided through webhooks.

Kinexys Digital Payments Deposit Webhook
Json
{
  "callbacks": [
    {
      "endToEndId": "202E092v021D35E4",
      "createDateTime": "2033-06-10T09:04:29.166Z",
      "paymentStatus": "COMPLETED",
      "firmRootId": " 98275a2d-1e88-beed-6938-0521a7e0oinc "
    }
  ]
}

Kinexys Digital Payments supports multiple response types, including PENDING, PENDING_POSTING, COMPLETED, and REJECTED. For more information, see Response types.

Connect to the Global Payments API.

Next steps