Consumer creation as a consumer
Enduser can create his "own" Consumer object before being logged-in.
As a Partner, you won't have anything to do (but you can receive events webhooks).
Moreover this is mandatory before going further with password initialization, as only created Consumers can request password initialization.
Here are the steps :
- Terms & conditions
- Create the consumer
- Initialize credentials
- Password setup
- Login
- Start the KYC procedure
- Verify email adress
Here is the regular sequence diagram :
1. Terms & Conditions
Signing Terms & Conditions is mandatory to be able to use banking features.
To do this, you can download TCs directly from our APIs, so you will always get the last version! By default, language is English, but if you need a specific language, feel free to ask your customer care!
You will need to use this Endpoint every time we update our TCs. Once TCs are updated, field termsAccepted
will change into false
state. Then, you will have to PATCH your consumer.
2. Consumer Creation
Then start to create the consumer with the "Create a Consumer" endpoint, using his phone number.
Phone County Code has to be entered correctly, otherwise SMS won't be received as expected. For the country code, you can use the "+" or not, we will add it on our side, both format are valid.
List of available countryCode
:
"1", "1242", "1246", "1264", "1268", "1284", "1340", "1345", "1441", "1473", "1649", "1664", "1670", "1671", "1684", "1721", "1758", "1767", "1784", "1787", "1809", "1829", "1849", "1868", "1869", "1876", "1939", "20", "211", "212", "213", "216", "218", "220", "221", "222", "223", "224", "225", "226", "227", "228", "229", "230", "231", "232", "233", "234", "235", "236", "237", "238", "239", "240", "241", "242", "243", "244", "245", "246", "248", "249", "250", "251", "252", "253", "254", "255", "256", "257", "258", "260", "261", "262", "263", "264", "265", "266", "267", "268", "269", "27", "290", "291", "297", "298", "299", "30", "31", "32", "33", "34", "350", "351", "352", "353", "354", "355", "356", "357", "358", "359", "36", "370", "371", "372", "373", "374", "375", "376", "377", "378", "379", "380", "381", "382", "383", "385", "386", "387", "389", "39", "40", "41", "420", "421", "423", "43", "44", "441481", "441534", "441624", "45", "46", "47", "48", "49", "500", "501", "502", "503", "504", "505", "506", "507", "508", "509", "51", "52", "53", "54", "55", "56", "57", "58", "590", "591", "592", "593", "595", "597", "598", "599", "60", "61", "62", "63", "64", "65", "66", "670", "672", "673", "674", "675", "676", "677", "678", "679", "680", "681", "682", "683", "685", "686", "687", "688", "689", "690", "691", "692", "7", "81", "82", "84", "850", "852", "853", "855", "856", "86", "880", "886", "90", "91", "92", "93", "94", "95", "960", "961", "962", "963", "964", "965", "966", "967", "968", "970", "971", "972", "973", "974", "975", "976", "977", "98", "992", "993", "994", "995", "996", "998"
Optionnaly, more information can be provided, as Consumer's source of funds or occupation. At last, you should indicate the acceptance of T&Cs by indicating the version. This can be done at a later stage, by updating the consumer, but it is recommended to have it done right away so it won't be a blocking point to use financial service later.
Name | Type | Description |
---|---|---|
partnerName | string | The partnerName, mandatory if you create a consumer as anonymous. Ignored if requesting as a partner. |
externalId | string [ 0 .. 511 ] characters | A unique identifier that you can use to link this consumer to a user in your system. |
phone | object (PhoneRequestDto) | The phone details of the consumer. |
emailAddress | string | The email address of the consumer. |
sourceOfFunds | string | Enum: COMPENSATION_PAYOUT , COMPANY_PROFITS , COMPANY_SALE , DIVIDEND_PAYMENTS , DIVORCE_SETTLEMENT , FIXED_DEPOSITS , GIFT , INHERITANCE , INSURANCE_PAYOUT , LOAN , LOTTERY_OR_GAMBLING_WIN , RETIREMENT_INCOME , SALE_OF_INVESTMENT , SALE_OF_PROPERTY , SAVINGS_FROM_SALARY , OTHER . |
otherSourceOfFunds | string [ 0 .. 511 ] characters | Description of source of funds if 'OTHER' was chosen. |
occupation | string | The consumer's usual or principal work or business as a means of earning a living. Enum: BUSINESS_OWNER , CLERGY , CRAFTSMAN , ENGINEER , EXECUTIVE , FARMER , FREELANCE , LIBERAL_PROFESSION , POLITICIAN , PROFESSOR , PUBLIC_SERVANT , RETIRED , SHOPKEEPER , STUDENT , UNEMPLOYED , WORKER , OTHER . |
otherOccupation | string [ 0 .. 511 ] characters | Description of occupation if 'OTHER' was chosen. |
lastTermsAccepted | string | The version of the terms and conditions signed by the consumer. |
metadata | object (Metadata) | A custom field to save data. This field's size is limited to 3000 characters. |
Exemple request body
{
"partnerName": "string",
"externalId": "string",
"phone": {
"countryCode": "33",
"number": "string"
},
"emailAddress": "string",
"sourceOfFunds": "COMPENSATION_PAYOUT",
"otherSourceOfFunds": "string",
"occupation": "BUSINESS_OWNER",
"otherOccupation": "string",
"lastTermsAccepted": "1.0",
"metadata": {
"property1": { },
"property2": { }
}
}
Answer will contains only the id of create Consumer.
3. Initialize password by sending the Secret
Then the Consumer can start initializing his password by requesting a secret, to be able to log-in and use other API endpoints.
To do so, please refer to Authentication Setup page of this Guide.
The correct password initialization will act as a phone number verification method.
The Secret received by the Enduser have a lifetime of few seconds.
4. First password set up
Once secret received, you can then set up the first password. You will have to provide :
{
"newPassword": "string",
"passwordChangeSecret": "string"
}
5. Login to the App
Once the first password is set up, you can log into the application to receive a bearer token and a refresh token.
Bearer Token have a limited life time that you can fetch by decoding the JWT.
6. Start the KYC procedure
At last, once Enduser is logged, you can move on with the KYC. KYC is mandatory to be able to open financial instruments for an Enduser. You can find all the procedure [Here] (./kyc-procedure.mdx).
Full KYC process take less than a minute and verification process can be between 2 and 5 minutes.
Get Link and send it to consumer
Wait for consumer to be validated
7. Email address verification
We higly suggest you to validate the email address of your Endsuer. To do this, you can use the Endpoint : "Send an email verification link by email".
When you trigger this Endpoint, a clickable link will be sent to you Enduser. You can customize sender domain or template if necessary. To see customizable options, please check [Here] (./customization.mdx).
Email can be provided in two way. You can patch your Consumer to provide the email address, or you can wait the end of the KYC proccess which already request the email address.
Send email containing a clickable verification link