Create accounts for cards
Start onboarding an account with the cards 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 cards
Post/v2/onboarding
Request
Use this request to submit details and start onboarding an account.
Sample requestRequest structure
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": [
"cards"
],
"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": {
"expectedCardUse": [
[
"advertising_and_marketing",
"bills_and_utilities",
"client_entertainment"
]
],
"sourceOfFunds": [
"salary"
],
"currenciesRequired": [
"GBP",
"USD"
]
],
"averageLoad": "10000_25000",
"numberOfCards": "11_50",
"cardFourthLine": "CUSTOMER",
"employeeCards": true,
"atmWithdrawals": true
}
}'
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": {
"expectedCardUse": [
[
"string"
]
],
"sourceOfFunds": [
"string"
],
"currenciesRequired": [
"string"
],
"averageLoad": "string",
"numberOfCards": "string",
"cardFourthLine": "string",
"employeeCards": boolean,
"atmWithdrawals": boolean
}
}'
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: 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: addressLine1 , addressLine2 , townCity , postCode , countryCode |
contact.address.addressLine1 string required |
The first line of the primary owner's residential address. Allowable values: <= 256 characters |
contact.address.addressLine2 string |
The second line of the primary owner's residential address. Allowable values: <= 256 characters |
contact.address.townCity string required |
The town or city of the primary owner's residential address. Allowable values: <= 256 characters |
contact.address.postCode string required |
The postal or ZIP code of the primary owner's residential address. Allowable values: <= 36 characters |
contact.address.countryCode string required |
The country code of the primary owner's residential 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 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 account'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 that contains the following fields: sourceOfFunds , expectedCardUse , currenciesRequired , averageLoad , numberOfCards , cardFourthLine , atmWithdrawals |
kyc.sourceOfFunds array of strings required |
The source of funds. Allowable values: salary , savings , property , cryptocurrency , inheritance , other |
kyc.expectedCardUse array of strings required |
The expected uses of the cards. Allowable values: advertising_and_marketing , bills_and_utilities , client_entertainment , customer_incentives , employee_incentives , fuel_and_mileage_domestic , fuel_and_mileage_overseas , location_expenses__film__tv , office_equipment , online_subscriptions , other , payment_terminal_testing , payroll , per_diems , petty_cash , procurement__purchasing , procurement__sourcing_ , travel_expenses_domestic , travel_expenses_overseas |
kyc.currenciesRequired array of strings required |
The currency codes of the required currencies, in ISO 4217 format. Allowable values: 3 characters |
kyc.averageLoad string required |
The expected average load. Allowable values: 0_20k , 20_50k , 50_100k , 100_250k , 250_500k , 500_1000k , 1000k |
kyc.numberOfCards string required |
The expected number of cards on the account. Allowable values: 0_10 , 11_50 , 51_100 , 101+ |
kyc.cardFourthLine string required |
The line that appears below the name on the payment card. For example, Equals Money . This is only for business accounts. Note that text that is longer than 15 characters will be truncated.Allowable values: <= 21 characters |
kyc.employeeCards boolean required |
Whether or not the employee cards feature is enabled. Allowable values: true , false |
kyc.atmWithdrawals boolean required |
Whether or not the card can be used for withdrawals at automated teller machines (ATMs). Allowable values: true , false |
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.