updateKycInformation
curl --request PUT \
--url https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"method": "updateKycInformation",
"kycInformation": {
"userId": "e066e305-3816-4b06-8576-50d2502be436",
"ssn": "789895512",
"dateOfBirth": "2000-01-01",
"address1": "650 Capitol Mall",
"address2": "",
"city": "e",
"state": "Sacramento",
"zipcode": "95814"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
'import requests
url = "https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation"
payload = {
"method": "updateKycInformation",
"kycInformation": {
"userId": "e066e305-3816-4b06-8576-50d2502be436",
"ssn": "789895512",
"dateOfBirth": "2000-01-01",
"address1": "650 Capitol Mall",
"address2": "",
"city": "e",
"state": "Sacramento",
"zipcode": "95814"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
method: 'updateKycInformation',
kycInformation: {
userId: 'e066e305-3816-4b06-8576-50d2502be436',
ssn: '789895512',
dateOfBirth: '2000-01-01',
address1: '650 Capitol Mall',
address2: '',
city: 'e',
state: 'Sacramento',
zipcode: '95814'
},
userRemoteLocation: {address1: 'e', address2: 'e', city: 'e', state: 'AZ', zipcode: '50023'}
})
};
fetch('https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation', 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/updateKycInformation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'method' => 'updateKycInformation',
'kycInformation' => [
'userId' => 'e066e305-3816-4b06-8576-50d2502be436',
'ssn' => '789895512',
'dateOfBirth' => '2000-01-01',
'address1' => '650 Capitol Mall',
'address2' => '',
'city' => 'e',
'state' => 'Sacramento',
'zipcode' => '95814'
],
'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/updateKycInformation"
payload := strings.NewReader("{\n \"method\": \"updateKycInformation\",\n \"kycInformation\": {\n \"userId\": \"e066e305-3816-4b06-8576-50d2502be436\",\n \"ssn\": \"789895512\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"650 Capitol Mall\",\n \"address2\": \"\",\n \"city\": \"e\",\n \"state\": \"Sacramento\",\n \"zipcode\": \"95814\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}")
req, _ := http.NewRequest("PUT", 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.put("https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"method\": \"updateKycInformation\",\n \"kycInformation\": {\n \"userId\": \"e066e305-3816-4b06-8576-50d2502be436\",\n \"ssn\": \"789895512\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"650 Capitol Mall\",\n \"address2\": \"\",\n \"city\": \"e\",\n \"state\": \"Sacramento\",\n \"zipcode\": \"95814\"\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/updateKycInformation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"method\": \"updateKycInformation\",\n \"kycInformation\": {\n \"userId\": \"e066e305-3816-4b06-8576-50d2502be436\",\n \"ssn\": \"789895512\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"650 Capitol Mall\",\n \"address2\": \"\",\n \"city\": \"e\",\n \"state\": \"Sacramento\",\n \"zipcode\": \"95814\"\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": {
"userIdId": "e066e305-3816-4b06-8576-50d2502be436",
"status": "Ready",
"message": "The KYCInformation has been updated successfully."
}
}User Onboarding
updateKycInformation
The updateKycInformation API is used to modify previously submitted identity information for employees when changes are needed.
What it does:
- Updates existing KYC data (address, phone number, personal details)
- Can update the remote work location for employees to ensure they receive the correct state tax filing
- Requires kyc to already have been added using the
addKycInformationAPI
⚠️ Warnings:
- ssn cannot be changed when the employee is
Activesince they have passed KYB. To change an employee’s ssn please contact support userRemoteLocationshould only be provided if the employee is remote and works from a location which is not their home address
PUT
/
userOnboarding
/
updateKycInformation
updateKycInformation
curl --request PUT \
--url https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"method": "updateKycInformation",
"kycInformation": {
"userId": "e066e305-3816-4b06-8576-50d2502be436",
"ssn": "789895512",
"dateOfBirth": "2000-01-01",
"address1": "650 Capitol Mall",
"address2": "",
"city": "e",
"state": "Sacramento",
"zipcode": "95814"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
'import requests
url = "https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation"
payload = {
"method": "updateKycInformation",
"kycInformation": {
"userId": "e066e305-3816-4b06-8576-50d2502be436",
"ssn": "789895512",
"dateOfBirth": "2000-01-01",
"address1": "650 Capitol Mall",
"address2": "",
"city": "e",
"state": "Sacramento",
"zipcode": "95814"
},
"userRemoteLocation": {
"address1": "e",
"address2": "e",
"city": "e",
"state": "AZ",
"zipcode": "50023"
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
method: 'updateKycInformation',
kycInformation: {
userId: 'e066e305-3816-4b06-8576-50d2502be436',
ssn: '789895512',
dateOfBirth: '2000-01-01',
address1: '650 Capitol Mall',
address2: '',
city: 'e',
state: 'Sacramento',
zipcode: '95814'
},
userRemoteLocation: {address1: 'e', address2: 'e', city: 'e', state: 'AZ', zipcode: '50023'}
})
};
fetch('https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation', 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/updateKycInformation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'method' => 'updateKycInformation',
'kycInformation' => [
'userId' => 'e066e305-3816-4b06-8576-50d2502be436',
'ssn' => '789895512',
'dateOfBirth' => '2000-01-01',
'address1' => '650 Capitol Mall',
'address2' => '',
'city' => 'e',
'state' => 'Sacramento',
'zipcode' => '95814'
],
'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/updateKycInformation"
payload := strings.NewReader("{\n \"method\": \"updateKycInformation\",\n \"kycInformation\": {\n \"userId\": \"e066e305-3816-4b06-8576-50d2502be436\",\n \"ssn\": \"789895512\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"650 Capitol Mall\",\n \"address2\": \"\",\n \"city\": \"e\",\n \"state\": \"Sacramento\",\n \"zipcode\": \"95814\"\n },\n \"userRemoteLocation\": {\n \"address1\": \"e\",\n \"address2\": \"e\",\n \"city\": \"e\",\n \"state\": \"AZ\",\n \"zipcode\": \"50023\"\n }\n}")
req, _ := http.NewRequest("PUT", 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.put("https://sandbox.rollfi.xyz/userOnboarding/updateKycInformation")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"method\": \"updateKycInformation\",\n \"kycInformation\": {\n \"userId\": \"e066e305-3816-4b06-8576-50d2502be436\",\n \"ssn\": \"789895512\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"650 Capitol Mall\",\n \"address2\": \"\",\n \"city\": \"e\",\n \"state\": \"Sacramento\",\n \"zipcode\": \"95814\"\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/updateKycInformation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"method\": \"updateKycInformation\",\n \"kycInformation\": {\n \"userId\": \"e066e305-3816-4b06-8576-50d2502be436\",\n \"ssn\": \"789895512\",\n \"dateOfBirth\": \"2000-01-01\",\n \"address1\": \"650 Capitol Mall\",\n \"address2\": \"\",\n \"city\": \"e\",\n \"state\": \"Sacramento\",\n \"zipcode\": \"95814\"\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": {
"userIdId": "e066e305-3816-4b06-8576-50d2502be436",
"status": "Ready",
"message": "The KYCInformation has been updated successfully."
}
}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
