API reference
Wallets
Onramp and offramp
Transactions
User signers
KYC
Start KYC process
Initiates KYC verification process for a user with the configured provider
POST
/
v1
/
users
/
{user_id}
/
fiat
/
kyc
curl --request POST \
--url https://api.privy.io/v1/users/{user_id}/fiat/kyc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"provider": "bridge",
"data": {
"type": "individual",
"first_name": "<string>",
"last_name": "<string>",
"email": "[email protected]",
"residential_address": {
"street_line_1": "<string>",
"street_line_2": "<string>",
"city": "<string>",
"subdivision": "<string>",
"postal_code": "<string>",
"country": "<string>"
},
"birth_date": "<string>",
"identifying_information": [
{
"type": "<string>",
"issuing_country": "<string>",
"number": "<string>",
"description": "<string>",
"expiration": "<string>",
"image_front": "<string>",
"image_back": "<string>"
}
],
"signed_agreement_id": "<string>",
"middle_name": "<string>",
"transliterated_first_name": "<string>",
"transliterated_middle_name": "<string>",
"transliterated_last_name": "<string>",
"phone": "<string>",
"transliterated_residential_address": {
"street_line_1": "<string>",
"street_line_2": "<string>",
"city": "<string>",
"subdivision": "<string>",
"postal_code": "<string>",
"country": "<string>"
},
"endorsements": [
"<string>"
],
"account_purpose": "<string>",
"account_purpose_other": "<string>",
"employment_status": "<string>",
"expected_monthly_payments_usd": "<string>",
"acting_as_intermediary": "<string>",
"most_recent_occupation": "<string>",
"source_of_funds": "<string>",
"nationality": "<string>",
"verified_selfie_at": "<string>",
"completed_customer_safety_check_at": "<string>",
"documents": [
{
"purposes": [
"<string>"
],
"file": "<string>",
"description": "<string>"
}
],
"has_signed_terms_of_service": true
}
}'
{
"user_id": "<string>",
"provider_user_id": "<string>",
"status": "not_found"
}
Authorizations
App secret authentication.
Headers
ID of your Privy app.
Path Parameters
The ID of the user to initiate KYC for
Body
application/json
Response
200 - application/json
KYC verification status
The response is of type object
.
curl --request POST \
--url https://api.privy.io/v1/users/{user_id}/fiat/kyc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"provider": "bridge",
"data": {
"type": "individual",
"first_name": "<string>",
"last_name": "<string>",
"email": "[email protected]",
"residential_address": {
"street_line_1": "<string>",
"street_line_2": "<string>",
"city": "<string>",
"subdivision": "<string>",
"postal_code": "<string>",
"country": "<string>"
},
"birth_date": "<string>",
"identifying_information": [
{
"type": "<string>",
"issuing_country": "<string>",
"number": "<string>",
"description": "<string>",
"expiration": "<string>",
"image_front": "<string>",
"image_back": "<string>"
}
],
"signed_agreement_id": "<string>",
"middle_name": "<string>",
"transliterated_first_name": "<string>",
"transliterated_middle_name": "<string>",
"transliterated_last_name": "<string>",
"phone": "<string>",
"transliterated_residential_address": {
"street_line_1": "<string>",
"street_line_2": "<string>",
"city": "<string>",
"subdivision": "<string>",
"postal_code": "<string>",
"country": "<string>"
},
"endorsements": [
"<string>"
],
"account_purpose": "<string>",
"account_purpose_other": "<string>",
"employment_status": "<string>",
"expected_monthly_payments_usd": "<string>",
"acting_as_intermediary": "<string>",
"most_recent_occupation": "<string>",
"source_of_funds": "<string>",
"nationality": "<string>",
"verified_selfie_at": "<string>",
"completed_customer_safety_check_at": "<string>",
"documents": [
{
"purposes": [
"<string>"
],
"file": "<string>",
"description": "<string>"
}
],
"has_signed_terms_of_service": true
}
}'
{
"user_id": "<string>",
"provider_user_id": "<string>",
"status": "not_found"
}