Skip to content

Payees

Payees

Last updated 16 March 2026

Payees API Documentation

Required Permissions

EndpointPermission Required
GET endpointsread:payees
POST (create)create:payee
PUT (update)update:payee
POST (upsert)create:payee AND update:payee

πŸ”Ή GET /payees β€” Query All Payees

Returns a paginated list of all payees belonging to the authenticated user.

Query Parameters:

ParameterTypeRequiredDescription
pagenumber❌The page number to retrieve (default: 0).
limitnumber❌Number of results per page (default: 10, max: 100).

πŸ”Ή GET /payee/{xpid} β€” Query Single Payee

Retrieve details of a single payee using its unique xpid (xace payee id).

Path Parameter:

ParameterTypeRequiredDescription
xpidstringβœ…The xace payee id.

πŸ”Ή GET /account/{xaid}/payees β€” Query Payees of an Account

Returns a paginated list of payees associated with a specific account.

Path Parameter:

ParameterTypeRequiredDescription
xaidstringβœ…The xace account id.

Query Parameters:

ParameterTypeRequiredDescription
pagenumber❌The page number to retrieve (default: 0).
limitnumber❌Number of results per page (default: 10, max: 100).

πŸ”Ή POST /account/{xaid}/payees β€” Create Payee

Creates a new payee belonging to a specific account.

Path Parameter:

ParameterTypeRequiredDescription
xaidstringβœ…The xace account id.

Body Parameters:

ParameterTypeRequiredDescription
namestringβœ…Payee name (4-140 characters, alphanumeric and basic punctuation).
displayNamestring❌Display name for the payee (4-140 characters).
referencestringβœ…Payment reference (6-18 chars for GBP, 6-140 for others).
purposestringβœ…Payment purpose code.
purposeCategorystringβœ…Payment purpose category.
isBusinessboolean❌Set true if payee is a business, false for individual.
emailstring❌Payee email address (valid email format).
mobilePhonestring❌Payee mobile phone number (7-15 digits, can include +, spaces, dashes).
websitestring❌Payee website URL.
addressLine1stringβœ…Payee address line 1 (1-50 characters).
addressLine2string❌Payee address line 2 (3-35 characters).
townCitystringβœ…Town or city (1-35 characters).
countyStatestring❌County or state (4-35 characters).
postCodestringβœ…Postal code (4-10 alphanumeric characters).
countryCodestringβœ…ISO country code, 2 letters (e.g., GB, US, DE).
sortCodestring⚠️UK sort code (6 digits). Required for GBP payments.
accountNumberstring⚠️Bank account number (4-17 digits). Required for GBP or when IBAN not provided.
ibanstring⚠️International Bank Account Number (15-34 chars). Required for EUR/international.
bicstring⚠️Bank Identifier Code (8-11 chars). Required when IBAN is provided.
abastring⚠️ABA routing number (9 digits). Required for USD payments.
bankCountryCodestring❌Bank country code (2 letters, e.g., GB, US).
institutionNumberstring⚠️Institution number (3 digits). Required for CAD payments.
transitNumberstring⚠️Transit number (5 digits). Required for CAD payments.
intermediaryNamestring❌Intermediary bank name (2-140 characters).
intermediaryBicstring❌Intermediary bank BIC (8-11 chars).
intermediaryAbastring❌Intermediary bank ABA routing number (9 digits).
intermediaryAddress1string❌Intermediary bank address line 1 (max 50 chars).
intermediaryAddress2string❌Intermediary bank address line 2 (max 50 chars).
intermediaryTownCitystring❌Intermediary bank town/city (max 35 chars).
intermediaryCountyStatestring❌Intermediary bank county/state (max 35 chars).
intermediaryPostcodestring❌Intermediary bank postal code (max 10 chars).
intermediaryCountryCodestring❌Intermediary bank country code.

