crear expediente
curl --request POST \
--url https://nufi.azure-api.net/kyb/expedientes/nuevo \
--header 'Content-Type: application/json' \
--header 'NUFI-API-KEY: <nufi-api-key>' \
--header 'X-Workspace: <x-workspace>' \
--data '
{
"FlowID": "f-001",
"ClientId": "0001",
"ClientName": "Grupo Patito",
"SendEmail": true,
"ContactEmail": "contacto@patito.com",
"SendSms": false,
"ContactPhone": "5512345678",
"Company": {
"CompanyName": "Patito S.A. de C.V.",
"CompanyRFC": "XXX000000XX0"
},
"Data": {}
}
'import requests
url = "https://nufi.azure-api.net/kyb/expedientes/nuevo"
payload = {
"FlowID": "f-001",
"ClientId": "0001",
"ClientName": "Grupo Patito",
"SendEmail": True,
"ContactEmail": "contacto@patito.com",
"SendSms": False,
"ContactPhone": "5512345678",
"Company": {
"CompanyName": "Patito S.A. de C.V.",
"CompanyRFC": "XXX000000XX0"
},
"Data": {}
}
headers = {
"NUFI-API-KEY": "<nufi-api-key>",
"X-Workspace": "<x-workspace>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'NUFI-API-KEY': '<nufi-api-key>',
'X-Workspace': '<x-workspace>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
FlowID: 'f-001',
ClientId: '0001',
ClientName: 'Grupo Patito',
SendEmail: true,
ContactEmail: 'contacto@patito.com',
SendSms: false,
ContactPhone: '5512345678',
Company: {CompanyName: 'Patito S.A. de C.V.', CompanyRFC: 'XXX000000XX0'},
Data: {}
})
};
fetch('https://nufi.azure-api.net/kyb/expedientes/nuevo', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://nufi.azure-api.net/kyb/expedientes/nuevo",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'FlowID' => 'f-001',
'ClientId' => '0001',
'ClientName' => 'Grupo Patito',
'SendEmail' => true,
'ContactEmail' => 'contacto@patito.com',
'SendSms' => false,
'ContactPhone' => '5512345678',
'Company' => [
'CompanyName' => 'Patito S.A. de C.V.',
'CompanyRFC' => 'XXX000000XX0'
],
'Data' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"NUFI-API-KEY: <nufi-api-key>",
"X-Workspace: <x-workspace>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://nufi.azure-api.net/kyb/expedientes/nuevo"
payload := strings.NewReader("{\n \"FlowID\": \"f-001\",\n \"ClientId\": \"0001\",\n \"ClientName\": \"Grupo Patito\",\n \"SendEmail\": true,\n \"ContactEmail\": \"contacto@patito.com\",\n \"SendSms\": false,\n \"ContactPhone\": \"5512345678\",\n \"Company\": {\n \"CompanyName\": \"Patito S.A. de C.V.\",\n \"CompanyRFC\": \"XXX000000XX0\"\n },\n \"Data\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("NUFI-API-KEY", "<nufi-api-key>")
req.Header.Add("X-Workspace", "<x-workspace>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://nufi.azure-api.net/kyb/expedientes/nuevo")
.header("NUFI-API-KEY", "<nufi-api-key>")
.header("X-Workspace", "<x-workspace>")
.header("Content-Type", "application/json")
.body("{\n \"FlowID\": \"f-001\",\n \"ClientId\": \"0001\",\n \"ClientName\": \"Grupo Patito\",\n \"SendEmail\": true,\n \"ContactEmail\": \"contacto@patito.com\",\n \"SendSms\": false,\n \"ContactPhone\": \"5512345678\",\n \"Company\": {\n \"CompanyName\": \"Patito S.A. de C.V.\",\n \"CompanyRFC\": \"XXX000000XX0\"\n },\n \"Data\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://nufi.azure-api.net/kyb/expedientes/nuevo")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["NUFI-API-KEY"] = '<nufi-api-key>'
request["X-Workspace"] = '<x-workspace>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"FlowID\": \"f-001\",\n \"ClientId\": \"0001\",\n \"ClientName\": \"Grupo Patito\",\n \"SendEmail\": true,\n \"ContactEmail\": \"contacto@patito.com\",\n \"SendSms\": false,\n \"ContactPhone\": \"5512345678\",\n \"Company\": {\n \"CompanyName\": \"Patito S.A. de C.V.\",\n \"CompanyRFC\": \"XXX000000XX0\"\n },\n \"Data\": {}\n}"
response = http.request(request)
puts response.read_body{
"Code": 200,
"Status": "success",
"Message": "Documento creado exitosamente",
"Data": {
"DocumentId": "2c87459f-b197-4f59-b41c-1d6b83e33043",
"Url": "https://kyb.nufi.mx/guest/bElWc3M5azlnd1REemE4Z0pQMVczWFNBc2lvQUQrcjZjR0ZIdnByNG1wVT0",
"ExternalId": null,
"ClientId": "0001",
"ClientName": "Patito S.A. de C.V.",
"Company": {
"CompanyId": "0001-0001",
"CompanyName": "Patito S.A. de C.V.",
"CompanyRfc": null
}
}
}{
"Code": 400,
"Status": "bad_request",
"Message": "Error de validacion",
"Data": [
"Ha superado el número máximo de intentos permitidos en la versión de prueba.",
"El campo FlowId es obligatorio",
"El FlowId no es válido.",
"El ClientId no es válido.",
"Company es obligatorio.",
"El campo CompanyName es obligatorio"
]
}Endpoints
Crear expediente
POST
/
expedientes
/
nuevo
crear expediente
curl --request POST \
--url https://nufi.azure-api.net/kyb/expedientes/nuevo \
--header 'Content-Type: application/json' \
--header 'NUFI-API-KEY: <nufi-api-key>' \
--header 'X-Workspace: <x-workspace>' \
--data '
{
"FlowID": "f-001",
"ClientId": "0001",
"ClientName": "Grupo Patito",
"SendEmail": true,
"ContactEmail": "contacto@patito.com",
"SendSms": false,
"ContactPhone": "5512345678",
"Company": {
"CompanyName": "Patito S.A. de C.V.",
"CompanyRFC": "XXX000000XX0"
},
"Data": {}
}
'import requests
url = "https://nufi.azure-api.net/kyb/expedientes/nuevo"
payload = {
"FlowID": "f-001",
"ClientId": "0001",
"ClientName": "Grupo Patito",
"SendEmail": True,
"ContactEmail": "contacto@patito.com",
"SendSms": False,
"ContactPhone": "5512345678",
"Company": {
"CompanyName": "Patito S.A. de C.V.",
"CompanyRFC": "XXX000000XX0"
},
"Data": {}
}
headers = {
"NUFI-API-KEY": "<nufi-api-key>",
"X-Workspace": "<x-workspace>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'NUFI-API-KEY': '<nufi-api-key>',
'X-Workspace': '<x-workspace>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
FlowID: 'f-001',
ClientId: '0001',
ClientName: 'Grupo Patito',
SendEmail: true,
ContactEmail: 'contacto@patito.com',
SendSms: false,
ContactPhone: '5512345678',
Company: {CompanyName: 'Patito S.A. de C.V.', CompanyRFC: 'XXX000000XX0'},
Data: {}
})
};
fetch('https://nufi.azure-api.net/kyb/expedientes/nuevo', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://nufi.azure-api.net/kyb/expedientes/nuevo",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'FlowID' => 'f-001',
'ClientId' => '0001',
'ClientName' => 'Grupo Patito',
'SendEmail' => true,
'ContactEmail' => 'contacto@patito.com',
'SendSms' => false,
'ContactPhone' => '5512345678',
'Company' => [
'CompanyName' => 'Patito S.A. de C.V.',
'CompanyRFC' => 'XXX000000XX0'
],
'Data' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"NUFI-API-KEY: <nufi-api-key>",
"X-Workspace: <x-workspace>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://nufi.azure-api.net/kyb/expedientes/nuevo"
payload := strings.NewReader("{\n \"FlowID\": \"f-001\",\n \"ClientId\": \"0001\",\n \"ClientName\": \"Grupo Patito\",\n \"SendEmail\": true,\n \"ContactEmail\": \"contacto@patito.com\",\n \"SendSms\": false,\n \"ContactPhone\": \"5512345678\",\n \"Company\": {\n \"CompanyName\": \"Patito S.A. de C.V.\",\n \"CompanyRFC\": \"XXX000000XX0\"\n },\n \"Data\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("NUFI-API-KEY", "<nufi-api-key>")
req.Header.Add("X-Workspace", "<x-workspace>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://nufi.azure-api.net/kyb/expedientes/nuevo")
.header("NUFI-API-KEY", "<nufi-api-key>")
.header("X-Workspace", "<x-workspace>")
.header("Content-Type", "application/json")
.body("{\n \"FlowID\": \"f-001\",\n \"ClientId\": \"0001\",\n \"ClientName\": \"Grupo Patito\",\n \"SendEmail\": true,\n \"ContactEmail\": \"contacto@patito.com\",\n \"SendSms\": false,\n \"ContactPhone\": \"5512345678\",\n \"Company\": {\n \"CompanyName\": \"Patito S.A. de C.V.\",\n \"CompanyRFC\": \"XXX000000XX0\"\n },\n \"Data\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://nufi.azure-api.net/kyb/expedientes/nuevo")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["NUFI-API-KEY"] = '<nufi-api-key>'
request["X-Workspace"] = '<x-workspace>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"FlowID\": \"f-001\",\n \"ClientId\": \"0001\",\n \"ClientName\": \"Grupo Patito\",\n \"SendEmail\": true,\n \"ContactEmail\": \"contacto@patito.com\",\n \"SendSms\": false,\n \"ContactPhone\": \"5512345678\",\n \"Company\": {\n \"CompanyName\": \"Patito S.A. de C.V.\",\n \"CompanyRFC\": \"XXX000000XX0\"\n },\n \"Data\": {}\n}"
response = http.request(request)
puts response.read_body{
"Code": 200,
"Status": "success",
"Message": "Documento creado exitosamente",
"Data": {
"DocumentId": "2c87459f-b197-4f59-b41c-1d6b83e33043",
"Url": "https://kyb.nufi.mx/guest/bElWc3M5azlnd1REemE4Z0pQMVczWFNBc2lvQUQrcjZjR0ZIdnByNG1wVT0",
"ExternalId": null,
"ClientId": "0001",
"ClientName": "Patito S.A. de C.V.",
"Company": {
"CompanyId": "0001-0001",
"CompanyName": "Patito S.A. de C.V.",
"CompanyRfc": null
}
}
}{
"Code": 400,
"Status": "bad_request",
"Message": "Error de validacion",
"Data": [
"Ha superado el número máximo de intentos permitidos en la versión de prueba.",
"El campo FlowId es obligatorio",
"El FlowId no es válido.",
"El ClientId no es válido.",
"Company es obligatorio.",
"El campo CompanyName es obligatorio"
]
}Endpoint para registrar expedientes y obtener un enlace para que el usuario pueda continuar su flujo de ingreso de documentación.
Objetivo
Permitir la creación de un expediente inicial y devolver una URL para que el usuario complete la carga de información y documentos.Datos requeridos
FlowID(string): Identificador del flujo que define qué se solicita.Company.CompanyName(string): Nombre de la compañía/solicitud.
Datos opcionales frecuentes
IncludeFlow(string[]): Secciones/documentos a incluir explícitamente.ExcludeFlow(string[]): Secciones/documentos a excluir.ExternalID(string): Identificador externo opcional.ClientId(string): ID de grupo comercial existente.ClientName(string): Nombre del cliente o grupo comercial.SendEmail(boolean): Enviar correo al crear el expediente.ContactEmail(string): Email del contacto (siSendEmail=truese usa para notificación inmediata).SendSms(boolean): Enviar SMS al crear el expediente.ContactPhone(string): Teléfono nacional de 10 dígitos.Company.CompanyRFC(string): RFC de la compañía.Data(object): Información adicional específica del cliente.
Ejemplo de request
{
"FlowID": "f-001",
"ClientId": "0001",
"ClientName": "Grupo Patito",
"SendEmail": true,
"ContactEmail": "contacto@patito.com",
"SendSms": false,
"ContactPhone": "5512345678",
"Company": {
"CompanyName": "Patito S.A. de C.V.",
"CompanyRFC": "XXX000000XX0"
},
"Data": {}
}
Respuesta 200 (éxito)
{
"Code": 200,
"Status": "success",
"Message": "Documento creado exitosamente",
"Data": {
"DocumentId": "2c87459f-b197-4f59-b41c-1d6b83e33043",
"Url": "https://kyb.nufi.mx/guest/bElWc3M5azlnd1REemE4Z0pQMVczWFNBc2lvQUQrcjZjR0ZIdnByNG1wVT0",
"ExternalId": null,
"ClientId": "0001",
"ClientName": "Patito S.A. de C.V.",
"Company": {
"CompanyId": "0001-0001",
"CompanyName": "Patito S.A. de C.V.",
"CompanyRfc": null
}
}
}
Respuesta 400 (error de validación)
{
"Code": 400,
"Status": "bad_request",
"Message": "Error de validacion",
"Data": [
"Ha superado el número máximo de intentos permitidos en la versión de prueba.",
"El campo FlowId es obligatorio",
"El FlowId no es válido.",
"El ClientId no es válido.",
"Company es obligatorio.",
"El campo CompanyName es obligatorio"
]
}
Body
application/json
Identificador del flujo que determina qué documentos e información se solicitarán al usuario.
Show child attributes
Show child attributes
Secciones o documentos a incluir explícitamente en el flujo.
Secciones o documentos a excluir del flujo.
Identificador externo opcional.
Identificador de un grupo comercial existente.
Nombre del cliente o grupo comercial.
Si es true, se envía notificación por email al crear el expediente.
Correo del contacto al que se enviarán notificaciones.
Si es true, se envía SMS al número definido en ContactPhone.
Teléfono nacional de 10 dígitos para notificaciones SMS.
Información adicional específica del cliente.
Was this page helpful?
.png?fit=max&auto=format&n=SrFWYqQUIKuRmdvu&q=85&s=29a9d6074794b17ba1b2d2cd5d208849)