1 - Create institutional investor(s) for a token
POST {{base_url_servicing}}/tokens/{{token_id}}/import-investors
https://docs.tokeny.com/docs/qualify-new-investors
https://docs.tokeny.com/reference/importholders
The authentication must provide management rights over the issuer importing the holders.
CAUTION: this endpoint should never be used to update the info of an investor once he has been whitelisted (e.i. existing investor). Only the investor can modify his information.
This is a two-step process.
STEP 1:
An offchain identity will be created in our system with the data provided, using the admin email as a unique identifier.
Existence checks are made on the wallet, identity address and email uniqueness. If any of the email(s) provided are already linked to an existing identity, data will be updated, including the wallet if no token was previously minted. Once all identities of the batch are created, as a response you will get (among other data) an identityId that will be used in step 2.
This first step we verify that:
the email is not already used (if yes, is the investor on the token?)
the wallet is not already used
data format, etc
This first endpoint has no impact onchain.
If you have an agreement in place to leverage our INTEGRATED wallets, please remove the Wallet Address
field and a wallet will be attributed automatically.
Request Body
{"holdersArray"=>[{"Type"=>"institution", "First Name"=>nil, "Last Name"=>nil, "Gender"=>nil, "Date of Birth"=>nil, "Place of Birth"=>nil, "Nationality"=>nil, "National ID Card #"=>nil, "Passport #"=>nil, "SSN #"=>nil, "Phone Number"=>nil, "Occupation"=>nil, "E-mail Address"=>nil, "Commercial Name"=>"instiCNOne", "Legal Name"=>"instiLNOne", "National Registration #"=>"1234321", "Legal Form"=>nil, "Incorporation Date"=>nil, "Sector of Activity"=>nil, "Country of Incorporation"=>"LUX", "Admin Person First Name"=>"APFN", "Admin Person Last Name"=>"APLN", "Admin Person E-mail"=>"padminpersonemailtwo@yopmail.com", "PEP"=>nil, "Building Number"=>nil, "Street"=>"instiStreet", "Zip Code"=>"66666", "State"=>nil, "City"=>"Luxembourg", "Country"=>"LUX", "KYC/AML"=>"Y", "ONCHAINID T&Cs"=>"Y", "Wallet Address"=>"0xF6A634f43B9Fc419E3CEdACdCc0E15F5789BFF2f"}]}
RESPONSES
status: Created
{"holdersArray":[{"typeOfInvestor":"institution","individualOrInstitution":"institution","firstName":"APFN","lastName":"APLN","gender":null,"birthday":null,"birthplace":null,"nationality":null,"idNumber":null,"passportNumber":null,"ssnNumber":null,"phone":null,"occupation":null,"email":"padminpersonemailtwo@yopmail.com","institutionTradeName":"instiCNOne","institutionLegalName":"instiLNOne","institutionRegistryNumber":"1234321","institutionLegalForm":null,"institutionIncorporationDate":null,"institutionActivity":null,"institutionRegistryCountry":"LUX","politicallyExposed":null,"institutionBuildingNumber":null,"institutionStreet":"instiStreet","institutionZipCode":"66666","institutionState":null,"institutionCity":"Luxembourg","institutionCountry":"LUX","kycAml":"Y","onchainidTCs":"Y","wallet":"0xf6a634f43b9fc419e3cedacdcc0e15f5789bff2f","identityId":"5ac6807b-663e-423e-b765-0345cde6dadf","holderId":"0d74ad02-c8fb-48ac-bfcc-8dbf657e33d1","result":"Success: Identity imported/updated."}]}