An Account Holder represents the legal entity that holds the Xendit Account that is created in your Platform. You will need to Create an Account to link the account holder with. The details that you need to provide in the request depend on the Account holders' legal entity type. Please refer to this guide for a comprehensive step-by-step as well as requirements for each country and entity type.
You will need to use Update Account API to link the Account Holder to the xenPlatform Account before the verification can begin.
You will need the Account Holder
Write
API key permission to perform this request
{
"business_detail": {
"type": "CORPORATION",
"legal_name": "My Store Inc.",
"trading_name": "John's Store",
"description": "description here",
"industry_category": "ELECTRONICS_AND_ACCESSORIES",
"date_of_registration": "2023-02-02",
"country_of_operation": "PH"
},
"individual_details": [
{
"given_names": "John",
"surname": "Doe",
"phone_number": "+63021234567",
"email": "test@xendit.co",
"nationality": "PH",
"place_of_birth": "PH",
"date_of_birth": "2000-02-02",
"gender": "MALE",
"type": "PIC",
"role": "owner"
}
],
"address": {
"country": "PH",
"city": "Caloocan",
"street_line1": "9th St",
"street_line2": "Building 101",
"district": "1st district",
"province_state": "Metro Manila",
"postal_code": "1400"
},
"kyc_documents": [
{
"type": "SEC_CERTIFICATE_REGISTRATION_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "ARTICLES_OF_INCORPORATION_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "NOTARIZED_SECRETARY_CERTIFICATE_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "LATEST_GIS_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "ACR_OR_IMMIGRANT_COR_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "SERVICE_AGREEMENT_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
}
],
"website_url": "https://xendit.co",
"phone_number": "+6381234567",
"email": "test@xendit.co"
}
An object containing the business detail of the Account Holder
The entity type of the business
Legal name of the business. This must match the documentation submitted.
Trading or brand name of the business. This will be the name that appears to endpayer on payment page.
Description of the business. Please specify what business model or goods and services that the business provide. Max 1000 characters.
One of our accepted Industry Category Codes depending on your entity type and country of operation.
Refer to the list of accepted industry category codes here
Business registration date in YYYY-MM-DD
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
An object containing the individual details of the Account Holder. This could be the details of the business owner, director etc. You may submit multiple PICs (Person in Charge) for your business in this object.
A minimum 1 Incorporator and 1 PIC is required when they need to activate Cards capabilities. Whereas 1 PIC is required when they need to activate Gcash capabilities. Please see more details here
This role specifies the role of the PIC or Incorporator. E.g. Owner, Director, Administrator.
First and middle name (if any) of the account holder
Surname or family name of the account holder
The contact number of the Account Holder in E.164
format. This may also be a landline.
The email address of the account holder
Country code for customer's nationality (ISO 3166-2 Country Code)
City or other relevant location of the account holder's birth place
Date of birth of the customer in YYYY-MM-DD
The gender of the account holder
Tax Identification Number of the account holder. This parameter is required when they need to activate Cards capabilities with USD or recurring capabilities.
Please see more details here
An address object.
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
City, village or town
Province, state or region
Line 1 of street address e.g street number and name
Line 2 of street address e.g building name or apartment number
District
Sub-district
Zip or postal code
An address object.
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
City, village or town
Province, state or region
Line 1 of street address e.g street number and name
Line 2 of street address e.g building name or apartment number
District
Sub-district
Zip or postal code
A KYC document file for Account Holder verification
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
The type of the legal or KYC requirements document
Refer to the list of Required KYC Documents for all countries here
Expiry date of the document if relevant. Format YYYY-MM-DD
The file ID returned by the Upload API
A valid website associated with the business
A valid phone number associated with the business
A valid email address associated with the object
{
"id": "4376b7b0-1c44-46be-8640-828f79cdc8be",
"business_detail": {
"type": "CORPORATION",
"legal_name": "My Store Inc.",
"trading_name": "John's Store",
"description": "description here",
"industry_category": "ELECTRONICS_AND_ACCESSORIES",
"date_of_registration": "2023-02-02T00:00:00.000Z",
"country_of_operation": "PH"
},
"individual_details": [
{
"given_names": "John",
"surname": "Doe",
"phone_number": "+63021234567",
"email": "test@xendit.co",
"nationality": "PH",
"place_of_birth": "PH",
"date_of_birth": "2000-02-02",
"gender": "MALE",
"type": "PIC",
"role": "owner"
}
],
"address": {
"country": "PH",
"city": "Caloocan",
"street_line1": "9th St",
"street_line2": "Building 101",
"district": "1st district",
"province_state": "Metro Manila",
"postal_code": "1400"
},
"kyc_documents": [
{
"type": "SEC_CERTIFICATE_REGISTRATION_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "ARTICLES_OF_INCORPORATION_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "NOTARIZED_SECRETARY_CERTIFICATE_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "LATEST_GIS_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "ACR_OR_IMMIGRANT_COR_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
},
{
"type": "SERVICE_AGREEMENT_DOCUMENT",
"country": "PH",
"file_id": "63f8719642f5856dcb142bd2"
}
],
"website_url": "https://xendit.co",
"phone_number": "+6381234567",
"email": "test@xendit.co",
"kyc": {
"status": "NOT_VERIFIED"
},
"created_at": "2023-03-30T11:41:57.881Z",
"updated_at": "2023-03-30T11:44:01.122Z"
}
The unique ID of an Account Holder object
An object containing the business detail of the Account Holder
The entity type of the business
Legal name of the business. This must match the documentation submitted.
Trading or brand name of the business. This will be the name that appears to endpayer on payment page.
Description of the business. Please specify what business model or goods and services that the business provide. Max 1000 characters.
One of our accepted Industry Category Codes depending on your entity type and country of operation.
Refer to the list of accepted industry category codes here
Business registration date in YYYY-MM-DD
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
An object containing the individual details of the Account Holder. This could be the details of the business owner, director etc. You may submit multiple PICs (Person in Charge) for your business in this object.
A minimum 1 Incorporator and 1 PIC is required when they need to activate Cards capabilities. Whereas 1 PIC is required when they need to activate Gcash capabilities. Please see more details here
This role specifies the role of the PIC or Incorporator. E.g. Owner, Director, Administrator.
First and middle name (if any) of the account holder
Surname or family name of the account holder
The contact number of the Account Holder in E.164
format. This may also be a landline.
The email address of the account holder
Country code for customer's nationality (ISO 3166-2 Country Code)
City or other relevant location of the account holder's birth place
Date of birth of the customer in YYYY-MM-DD
The gender of the account holder
Tax Identification Number of the account holder. This parameter is required when they need to activate Cards capabilities with USD or recurring capabilities.
Please see more details here
An address object.
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
City, village or town
Province, state or region
Line 1 of street address e.g street number and name
Line 2 of street address e.g building name or apartment number
District
Sub-district
Zip or postal code
An address object.
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
City, village or town
Province, state or region
Line 1 of street address e.g street number and name
Line 2 of street address e.g building name or apartment number
District
Sub-district
Zip or postal code
A KYC document file for Account Holder verification
The country (based on ISO 3166-1 Alpha-2) of incorporation for a business, or the country of residence for an individual.
The type of the legal or KYC requirements document
Refer to the list of Required KYC Documents for all countries here
Expiry date of the document if relevant. Format YYYY-MM-DD
The file ID returned by the Upload API
A valid website associated with the business
A valid phone number associated with the business
A valid email address associated with the object
Timestamp of when the object was created
Timestamp of when the object was updated
Validation error
{
"error_code": "API_VALIDATION_ERROR",
"message": "Inputs are failing validation. The errors field contains details about which fields are violating validation.",
"errors": [
"Detailed description here"
]
}
Inputs are failing validation. The errors field contains details about which fields are violating validation.
Validation error
{
"error_code": "INVALID_API_KEY",
"message": "The API key format is invalid",
"errors": [
"Detailed description here"
]
}
Invalid API key
Validation error
{
"error_code": "REQUEST_FORBIDDEN_ERROR",
"message": "The API key in use does not have the necessary permissions to perform the request. Please assign the xenPlatform Account Holder Write permission for the key.",
"errors": [
"Detailed description here"
]
}
{
"error_code": "FEATURE_NOT_ACTIVATED",
"message": "This feature has not been activated for your account",
"errors": [
"Detailed description here"
]
}
Forbidden request
Not found error
{
"error_code": "DATA_NOT_FOUND",
"message": "Could not find payout with the corresponding ID. Please try again with a valid ID.",
"errors": [
"Detailed description here"
]
}
The object being referenced does not exist
Validation error
{
"error_code": "SERVER_ERROR",
"message": "Something unexpected, our developers have been notified to troubleshoot the issue",
"errors": [
"Detailed description here"
]
}
Server error
{
"event": "account_holder.kyc.status",
"created": "2021-01-01T10:00:00Z",
"business_id": "5fe2b0137b7d62542fe6d7de",
"data": {
"id": "57fb4e076fa3fa296b7f5a97",
"created": "2021-01-01T10:00:00Z",
"updated": "2021-01-01T10:00:00Z",
"kyc": {
"status": "PASSED",
"verified_at": "2021-01-01T10:00:00Z",
"requested_at": "2021-01-01T10:00:00Z",
"kyc_passed_at": "2021-01-01T10:00:00Z"
}
}
}
Event that occurred for this webhook
ID of your Account, use this in the for-user-id header to create transactions on behalf of your Account
Timestamp of when the webhook was sent
Timestamp of when the webhook was updated
The unique ID of an Account Holder object
Timestamp of when the webhook was sent
Timestamp of when the webhook was updated
Timestamp of when the object was updated
Timestamp of when the object was updated
Timestamp of when the object was updated
An object containing the details of the Account Holder capabilities activation process
Timestamp of when the object was updated
Timestamp of when the object was updated
Timestamp of when the object was updated
OK