Skip to main content
Global Payments

Initiate a Zelle® Disbursement

In this tutorial, you learn how to initiate a Zelle® Disbursement.

Before you begin

To initiate a payment, you need the following:

  • registered and fully onboarded Developer Account on the J.P. Morgan Payments Developer Portal.
  • An active project that provides you with the credentials to make a request.
  • A bank account in the country from which you want to initiate a payment.

Send a request

From your command line, send a POST request to the /payments endpoint.

For example, the following code snippet contains a cURL command that initiates a Zelle® Disbursement payment that uses an email address. It also contains the command's payload formatted in JSON so that it's easier to see.

Example of a request to initiate a Zelle® payment that uses an email address
{
  "requestedExecutionDate": "2024-10-01",
  "paymentIdentifiers": {
    "endToEndId": "ZELLETEST"
  },
  "transferType": "CREDIT",
  "value": {
    "currency": "USD",
    "amount": "10"
  },
  "paymentType": "ZELLE",
  "debtor": {
    "name": "John Doe",
    "account": {
      "accountNumber": "123456789"
    }
  },
  "debtorAgent": {
    "financialInstitutionIds": [
      {
        "id": "CHASUS33",
        "idType": "BIC"
      }
    ]
  },
  "creditor": {
    "name": "Jane Doe",
    "account": {
      "alternateAccountIdentifiers": [
        {
          "identifier": "Jane.Doe@example.com",
          "idType": "PROPRIETARY",
          "proprietarySchemeName": "EMAL"
        }
      ]
    },
    "postalAddress": {
      "country": "US",
      "buildingNumber": "5678",
      "streetName": "Maple Avenue",
      "city": "Rivertown",
      "postalCode": "67890",
      "countrySubDivision": "AB"
    }
  },
  "remittanceInformation": {
    "unstructuredInformation": [
      {
        "text": "Payment for catering facilities - INVC009887"
      }
    ]
  }
}

Confirm the response

Confirm that you receive a response that contains an endToEndId and a paymentId. You can use these values later to get the status and details of your payment. 

For example, the following code snippet contains a response to the previous cURL command to initiate a Zelle® Disbursement that uses an email address. It's formatted in JSON so that it's easier to see.

Example of a response to a successful request to initiate a Zelle® payment that uses an email address
{
  "paymentId": "ce8857f6-dc82-420d-84dc-63489476cb13",
  "paymentStatus": "ACCEPTED",
  "paymentSubStatus": "ACCEPTED",
  "statusUpdatedAt": "2024-10-30T14:15:22Z",
  "requestedExecutionDate": "2024-10-30",
  "paymentIdentifiers": {
    "endToEndId": "PACS008EGYPT_12"
  },
  "transferType": "CREDIT",
  "paymentType": "ZELLE"
}

Next steps

Learn how to get the status of a Zelle® Disbursement payment request.