⚠️ Note: Account details requirements vary by currency:

  • GBP: sortCode + accountNumber
  • EUR/International: iban + bic
  • USD: accountNumber + aba
  • CAD: institutionNumber + transitNumber + accountNumber

Note: The xid, xaid, and currency are automatically set from the authenticated user and account.

πŸ”Ή PUT /account/{xaid}/payees/{xpid} β€” Update Payee

Updates an existing payee belonging to a specific account.

Path Parameters:

ParameterTypeRequiredDescription
xaidstringβœ…The xace account id.
xpidstringβœ…The xace payee id to update.

Body Parameters:

ParameterTypeRequiredDescription
namestring❌Payee name (4-140 characters).
displayNamestring❌Display name for the payee (4-140 characters).
referencestring❌Payment reference (6-18 chars for GBP, 6-140 for others).
purposestring❌Payment purpose code.
purposeCategorystring❌Payment purpose category.
isBusinessboolean❌Set true if payee is a business, false for individual.
emailstring❌Payee email address.
mobilePhonestring❌Payee mobile phone number.
websitestring❌Payee website URL.
addressLine1string❌Payee address line 1 (1-50 characters).
addressLine2string❌Payee address line 2 (3-35 characters).
townCitystring❌Town or city (1-35 characters).
countyStatestring❌County or state (4-35 characters).
postCodestring❌Postal code (4-10 alphanumeric characters).
countryCodestring❌ISO country code (2 letters).
sortCodestring❌UK sort code (6 digits).
accountNumberstring❌Bank account number (4-17 digits).
ibanstring❌International Bank Account Number (15-34 chars).
bicstring❌Bank Identifier Code (8-11 chars).
abastring❌ABA routing number (9 digits).
bankCountryCodestring❌Bank country code (2 letters).
institutionNumberstring❌Institution number (3 digits).
transitNumberstring❌Transit number (5 digits).
intermediaryNamestring❌Intermediary bank name.
intermediaryBicstring❌Intermediary bank BIC.
intermediaryAbastring❌Intermediary bank ABA routing number.
intermediaryAddress1string❌Intermediary bank address line 1.
intermediaryAddress2string❌Intermediary bank address line 2.
intermediaryTownCitystring❌Intermediary bank town/city.
intermediaryCountyStatestring❌Intermediary bank county/state.
intermediaryPostcodestring❌Intermediary bank postal code.
intermediaryCountryCodestring❌Intermediary bank country code.

Note: Bank account details (iban, sortCode, accountNumber, etc.) can be updated but will be re-validated before saving.

πŸ”Ή POST /account/{xaid}/payee β€” Upsert Payee (Unified Endpoint)

Creates a new payee or updates an existing one. This is a unified endpoint that determines the operation based on whether xpid is provided in the request body.

  • If xpid is omitted β†’ Creates a new payee
  • If xpid is provided β†’ Updates the existing payee

Required Permissions: Both create:payee AND update:payee

Path Parameter:

ParameterTypeRequiredDescription
xaidstringβœ…The xace account id.

Body Parameters:

ParameterTypeRequiredDescription
xpidstring❌The xace payee id. If provided, updates existing payee. If omitted, creates new payee.
namestringβœ…*Payee name (required for create, optional for update).
displayNamestring❌Display name for the payee.
referencestringβœ…*Payment reference (required for create).
purposestringβœ…*Payment purpose code (required for create).
purposeCategorystringβœ…*Payment purpose category (required for create).
isBusinessboolean❌Business or individual flag.
emailstring❌Payee email address.
mobilePhonestring❌Payee mobile phone number.
websitestring❌Payee website URL.
addressLine1stringβœ…*Payee address line 1 (required for create).
addressLine2string❌Payee address line 2.
townCitystringβœ…*Town or city (required for create).
countyStatestring❌County or state.
postCodestringβœ…*Postal code (required for create).
countryCodestringβœ…*ISO country code (required for create).
sortCodestring⚠️UK sort code. Required for GBP.
accountNumberstring⚠️Bank account number.
ibanstring⚠️IBAN. Required for EUR/international.
bicstring⚠️BIC. Required when IBAN provided.
abastring⚠️ABA routing number. Required for USD.
bankCountryCodestring❌Bank country code.
institutionNumberstring⚠️Institution number. Required for CAD.
transitNumberstring⚠️Transit number. Required for CAD.
intermediaryNamestring❌Intermediary bank name.
intermediaryBicstring❌Intermediary bank BIC.
intermediaryAbastring❌Intermediary bank ABA.
intermediaryAddress1string❌Intermediary bank address line 1.
intermediaryAddress2string❌Intermediary bank address line 2.
intermediaryTownCitystring❌Intermediary bank town/city.
intermediaryCountyStatestring❌Intermediary bank county/state.
intermediaryPostcodestring❌Intermediary bank postal code.
intermediaryCountryCodestring❌Intermediary bank country code.

