addKycInformation
curl --request POST \
--url https://sandbox.rollfi.xyz/userOnboarding/addKycInformation \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"method": "addKycInformation",
"kycInformation": {
"userId": "5a2390e1-0f83-46bd-ae1c-81b30fe364e1",
"ssn": "789898953",
"dateOfBirth": "2000-01-01",
"address1": "777 West Convention Way",
"address2": "",
"city": "Anaheim",
"state": "CA",
"zipcode": "92802"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
'import requests
url = "https://sandbox.rollfi.xyz/userOnboarding/addKycInformation"
payload = {
"method": "addKycInformation",
"kycInformation": {
"userId": "5a2390e1-0f83-46bd-ae1c-81b30fe364e1",
"ssn": "789898953",
"dateOfBirth": "2000-01-01",
"address1": "777 West Convention Way",
"address2": "",
"city": "Anaheim",
"state": "CA",
"zipcode": "92802"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
method: 'addKycInformation',
kycInformation: {
userId: '5a2390e1-0f83-46bd-ae1c-81b30fe364e1',
ssn: '789898953',
dateOfBirth: '2000-01-01',
address1: '777 West Convention Way',
address2: '',
city: 'Anaheim',
state: 'CA',
zipcode: '92802'
},
userRemoteLocation: {address1: 'e', address2: 'e', city: 'e', state: 'AZ', zipcode: '50023'}
})
};
fetch('https://sandbox.rollfi.xyz/userOnboarding/addKycInformation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.rollfi.xyz/userOnboarding/addKycInformation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'method' => 'addKycInformation',
'kycInformation' => [
'userId' => '5a2390e1-0f83-46bd-ae1c-81b30fe364e1',
'ssn' => '789898953',
'dateOfBirth' => '2000-01-01',
'address1' => '777 West Convention Way',
'address2' => '',
'city' => 'Anaheim',
'state' => 'CA',
'zipcode' => '92802'
],
'userRemoteLocation' => [
'address1' => 'e',
'address2' => 'e',
'city' => 'e',
'state' => 'AZ',
'zipcode' => '50023'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.rollfi.xyz/userOnboarding/addKycInformation"
payload := strings.NewReader("{\n \"method\": \"addKycInformation\",\n \"kycInformation\": {\n \"userId\": \"5a2390e1-0f83-46bd-ae1c-81b30fe364e1\",\n \"ssn\": \"789898953\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"777 West Convention Way\",\n \"address2\": \"\",\n \"city\": \"Anaheim\",\n \"state\": \"CA\",\n \"zipcode\": \"92802\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.rollfi.xyz/userOnboarding/addKycInformation")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"method\": \"addKycInformation\",\n \"kycInformation\": {\n \"userId\": \"5a2390e1-0f83-46bd-ae1c-81b30fe364e1\",\n \"ssn\": \"789898953\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"777 West Convention Way\",\n \"address2\": \"\",\n \"city\": \"Anaheim\",\n \"state\": \"CA\",\n \"zipcode\": \"92802\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.rollfi.xyz/userOnboarding/addKycInformation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"method\": \"addKycInformation\",\n \"kycInformation\": {\n \"userId\": \"5a2390e1-0f83-46bd-ae1c-81b30fe364e1\",\n \"ssn\": \"789898953\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"777 West Convention Way\",\n \"address2\": \"\",\n \"city\": \"Anaheim\",\n \"state\": \"CA\",\n \"zipcode\": \"92802\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}"
response = http.request(request)
puts response.read_body{
"kycInformation": {
"userId": "5a2390e1-0f83-46bd-ae1c-81b30fe364e1",
"status": "KYC Pending",
"message": "The KYC Information for jacob king has been added successfully."
}
}{
"error": {
"code": 400,
"message": "EmployeeId is mandatory and cannot be empty."
}
}User Onboarding
addKycInformation
The addKycInformation API is used to collect essential identity information from employees as part of the KYC (Know Your Customer) process for regulatory compliance and identity validation.
What it does:
- Collects essential identity data (name, DOB, SSN, address)
- Requires all data needed for the KYC verification process
Note:
This a mandatory step in the user onboarding flow. Users must complete this step before proceeding with tax information (W-4) or bank account setup.
POST
/
userOnboarding
/
addKycInformation
addKycInformation
curl --request POST \
--url https://sandbox.rollfi.xyz/userOnboarding/addKycInformation \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"method": "addKycInformation",
"kycInformation": {
"userId": "5a2390e1-0f83-46bd-ae1c-81b30fe364e1",
"ssn": "789898953",
"dateOfBirth": "2000-01-01",
"address1": "777 West Convention Way",
"address2": "",
"city": "Anaheim",
"state": "CA",
"zipcode": "92802"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
'import requests
url = "https://sandbox.rollfi.xyz/userOnboarding/addKycInformation"
payload = {
"method": "addKycInformation",
"kycInformation": {
"userId": "5a2390e1-0f83-46bd-ae1c-81b30fe364e1",
"ssn": "789898953",
"dateOfBirth": "2000-01-01",
"address1": "777 West Convention Way",
"address2": "",
"city": "Anaheim",
"state": "CA",
"zipcode": "92802"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
method: 'addKycInformation',
kycInformation: {
userId: '5a2390e1-0f83-46bd-ae1c-81b30fe364e1',
ssn: '789898953',
dateOfBirth: '2000-01-01',
address1: '777 West Convention Way',
address2: '',
city: 'Anaheim',
state: 'CA',
zipcode: '92802'
},
userRemoteLocation: {address1: 'e', address2: 'e', city: 'e', state: 'AZ', zipcode: '50023'}
})
};
fetch('https://sandbox.rollfi.xyz/userOnboarding/addKycInformation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.rollfi.xyz/userOnboarding/addKycInformation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'method' => 'addKycInformation',
'kycInformation' => [
'userId' => '5a2390e1-0f83-46bd-ae1c-81b30fe364e1',
'ssn' => '789898953',
'dateOfBirth' => '2000-01-01',
'address1' => '777 West Convention Way',
'address2' => '',
'city' => 'Anaheim',
'state' => 'CA',
'zipcode' => '92802'
],
'userRemoteLocation' => [
'address1' => 'e',
'address2' => 'e',
'city' => 'e',
'state' => 'AZ',
'zipcode' => '50023'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.rollfi.xyz/userOnboarding/addKycInformation"
payload := strings.NewReader("{\n \"method\": \"addKycInformation\",\n \"kycInformation\": {\n \"userId\": \"5a2390e1-0f83-46bd-ae1c-81b30fe364e1\",\n \"ssn\": \"789898953\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"777 West Convention Way\",\n \"address2\": \"\",\n \"city\": \"Anaheim\",\n \"state\": \"CA\",\n \"zipcode\": \"92802\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.rollfi.xyz/userOnboarding/addKycInformation")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"method\": \"addKycInformation\",\n \"kycInformation\": {\n \"userId\": \"5a2390e1-0f83-46bd-ae1c-81b30fe364e1\",\n \"ssn\": \"789898953\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"777 West Convention Way\",\n \"address2\": \"\",\n \"city\": \"Anaheim\",\n \"state\": \"CA\",\n \"zipcode\": \"92802\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.rollfi.xyz/userOnboarding/addKycInformation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"method\": \"addKycInformation\",\n \"kycInformation\": {\n \"userId\": \"5a2390e1-0f83-46bd-ae1c-81b30fe364e1\",\n \"ssn\": \"789898953\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"777 West Convention Way\",\n \"address2\": \"\",\n \"city\": \"Anaheim\",\n \"state\": \"CA\",\n \"zipcode\": \"92802\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}"
response = http.request(request)
puts response.read_body{
"kycInformation": {
"userId": "5a2390e1-0f83-46bd-ae1c-81b30fe364e1",
"status": "KYC Pending",
"message": "The KYC Information for jacob king has been added successfully."
}
}{
"error": {
"code": 400,
"message": "EmployeeId is mandatory and cannot be empty."
}
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
application/json
Response
Show child attributes
Show child attributes
⌘I
