MX eKYB Pre-fill
Earlier in our docs is an overview of our Know Your Business here. Now, this page is focused specifically on eKYB Pre-fill in Mexico (MX). eKYB Pre-fill in MX leverages Mexico's source of truth to automatically retrieve and populate business information based on a company's tax ID (RFC), including the business name, entity type, registration status, incorporation date, and contact details — without requiring manual input from the user.
Integration
Direct API Approach
All module configurations and user data can be forwarded directly in the request for performing a KYB Pre-fill lookup. This will override existing configuration and data collected about the user.
API AuthenticationAll endpoints require authentication headers to be specified as stated in Incode API Documentation.
POST /omni/externalVerification/ekyb-prefill
This endpoint performs a KYB Pre-fill lookup for the business specified, retrieving and returning available business data from the source of truth. All fields below are mandatory.
- plugins: must be ["ekyb-prefill"]: (mandatory) String array. Specifies the pre-fill flow.
- source: must be "MX_KYB_PREFILL": (mandatory) String. Identifies the pre-fill source.
- country: (mandatory) String. Two-letter Alpha-2 country code. Must be
MX. - taxId: (mandatory) String. Mexican RFC number. Accepted formats: 13 characters (4 letters + 6 digits + 3 alphanumeric characters) for legal entities, or 12 characters (3 letters + 6 digits + 3 alphanumeric characters) for individuals.
Business Tax IDs Supported in MX
- RFC (Registro Federal de Contribuyentes): 12 characters for individuals (e.g.
AIGB850818QJ9→ 4 letters + 6 digits + 3 chars), or 13 characters for legal entities (e.g.CSE250529PSA→ 3 letters + 6 digits + 3 chars).Input must be 12 or 13 alphanumeric characters. Requests with an invalid format will return a 400 error.
{
"plugins": ["ekyb-prefill"],
"source": "MX_KYB_PREFILL",
"country": "MX",
"taxId": "ABCD123456789"
}Response
The KYB Pre-fill response returns business data retrieved directly from the source of truth. Fields are returned as-is from the source, without fuzzy matching or verification scoring.
API AuthenticationAll endpoints require authentication headers to be specified as stated in Incode API Documentation.
"kyb-prefill": [
{
"tin": "ABCD123456789",
"name": "Company Name ABC",
"entityType": "Company/Legal Entity",
"registrationStatus": "Active",
"taxIdEffectiveDate": "2025-07-17",
"incorporationDate": "2025-05-29",
"email": "[email protected]"
}
]| Incode API Key | Value | Definition |
|---|---|---|
| tin | RFC number | The tax ID submitted in the request, as returned and confirmed by the source of truth. |
| name | Business name | The registered legal name of the business as returned from the source of truth. |
| entityType | Entity type | The legal entity type of the business as returned from the source of truth (e.g. Company/Legal Entity, Individual/Sole Proprietorship). |
| registrationStatus | Active, Expired, Unknown | Current registration status of the business. Active = currently registered and active (Vigente). Expired = registration has lapsed (Expirado). Unknown = status could not be determined.Not Found = inactive RFC or RFC could not be found. |
| taxIdEffectiveDate | Date | The date from which the RFC became effective, as returned from the source of truth. |
| incorporationDate | Date | The date the business was incorporated, as returned from the source of truth. |
| Email address | The business contact email address registered with the source of truth, if available. |
Note: 'RFC is not found' message with a 200 code will be returned but not all keys will come back. As of now (June 30th), message is returned with registrationStatus key but will be revisited by July 2nd.
KYB Pre-fill error responses
Please refer to error response to see conventional HTTP response codes to indicate the success or failure of an API request.
Custom 400 error if taxId is missing, empty, or not 12–13 alphanumeric characters:
{
"timestamp": 1782851408892,
"status": 400,
"error": "taxId must be a valid Mexican RFC: 12 or 13 alphanumeric characters (3-4 letters, 6 digits, 3 alphanumeric)",
"message": "taxId must be a valid Mexican RFC: 12 or 13 alphanumeric characters (3-4 letters, 6 digits, 3 alphanumeric)",
"path": "/omni/externalVerification/ekyb-prefill"
}
Custom 400 error if any mandatory field (plugins, source, country, or taxId) is missing:
{
"timestamp": 1782851468367,
"status": 400,
"error": "Bad Request",
"message": "must not be blank",
"path": "/omni/externalVerification/ekyb-prefill"
}Custom 400 error if wrong country code is provided (i.e anything other than MX):
{
"timestamp": 1782851583695,
"status": 400,
"error": "Bad Request",
"message": "IllegalArgumentException: No enum constant com.incodesmile.onboarding.integration.external.government.ekyb.domain.entity.model.EkybCountry.CO",
"path": "/omni/externalVerification/ekyb-prefill"
}Single Session Dashboard Results
They are available on Single Session view under the Business tab.
