Payees
Overview
The Payees module is an integral part of the customer API that allows users to manage their list of payees—people or organizations they need to send money to. It provides a suite of API endpoints that facilitate various operations required to maintain an up-to-date payee list for customers within the platform.
Create Payee - Allows users to add a new payee with details such as name, banking information, and address. This is essential for setting up new beneficiaries for transactions.
Edit Payee - Users can update the details of an existing payee. This endpoint is useful for making corrections or changes to the payee information, such as their bank account details or address.
Get Payee by ID - Enables a user to retrieve information about a payee by submitting the ID of the payee.
List Payees - Retrieve a list of payees associated with a customer
Delete Payee - Allows a user to delete a Payee, removing it from being an option for further transfer destinations
Initiate ACH Pull: Allows a manager to initiate an ACH pull request from a customer's payee.
Create Payee
This endpoint creates a new payee for a specific customer. A payee is essentially a destination that where one would send a payment to outside of the banking system, such as a bank account. A customer can use this feature to add a new person or company they need to send money to. The customer inputs necessary banking details and address information to set up the payee in their account
Endpoint:
/api/v1/customer/payees/create
Method:
POST
Request Body: application/json
CustomersId
(Integer, Required): The identifier for the customer.PayeeType
(String, Required): The type of payee, values can bePersonal
orCompany
.RoutingNumber
(String, Optional, For domestic payees): The routing number of the payee's bank for domestic transactions.AccountNumber
(String, Required): The bank account number of the payee.BankName
(String, Optional): The bank's name. This will be looked up based on other information if not included.Bic
(String, Optional, For international payees): The SWIFT/BIC code for international banking purposes.Iban
(String, Optional, For international payees): The International Bank Account Number for international transactions.PayeesReference
(String, Optional): A customer-defined reference for the payee.Name
(String, Required): The full name of the payee.AddressLine1
(String, Required): The primary address line for the payee.AddressLine2
(String, Optional): The secondary address line for the payee (if any).TownCity
(String, Required): The town or city where the payee is located.State
(String, Required): The state or region where the payee is located.Country
(String, Required): The country where the payee is located.Postcode
(String, Required): The postal code associated with the payee's address.
Request Body Example:
Response Body (Success): application/json
id
(Integer): A generated ID that references the newly created payee.details
(Object): An object containing details about the newly created payee:id
(Integer): Same as the outerid
field for ease of access.customersId
(Integer): The customer's ID for whom the payee was created.payeeType
(String): The type of payee,Personal
orCompany
.payeeReference
(String): Customer defined payee reference.routingNumber
(String): The routing number of the payee's bank.accountNumber
(String): The bank account number of the payee.bic
(String): The SWIFT/BIC code of the payee.iban
(String): The International Bank Account Number of the payee.name
(String): The full name of the payee.addressLine1
(String): The primary address line for the payee.addressLine2
(String): The secondary address line for the payee.townCity
(String): The town or city where the payee is located.state
(String): The state or region where the payee is located.postcode
(String): The postal code for the payee's address.country
(String): The country where the payee is located.bankName
(String): The name of the payee's bank.
status
(Integer): The status code, typically "1" for success.errors
(Array): An array containing any error messages related to the request.
Response Body Example:
Possible Error Response:
Required
(Error Code): Indicates that a required field is missing or has a zero value.Invalid
(Error Code): Suggests that a field contains an invalid value.Documents_Not_Verified
(Error Code): This action cannot be performed for the customer due to KYC (Know Your Customer) requirements not being met.
Edit Payee
Users can update the details of someone they've set up to send payments to (a payee). They'll need to provide specific information like the account details they wish to change. Once submitted, the system updates the payee's details, confirming the updates with the user or reporting why it wasn't able to if there's an issue. Only non-null fields will be updated
Endpoint:
/api/v1/customer/payees/edit
Method:
PATCH
Request Body Parameters: application/json
Only non-null fields will be updated!
Id
(Integer, Required): The ID of the payee to be edited.PayeeType
(String, Optional): The type of payee, values can bePersonal
orCompany
.RoutingNumber
(String, Optional): The routing number of the payee's bank for domestic transactions.AccountNumber
(String, Optional): The bank account number of the payee.BankName
(String, Optional): The bank's name, which will be looked up based on other information if not included.Bic
(String, Optional): The SWIFT/BIC code for international banking purposes.Iban
(String, Optional): The International Bank Account Number for international transactions.PayeesReference
(String, Optional): A customer-defined reference for the payee.Name
(String, Optional): The full name of the payee.AddressLine1
(String, Optional): The primary address line for the payee.AddressLine2
(String, Optional): The secondary address line for the payee (if any).TownCity
(String, Optional): The town or city where the payee is located.State
(String, Optional): The state or region where the payee is located.Country
(String, Optional): The country where the payee is located.Postcode
(String, Optional): The postal code associated with the payee's address.
Request Body Example:
Response Body Parameters: application/json
id
(Integer): A reference ID for the payee; not used in the example.details
(Object): An object containing updated details about the payee, including:id
(Integer): The ID of the payee that was edited.customersId
(Integer): The customer's ID associated with the edited payee.payeeType
(String): The updated type of payee,Personal
orCompany
.payeesReference
(String): The updated customer defined payee reference.routingNumber
(String): The updated routing number of the payee's bank.accountNumber
(String): The updated bank account number of the payee.bic
(String): The updated SWIFT/BIC code of the payee.iban
(String): The updated International Bank Account Number of the payee.name
(String): The updated name of the payee.addressLine1
(String): The updated address line for the payee.addressLine2
(String, Nullable): The updated address line 2 for the payee.townCity
(String): The updated town or city where the payee is located.state
(String): The updated state or region where the payee is located.postcode
(String): The updated postal code for the payee's address.country
(String): The updated country where the payee is located.bankName
(String): The updated bank name of the payee.
Success Response Example:
Error Codes:
Required
(Error Code): Indicates that a required field is missing or has a zero value.Invalid
(Error Code): Suggests that a field contains an invalid value.Documents_Not_Verified
(Error Code): The action cannot be performed for the customer due to KYC (Know Your Customer) requirements not being met.
Error Response Example:
Get Payee by ID
Users can retrieve the details of someone they've set up to send payments to (a payee). They'll need to provide the specific ID of the payee to retrieve information.
Endpoint:
/api/v1/customer/payees/get
Method:
GET
List Payees
Retrieve a list of payees associated with a customer
Endpoint:
/api/v1/customer/payees/list
Method:
GET
Delete Payee
Allows a user to delete a Payee, removing it from being an option for further transfer destinations
Endpoint:
/api/v1/customer/payees/delete
Method:
DELETE
Initiate ACH Pull
Allows a manager to initiate an ACH pull request from a customer's payee.
Endpoint:
/api/v1/customer/payees/pullfunds
Method:
POST
Request Body Parameters: application/json
Request Body Paramerer | Format | Description | Required |
---|---|---|---|
PayeesId | Integer | PayeesId where the bank can pull funds from | Yes |
Amount | Decimal | Amount to be pulled from payee | Yes |
CustomerAssetAccountsId | Integer | The destination customer account id | Yes |
Reference | String | For pooled account this should be the reference of the pooled account. Maximum 15 characters allowed | Yes |
Request Body Example
Response Body
Response Body Parameter | Format | Description |
---|---|---|
id | Integer | Transfer Id |
details. | ||
details.id | Integer | Transaction Id |
details.accountsId | Integer | Transaction account Id |
details.fromTransactionsId | Integer | Nullable linked from transaction Id |
details.fromAccountsId | Integer | Nullable linked from account Id |
details.toTransactionsId | Integer | Nullable linked to transaction Id |
details.toAccountsId | Integer | Nullable linked to account Id |
details.amount | Decimal | Transaction amount |
details.description | String | Transaction description |
details.dateTime | ISO 8601 | Transaction date |
details.bPending | Bool | Is transaction pending |
details.bApproved | Bool | Is screening approved |
Request Body Example
Potential Error Codes
Error message code example | Description |
---|---|
Required | Required field not provided |
Invalid | Provided destination account is invalid or provided payee id is invalid |
Funding_Already_Pending | If there is already some pull funds are pending on the destination customer account, not allowed to do another pull to the account. |
Invalid_Source_Account | Provided source account is invalid |
Invalid_Asset | Asset associated with the account is not fiat currency or both account have different assets. |
Ach_limit_exceed_5000 | The requested amount is greater than the allowed ach limit |
Invalid_Reference_For_FBO_Account | For pooled destination account, given reference should match with the destination account reference |
Internal_Error | Any unknown error |
Last updated