Creación de Cuentas (Intents)
La creación de una cuenta comercio se inicializa mediante la creación de una Intención de Registro (Intent). Este proceso genera una sesión temporal y segura.
Crear Intent de Onboarding
Genera una URL única para que el comercio cliente complete su afiliación.
Endpoint: api/v1/onboarding/intent
Método: POST
Parámetros
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
success_url | string | No | A dónde redirigir al comercio cuando termine el registro. |
cancel_url | string | No | A dónde redirigir si el comercio cancela el proceso. |
metadata | object | No | Datos extra que querás guardar con este registro (ej. vendedor_id, region). Se devuelven intactos en el Webhook. |
idempotency_key | string | No | Clave única para evitar crear registros duplicados por error. |
business | object | No | Datos del negocio. Si los envias, el comercio se registra con los datos proporcionados y queda pendiente de pago. Si no los enviás, el comercio completa sus datos en el formulario. Ver Datos del negocio. |
Datos del negocio
Enviá estos datos cuando ya los tengas disponibles. Al ser campos opcionales, si no se incluyen, el comercio podrá completarlos posteriormente desde el formulario.
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | Sí | Nombre comercial (ej: "Café Central"). |
type | string | Sí | Tipo de negocio (ej: Restaurante, Retail, Servicios). |
whatsapp_number | string | Sí | Número de WhatsApp. Debe ser único por negocio. |
email | string | No | Correo electrónico de contacto. |
location | string | Sí | Coordenadas geográficas (ej: "-17.7833, -63.1821"). |
city | string | Sí | Ciudad. |
address | string | Sí | Dirección completa. |
billing | object | Sí | Datos de facturación. Ver Datos de facturación. |
owner | object | Sí | Datos del propietario del negocio. Ver Datos del propietario. |
Datos de facturación
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
business_name | string | Sí | Razón social o nombre legal. |
document_number | string | Sí | NIT o CI. |
document_type | string | Sí | "1" para CI o "5" para NIT. |
Datos del propietario
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | Sí | Nombre del propietario. |
first_last_name | string | Condicional | Primer apellido. Requerido si no enviás el segundo. |
second_last_name | string | Condicional | Segundo apellido. Requerido si no enviás el primero. |
ci | string | Sí | Número de Cédula de Identidad. |
ci_complement | string | No | Complemento del CI (ej: "A1", "B2"). |
Ejemplo: Solo datos básicos
El comercio completa sus datos desde el formulario de Vendis.
{
"idempotency_key": "codeunique-intent",
"success_url": "https://tu-sistema.com/onboarding/exito",
"metadata": {
"vendedor_id": "V-123",
"region": "Santa Cruz"
}
}
Ejemplo: Con datos del negocio
El comercio se registra directamente y queda pendiente de pago.
{
"idempotency_key": "codeunique-intent",
"success_url": "https://tu-sistema.com/onboarding/exito",
"metadata": {
"vendedor_id": "V-123"
},
"business": {
"name": "Café Central",
"type": "Restaurante",
"whatsapp_number": "+59170000000",
"email": "info@cafecentral.com",
"location": "-17.7833, -63.1821",
"city": "Santa Cruz",
"address": "Av. Principal #456",
"billing": {
"legal_name": "Café Central S.R.L.",
"document_number": "1029384756",
"document_type": "5"
},
"owner": {
"name": "Juan",
"first_last_name": "Pérez",
"second_last_name": "López",
"ci": "1234567",
"ci_complement": "LP"
}
}
}
Respuesta
Sin datos del negocio (el comercio los completa después):
{
"success": true,
"data": {
"code": "ONB-XXXX-XXXX",
"status": "pending",
"onboarding_url": "https://onboarding.vendis.com/start/onb_abcdef123...",
"expires_at": "2026-04-24T15:51:00Z",
"idempotency_key": "codeunique-intent"
}
}
Con datos del negocio (pendiente de pago):
{
"success": true,
"data": {
"code": "ONB-XXXX-XXXX",
"status": "awaiting_payment",
"onboarding_url": "https://onboarding.vendis.com/start/onb_abcdef123...",
"expires_at": "2026-04-24T15:51:00Z",
"idempotency_key": "codeunique-intent"
}
}