Skip to main content

Get Onboarding Requirements

Retrieve the UBO identity requirements and document requirements for business onboarding in a specific country. Use this before creating UBOs and uploading documents to know exactly what data is required.

Endpoint

GET https://prod.rynopay.io/partner/v1/onboarding-requirements?countryIso3Code={code}&businessTypeCode={type}

Query parameters

ParameterTypeRequiredDescription
countryIso3CodestringYesCountry code (ISO 3166-1 alpha-3, e.g. NGA, GBR, USA)
businessTypeCodestringNoBusiness type code to filter document requirements (e.g. LLC, SOLE_PROPRIETOR)

Example request

curl -X GET "https://prod.rynopay.io/partner/v1/onboarding-requirements?countryIso3Code=NGA&businessTypeCode=LLC" \
-H "Authorization: Bearer <access_token>"

Response

200 OK

{
"isSuccess": true,
"value": {
"countryId": "f1a2b3c4-d5e6-7890-abcd-ef1234567890",
"countryName": "Nigeria",
"countryIso3": "NGA",
"customerType": "Business",
"requiredDocuments": [
{
"documentTypeCategory": "RegistryDocuments",
"label": "Certificate of Incorporation",
"isRequired": true,
"minimumDocuments": 1,
"maximumDocuments": 3,
"allowedFormats": ["pdf", "jpg", "png"],
"maxFileSizeMB": 10,
"displayOrder": 1,
"description": "Official certificate of business registration"
},
{
"documentTypeCategory": "ProofOfAddress",
"label": "Utility Bill or Bank Statement",
"isRequired": true,
"minimumDocuments": 1,
"maximumDocuments": 2,
"allowedFormats": ["pdf", "jpg", "png"],
"maxFileSizeMB": 10,
"displayOrder": 2,
"description": "Must be dated within the last 3 months"
}
],
"requiredIdentityFields": [
{
"identityType": "PASSPORT",
"identityTypeCode": "PASSPORT",
"fieldName": "passport_number",
"inputType": "Input",
"isRequired": true,
"label": "Passport Number",
"placeholder": "Enter passport number",
"requiresIssueDate": true,
"requiresExpiryDate": true,
"requiresIdNumber": true,
"validationRules": {
"regex": "^[A-Z0-9]{6,12}$",
"minLength": 6,
"maxLength": 12,
"errorMessage": "Passport number must be 6-12 alphanumeric characters"
},
"displayOrder": 1
},
{
"identityType": "BVN",
"identityTypeCode": "BVN",
"fieldName": "bvn_number",
"inputType": "Input",
"isRequired": true,
"label": "Bank Verification Number",
"placeholder": "Enter 11-digit BVN",
"requiresIssueDate": false,
"requiresExpiryDate": false,
"requiresIdNumber": true,
"validationRules": {
"regex": "^[0-9]{11}$",
"minLength": 11,
"maxLength": 11,
"errorMessage": "BVN must be exactly 11 digits"
},
"displayOrder": 2
}
],
"configurationVersion": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
"effectiveDate": "2026-01-01T00:00:00Z",
"isDefaultConfiguration": false
}
}

Response fields

FieldTypeDescription
countryIdstring (UUID)Internal country identifier
countryNamestringCountry display name
countryIso3stringISO 3166-1 alpha-3 code
customerTypestringAlways Business for this endpoint
requiredDocumentsarrayList of required documents
requiredIdentityFieldsarrayList of required identity fields
configurationVersionstring (UUID)Configuration snapshot ID (store this for UBO submissions)
effectiveDatestringWhen this configuration became active (ISO 8601)
isDefaultConfigurationbooleanWhether this is a fallback configuration

Required document

FieldTypeDescription
documentTypeCategorystringCategory (e.g. RegistryDocuments, ProofOfAddress, TaxRegistration)
labelstringDisplay label
isRequiredbooleanWhether this document is mandatory
minimumDocumentsintegerMinimum number of documents required
maximumDocumentsintegerMaximum number of documents allowed
allowedFormatsstring[]Accepted file formats (e.g. pdf, jpg, png)
maxFileSizeMBintegerMaximum file size in MB
displayOrderintegerSuggested display order
descriptionstringAdditional instructions

Required identity field

FieldTypeDescription
identityTypestringIdentity type enum value
identityTypeCodestringIdentity type as string (use this when creating UBOs)
fieldNamestringForm field key
inputTypestringDocument, Input, or Select
isRequiredbooleanWhether this identity is mandatory
labelstringDisplay label
placeholderstringInput placeholder text
requiresIssueDatebooleanWhether issue date must be provided
requiresExpiryDatebooleanWhether expiry date must be provided
requiresIdNumberbooleanWhether ID number must be entered
validationRulesobjectValidation constraints (regex, min/max length, error message)
displayOrderintegerSuggested display order

400 Bad Request

{
"isSuccess": false,
"error": {
"code": "Country.NotFound",
"message": "No country found with code 'XYZ'"
}
}

Possible error codes:

CodeDescription
Country.NotFoundNo country matches the provided ISO3 code
BusinessType.NotFoundNo business type matches the provided code
OnboardingConfig.NotFoundNo active onboarding configuration for this country