Create accounts for payments
Start onboarding an account with the payments feature enabled.
Before you start
You'll need product-level permissions to use this endpoint. You should also create webhooks for the AccountActivated
event type at a minimum, so you're notified when the account's status changes.
Create an account for payments
Request
Use this request to submit details and start onboarding an account.
curl -i -X POST \
'https://api.equalsmoney.com/v2/onboarding' \
-H 'Authorization: ApiKey YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"market": "UK",
"features": [
"payments"
],
"accountType": "business",
"affiliateId": "420e4d3c-2d51-4cad-9caf-d7300258cefd",
"companyId": "420e4d3c-2d51-4cad-9caf-d7300258cefd",
"contact": {
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"phone": "+447123456789",
"dob": "19/01/1946",
"address": {
"addressLine1": "Great Building",
"addressLine2": "Greater Building",
"townCity": "My Town",
"postCode": "SE13UB",
"countryCode": "GB"
}
},
"account": {
"companyName": "ACME international",
"companyNumber": "1111111111",
"incorporationDate": "1980-01-30",
"type": "llp",
"website": "https://www.exampleurl.com",
"onboardingDetail": "Additional details about the account",
"address": {
"addressLine1": "Great Building",
"addressLine2": "Greater Building",
"townCity": "My Town",
"postCode": "SE13UB",
"countryCode": "GB"
}
},
"kyc": {
"mainPurpose": [
"Investment"
],
"sourceOfFunds": [
"salary"
],
"destinationOfFunds": [
"GB"
],
"currenciesRequired": [
"GBP"
],
"annualVolume": "Less than £10,000",
"numberOfPayments": "More than 20 payments"
}
}'
curl -i -X POST \
'https://api.equalsmoney.com/v2/onboarding' \
-H 'Authorization: ApiKey YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"market": "string",
"features": [
"string"
],
"accountType": "string",
"affiliateId": "string",
"companyId": "string",
"contact": {
"firstName": "string",
"lastName": "string",
"email": "string",
"phone": "string",
"dob": "string",
"address": {
"addressLine1": "string",
"addressLine2": "string",
"townCity": "string",
"postCode": "string",
"countryCode": "string"
}
},
"account": {
"companyName": "string",
"companyNumber": "string",
"incorporationDate": "string",
"type": "string",
"website": "string",
"onboardingDetail": "string",
"address": {
"addressLine1": "string",
"addressLine2": "string",
"townCity": "string",
"postCode": "string",
"countryCode": "string"
}
},
"kyc": {
"mainPurpose": [
"string"
],
"sourceOfFunds": [
"string"
],
"destinationOfFunds": [
"string"
],
"currenciesRequired": [
"string"
],
"annualVolume": "string",
"numberOfPayments": "string"
}
}'
Request body schema
Parameter | Description |
---|---|
market string |
The market relating to the license that the account operates under. This may be different from the geographical region that the account operates in. Currently, we support UK and EU market accounts, but your account's geographical region doesn't necessarily have to be the one of those. Allowable values: UK , EU |
features array |
The feature that you want to enable on the account. If not provided, this defaults to payments . This can't be changed later.Allowable values: payments or cards |
accountType string required |
The type of account that you're onboarding. Allowable values: business , personal |
affiliateId string |
The affiliate ID. Allowable values: 36 characters |
companyId string |
The company ID. Allowable values: 36 characters |
contact object required |
Details about the contact (primary owner). Allowable values: A valid contact object containing the following fields: firstName , lastName , email , phone , dob , address |
contact.firstName string required |
The contact's first name. Allowable values: <= 256 characters |
contact.lastName string required |
The contact's last name. Allowable values: <= 256 characters |
contact.email string required |
The contact's email address. If this matches an existing person, we'll create a new persona for them. If this doesn't match an existing person, we'll create both a new person and a new associated persona. Allowable values: <= 256 characters |
contact.phone string required |
The contact's phone number. Allowable values: <= 50 characters |
contact.dob string |
The contact's date of birth. Allowable values: Format: DD/MM/YYYY |
contact.address object required |
Details about the contact's address. Allowable values: A valid address object containing the following fields: addressLine1 , addressLine2 , townCity , postCode , countryCode |
contact.address.addressLine1 string required |
The first line of the contact's address. Allowable values: <= 256 characters |
contact.address.addressLine2 string required |
The second line of the contact's address. Allowable values: <= 256 characters |
contact.address.townCity string required |
The town or city of the contact's address. Allowable values: <= 256 characters |
contact.address.postCode string required |
The postal or ZIP code of the contact's address. Allowable values: <= 36 characters |
contact.address.countryCode string required |
The country code of the contact's address, in ISO 3166-1 format (alpha-2). Allowable values: 2 characters |
account object |
Details about the account. This object is optional for personal accounts and required for business accounts.Allowable values: A valid account object containing the following fields: companyName , companyNumber , incorporationDate , type , website , onboardingDetail , address |
account.companyName string required if account is provided |
The company's name. Allowable values: <= 256 characters |
account.companyNumber string required if account is provided |
The company number. Allowable values: A valid string |
account.incorporationDate string |
The company's incorporation date. Allowable values: Format: YYYY-MM-DD |
account.type string required if account is provided |
The company type. Allowable values: ltd , private-limited-guarant-nsc-limited-exemption , private-limited-guarant-nsc , llp , plc , sole_trader , charity , charitable-incorporated-organisation , partnership , assurance-company , converted-or-closed , limited_by_guarantee , limited-partnership , oversea-company , private-unlimited , royal-charter , registered-society-non-jurisdictional , trust , uk-establishment , other |
account.website string |
The URL of the company's website. Allowable values: <= 256 characters |
account.onboardingDetail string |
Optional additional details about the account. Allowable values: A valid string |
account.address object required if account is provided |
Details about the account's address. Allowable values: addressLine1 , addressLine2 , townCity , postCode , countryCode |
account.address.addressLine1 string required if account is provided |
The first line of the business' registered address. Allowable values: <= 256 characters |
account.address.addressLine2 string |
The second line of the business' registered address. Allowable values: <= 256 characters |
account.address.townCity string required if account is provided |
The town or city of the business' registered address. Allowable values: <= 256 characters |
account.address.postCode string required if account is provided |
The postal or ZIP code of the business' registered address. Allowable values: <= 36 characters |
account.address.countryCode string required if account is provided |
The country of the business' registered address, in ISO 3166-1 format (alpha-2). Allowable values: 2 characters |
kyc object required |
Details for the KYC checks. Allowable values: A valid kyc object containing the following fields: mainPurpose , sourceOfFunds , destinationOfFunds ,currenciesRequired , annualVolume , numberOfPayments |
kyc.mainPurpose array of strings required |
The main purposes of the payments. Allowable values: Business acquisition , Business costs/revenue , Charity , Currency purchase/sale , Dividend payments , Inheritance , Intercompany Transfers , Investment , Legal fees , Loan , Mortgage payments , On-going payments to family , One off payment , Payment of services , Payment to suppliers , Property maintenance , Property purchase , Property sale , Purchase of goods , Relocating abroad" , Repatriation , Royalties , Sale of shares , Study fees/tuition , Vehicle purchase , Incentives/Grants , Tax payments , Director's fees |
kyc.sourceOfFunds array of strings required |
The source of funds. Allowable values: salary , savings , property , cryptocurrency , inheritance , other |
kyc.destinationOfFunds array of strings required |
The destination of funds, in ISO 3166-1 format (alpha-2). Allowable values: 2 characters |
kyc.currenciesRequired array of strings required |
The currency codes of the required currencies, in ISO 4217 format. Allowable values: 3 characters |
kyc.annualVolume string required |
The expected annual volume of payments. Allowable values: Less than £10,000 , £10,000 - £50,000 , £50,000 - £100,000 , £100,000 - £250,000 , £250,000 - £1,000,000 , £1,000,000 - £5,000,000 , More than £5,000,000 |
kyc.numberOfPayments string required |
The expected annual number of payments. Allowable values: Fewer than 5 payments , 5 - 10 payments , 10 - 20 payments , More than 20 payments |
Response
If your request is successful, you'll receive a 202
response. This will also trigger an AccountCreated
event if you've set up webhooks.
For more detailed information about this request and its response, see the API reference.
Response
If your request is successful, you'll receive a 202
response.
For more detailed information about this request and its response, see the API reference.
What's next?
Once we've finished verifying the business or person you've submitted details for, we'll activate their account. If you've set up webhooks, you'll receive an AccountActivated
event when this happens.