Skip to main content
Beta version available

Discover the Global Payments 2 API, now available in beta!

Initiate a Disbursements with Zelle® payment request

In this tutorial, you will learn how to use the Global Payments API to initiate a Disbursements with Zelle® payment. After sending the request, you’ll review a successful response and learn how to check the status of your request.

By the end of this tutorial, you will know how to:

  • Create a well-formed Disbursements with Zelle® payment request payload.
  • Interpret the values in a successful response.
  • Use the endToEndId to check and confirm the status of your request.

Before you begin

To use Disbursements with Zelle®, you will need the following:

Create and send a Disbursements with Zelle® request payload

Request payloads for the Global Payments API have optional and required fields. The following example shows the suggested payload for a Disbursements with Zelle® request in the United States:

POST /tsapi/v1/payments HTTP/1.1
Json
{
  "payments": {
    "requestedExecutionDate": "2024-01-30",
    "paymentIdentifiers": {
      "endToEndId": "XR202109202311354152"
    },
    "paymentCurrency": "USD",
    "paymentAmount": 0.1,
    "transferType": "CREDIT",
    "debtor": {
      "debtorName": "Maria S",
      "debtorAccount": {
        "accountId": "1234567"
      }
    },
    "debtorAgent": {
      "financialInstitutionId": {
        "bic": "CHASUS33"
      }
    },
    "creditor": {
      "creditorName": "Sarah Wilson",
      "creditorAccount": {
        "accountType": "ZELLE",
        "alternateAccountIdentifier": "sarah.wilson@example.com",
        "schemeName": {
          "proprietary": "EMAL"
        }
      }
    }
  }
}

Confirm response

You will receive a successful response containing a firmRootId and an endToEndId. These values can be used in the next step to retrieve the status of your request.

Example response with endToEndId & firmRootId - HTTP 202 Accepted
Json
{
    "paymentInitiationResponse": {
        "firmRootId": "107c46c4-f99f-47ba-9a3f-4594fa567ef8",
        "endToEndId": "ZELLE_APGW_1018_001"
    }
}

There are also several error responses you may encounter at this stage. We recommend viewing the error codes section to understand supported responses. If you need additional support, contact your Client Service Account Manager.

Payment Initiation Callback

Clients can opt into receiving callback responses for their payment initiations. Callbacks provide additional details of the status of your request.

Successful callback example:

Example callback successful: COMPLETED
Json
{
  "callbacks": [
    {
      "endToEndId": "TESTTP304",
      "createDateTime": "2023-10-16T17:18:26.096Z",
      "paymentStatus": "COMPLETED",
      "firmRootId": "fffa01ed-786b-4f5f-8517-55c8004230bd"
    }
  ]
}

Rejected Callback example:

Example callback status: PENDING
Json
{
    "paymentStatus": {
        "createDateTime": "2022-06-28T00:00:01.000",
        "status": "PENDING"
    }
}

Next steps