Create Vendor
The first thing you should do when integration the vendor onboarding process is implement the Create vendor call below. Vendors can be created with or without pre-populating additional onboarding fields.
Pre populating onboarding fields makes the onboarding process easier for your vendors. Send some of the onboarding fields while creating the vendor (using same API call).
In most cases, some of the information we require for the vendor onboarding is already collected by your platform.
Create vendor without pre-populating any onboarding fields
Make a POST /vendors
request to create a new vendor, provide the information you have and the rest will be collected later on in the onboarding process:
curl --location --request POST 'https://sandbox.unipaas.com/platform/vendors' \
--header 'accept: application/json' \
--header 'Authorization: Bearer <PLATFORM_SECRET_KEY>' \
--header 'Content-Type: application/json' \
--data-raw '{
"businessName": "Better Delivery",
"type": "company",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"country": "GB",
"vendorReference" : "Qiuysdxv5shs", // The unique user id on your system
"createOnboardingLink": true
}'
In the response, you'll get the created vendor object, as shown in the example below
{
"id": "61829cf9db1fb65b94f1acf8",
"businessName": "Better Delivery",
"email": "[email protected]",
"createdAt": "2021-11-03T14:30:17.120Z",
"updatedAt": "2021-11-03T14:30:17.120Z",
"merchantId": "616d3e7faba71b9e13a2f7b7",
"acceptPayments": false,
"receivePayouts": false,
"onboardingLink": "https://sandbox-hosted.unipaas.com/vendors/6162aff7d7eb80d6982c18bf/I45f0ooz7CkuOsPJ7s4v"
}
Create vendor and pre-populate onboarding fields
Make a POST /vendors
request to create a new vendor, provide the information you have, and the rest will be collected later on in the onboarding process:
curl --location --request POST 'https://sandbox.unipaas.com/platform/vendors' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <PLATFORM_SECRET_KEY>' \
--data-raw '{
"businessName": "Better Delivery",
"type": "company",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"country": "GB",
"url": "http://example.com",
"serviceDescription": "service description",
"birthDate": "1980-01-01",
"phone": "+447911123456",
"category": "FOOD_DELIVERY",
"createOnboardingLink": true
}'
Onboarding type
The onboarding type defines if your vendor is an individual / sole trader (
individual
) or a registered company (company
).
In the response, you'll get the created vendor object.
{
"id": "61829cf9db1fb65b94f1acf8",
"businessName": "Better Delivery",
"email": "[email protected]",
"createdAt": "2021-11-03T14:30:17.120Z",
"updatedAt": "2021-11-03T14:30:17.120Z",
"merchantId": "616d3e7faba71b9e13a2f7b7",
"acceptPayments": false,
"receivePayouts": false,
"onboardingLink": "https://sandbox-hosted.unipaas.com/vendors/6162aff7d7eb80d6982c18bf/I45f0ooz7CkuOsPJ7s4v"
}
Note that the create vendor response includes an onboarding link that you can send your vendor. This will allow your vendor to complete all remaining onboarding fields in a UNIPaaS hosted UI.
Pre populated onboarding fields
The following fields describe the onboarding data that can be, and should to be, pre filled upon vendor creation using a POST /vendors/{vendorId}/onboarding API call after a vendor has been created.
Please mind that we strongly recommend you provide as much data as possible. It will save your vendor time and effort, and will increase conversion rates for the payment onboarding process.
Read Only fields
Some fields are 'read only': the vendor won't be able to see/edit them.
Individual onboarding fields
Field Name | Is Required | Type | Description | Read Only |
---|---|---|---|---|
businessName | Optional | String | Represents the name of the business (if applicable) for both individuals and companies. This field will also define how your business is identified in your customer's credit card statements. | Yes |
firstName | Required | String | For Individual onboarding this field represents the individual's first name. For Company onboarding This field represents the company representative first name | No |
lastName | Required | String | For Individual onboarding this field represents the individual's last name. For Company onboarding This field represents the company representative last name | No |
birthDate | Recommended | String | For Individual onboarding this field represents the individual's date of birth. For Company onboarding This field represents the company representative date of birth | Yes |
phone | Recommended | String | For Individual onboarding this field represents the individual's phone number For Company onboarding This field represents the company representative phone number | Yes |
email | Required | String | For Individual onboarding this field represents the individual's email address For Company onboarding This field represents the company email address | Yes |
country | Required | String ISO 3166-1 alpha-2 code | For Individual onboarding this field represents the individual's country For Company onboarding This field represents the company corporate country | Yes |
type | Recommended (for UI) Required (for API) | Enum | The two available types are: Company Individual Each will present a different onboarding flow to your vendors | Yes |
url | Recommended | String | Individual onboarding Profile URL (website, blog, social network profile) Company onboarding Official Website URL | No |
serviceDescription | Recommended | String | Individual onboarding Description of the provided service | Yes |
category | Recommended | Enum | Individual and Company onboarding MCC Enum List of all MCC codes | Yes |
createOnboardingLink | Recommended | boolean | Individual and Company onboarding True - you will receive an onboarding link in the API response False - you will NOT receive an onboarding link in the API response | Yes |
Vendor invitation flows
In case your vendor creation flows include an invitation flow (e.g an vendor is being invited by an accountant) you should implement the referer flow before moving forward to the next step.
Updated about 1 year ago