βœ…* = Required when creating (xpid not provided), optional when updating

Response Object

All payee endpoints return a payee object with the following fields:

FieldTypeDescription
xpidstringThe xace payee id.
xaidstringThe xace account id this payee belongs to.
currencystringCurrency code (inherited from account).
namestringPayee name.
displayNamestringDisplay name for the payee.
referencestringPayment reference.
purposestringPayment purpose code.
purposeCategorystringPayment purpose category.
isBusinessbooleanBusiness or individual flag.
emailstringPayee email address.
mobilePhonestringPayee mobile phone number.
websitestringPayee website URL.
addressLine1stringAddress line 1.
addressLine2stringAddress line 2.
townCitystringTown or city.
countyStatestringCounty or state.
postCodestringPostal code.
countryCodestringISO country code.
sortCodestringUK sort code.
accountNumberstringBank account number.
ibanstringIBAN.
bicstringBIC.
abastringABA routing number.
bankCountryCodestringBank country code.
institutionNumberstringInstitution number (CAD).
transitNumberstringTransit number (CAD).
intermediaryNamestringIntermediary bank name.
intermediaryBicstringIntermediary bank BIC.
intermediaryAbastringIntermediary bank ABA.
intermediaryAddress1stringIntermediary bank address line 1.
intermediaryAddress2stringIntermediary bank address line 2.
intermediaryTownCitystringIntermediary bank town/city.
intermediaryCountyStatestringIntermediary bank county/state.
intermediaryPostcodestringIntermediary bank postal code.
intermediaryCountryCodestringIntermediary bank country code.
createdstringTimestamp when payee was created.
updatedstringTimestamp when payee was last updated.

Validation Rules

Name Fields

  • name: 4-140 characters, alphanumeric with basic punctuation (& ) ( . -)
  • displayName: Same as name

Address Fields

  • addressLine1: 1-50 characters
  • addressLine2: 3-35 characters
  • townCity: 1-35 characters
  • countyState: 4-35 characters
  • postCode: 4-10 alphanumeric characters
  • countryCode: Exactly 2 uppercase letters (ISO code)

Bank Details

  • sortCode: Exactly 6 digits (GBP only)
  • accountNumber: 4-17 digits
  • iban: 15-34 characters, alphanumeric
  • bic: 8-11 characters, alphanumeric
  • aba: Exactly 9 digits (USD only)
  • institutionNumber: Exactly 3 digits (CAD only)
  • transitNumber: Exactly 5 digits (CAD only)

Contact Fields

  • email: Valid email format
  • mobilePhone: 7-15 characters, can include +, spaces, dashes, parentheses
  • website: Valid URL format

Error Codes

CodeErrorDescription
401UnauthorizedAccount not found or doesn't belong to user.
403ForbiddenMissing required permission (read:payees, create:payee, or update:payee).
404Not FoundPayee not found or doesn't belong to the specified account.
429Account InactiveThe specified account is not active.
500Internal Server ErrorServer error occurred.
Was this page helpful?
Suggest edits