Zelle Endpoints

zelle/withdraw

Initiate a Zelle B2C payment to a recipient identified by email address or mobile phone number. Zelle is available to United States accounts only; a request from an account registered in any other country is rejected.

post/zelle/withdraw

Request

  • Base URL
    https://earthnode-dev.vopay.com/api/v2
  • URL
    https://earthnode-dev.vopay.com/api/v2/zelle/withdraw
  • Auth
    none declared

Request body application/x-www-form-urlencoded

AccountIDstring required

Your account ID

Keystring required

API key for the account

Signaturestring required

Hashed signature for the request

FirstNamestring

Recipient's first name. Required unless the recipient is resolved another way: supply a ZelleToken, or supply a ClientAccountID with a default Zelle recipient configured. In both of those cases the details are taken from the stored recipient and this must be omitted.

LastNamestring

Recipient's last name. Required unless the recipient is resolved another way: supply a ZelleToken, or supply a ClientAccountID with a default Zelle recipient configured. In both of those cases the details are taken from the stored recipient and this must be omitted.

Amountstring required

Payment amount in USD

EmailAddressstring

Recipient's email address used as their Zelle alias. Either EmailAddress or PhoneNumber must be provided, unless the recipient is resolved from a ZelleToken or from a ClientAccountID's default Zelle recipient.

PhoneNumberstring

Recipient's mobile phone number used as their Zelle alias. Either EmailAddress or PhoneNumber must be provided, unless the recipient is resolved from a ZelleToken or from a ClientAccountID's default Zelle recipient.

PriorityTypestring

Payment priority. Accepted values: STANDARD, INSTANT. Defaults to the account's configured priority type.

Notesstring

Optional memo or note for the payment

ClientAccountIDstring

Client Account ID to associate with this transaction. When supplied with no recipient details and no ZelleToken, the client account's default Zelle recipient (set via zelle/set-my-recipient) is used; if that client account has no default recipient the request fails. If your account uses contacts (client accounts disabled), the contact's default Zelle recipient is always used and supplying a ZelleToken, EmailAddress or PhoneNumber alongside ContactID is rejected. If your account uses client accounts, the same restriction applies unless third-party client account transactions are enabled, in which case a client account may pay a named recipient — supplying a ZelleToken, EmailAddress or PhoneNumber alongside ClientAccountID is rejected.

ClientReferenceNumberstring

An optional reference number to associate with this transaction

IdempotencyKeystring

A unique key to prevent duplicate transactions

GLCodestring

General ledger code for the transaction

TransactionTypeCodestring

Custom transaction type code

ParentTransactionIDstring

ID of a parent pre-funding transaction to link to this payment

ZelleTokenstring

Token of a previously stored Zelle recipient (from zelle/link-recipient or zelle/recipients). When supplied, FirstName, LastName, EmailAddress and PhoneNumber must be omitted — the recipient details are taken from the stored recipient.

Response

Successboolean required

True if the request was successful, false if it failed

ErrorMessagestring required

Contains a description of the error if the request failed

TransactionIDstring required

Unique identifier for the created Zelle transaction

Flaggedstring

Details on why the transaction was flagged, if applicable. Flagged transactions will need to be confirmed by using the /account/transaction/confirm endpoint.

Example response

{
  "Success": true,
  "TransactionID": "123456",
  "Flagged": "The transaction has been flagged as a potential duplicate."
}

Changes

No recorded changes to this operation across all 1 revision of this API.