Copyright Teleinte SAS 2021
Para mayor información en operaciones@teleinte.com

EndPoint


Observación: Información sujeta a cambios

Método: POST

EndPoint:

Pruebas
https://servicios-pruebas.afacturar.com/api/rips/consultar_cuv

Producción
Proximamente se indicara la URL

Seguridad SSL: Afacturar cuenta en sus endpoint con certificados de seguridad (DigiCert SHA2 Extended Validation Server CA), su aplicación debe ser capaz de negociar y validar dicho certificado.

Parámetros de entrada


HEADERS


Accept: application/json

Authorization: Bearer Token asignado a cada cliente


BODY


documento_obligado: Número de identificación del cliente

data: JSON


Estructura de JSON de entrada - data



informacion_documento Objeto Requerido

Información del docukmento electronico

Especificación:

cuv String Requerido

Codigo Unico de Validación

Especificación: Minimo de 90 caracteres. El CUFE o CUDE debe estar registrado en nuestro sistema

generalidades Objeto Requerido

Generalidades

Especificación:

tipo_ambiente_dian Parametrizado Requerido

Ambiente de la DIAN al que se destina el documento enviado.

Especificación:

1= Producción

2= Pruebas

identificador_transmision String Requerido

Código único para identificar el paquete transmitido

Especificación: Mínimo 5 caracteres

integrador Objeto Requerido

Información de quien envia la información

Especificación:

nombre Parametrizado Requerido

Nombre de quien realiza la integración

Especificación: S o N

tipo Parametrizado Requerido

Codigo del medio usado para realizar la integración

Especificación:

MOVIL

WEB

DLL

EXCEL

ERP-XXXXXXXXX

Estructura json

							{
    "informacion_documento": {
        "cuv": ""
    },
    "generalidades": {
        "tipo_ambiente_dian": "",
        "identificador_transmision": "",
        "integrador": {
            "nombre": "",
            "tipo": ""
        }
    }
}							

Estructura JSON de respuesta


Salida Exitosa


{
    "codigo_error": "0",
    "descripcion_error": "OK",
    "tiempo_ejecucion": 1.8796138763427734,
    "transaccion": "OTAwMzcxNjEz223643848679e1b8fbc4f4",
    "resultado": {
        "codigoUnicoValidacion": "639ebf209b4c5e4111111111dca663922ff398669f118c0a718e276e75d3805a44281a8ec45a9dbbd1369ee7c48c",
        "fechaValidacion": "2025-01-28T07:31:31.5138302",
        "numDocumentoIdObligado": "88888888",
        "numeroDocumento": "SETT32",
        "fechaEmision": "2025-01-28T11:25:00",
        "totalFactura": 113814,
        "cantidadUsuarios": 1,
        "cantidadAtenciones": 0,
        "totalValorServicios": 0,
        "identificacionAdquiriente": "830830830",
        "codigoPrestador": "111111111",
        "modalidadPago": "01",
        "numDocumentoReferenciado": null
    },
    "entorno": "Este documento se envia al entorno: DOCUMENTO_NO_VALIDO"
}							  
							 

Salida con errores de semantica


{
    "codigo_error": 400,
    "descripcion_error": "Error en la estructura del json de data",
    "tiempo_ejecucion": 0.068256855010986328,
    "resultado": [
        {
            "propiedad": "generalidades",
            "descripcion": "The property generalidades is required"
        },
        {
            "propiedad": "",
            "descripcion": "The property generaliddes is not defined and the definition does not allow additional properties"
        }
    ],
    "entorno": "Este documento se envia al entorno: DOCUMENTO_NO_VALIDO"
}						
						
					  

Salida con errores de datos


{
    "codigo_error": 400,
    "descripcion_error": "Error en la estructura del json de data",
    "tiempo_ejecucion": 0.07396697998046875,
    "resultado": [
        {
            "propiedad": "informacion_documento.cuv",
            "descripcion": "Must be at least 90 characters long"
        },
        {
            "propiedad": "generalidades",
            "descripcion": "The property generalidades is required"
        },
        {
            "propiedad": "",
 									
						
						

Salida con errores HTTP



{
	"codigo_error": 500,
	"descripcion_error": "Unauthenticated."
}
						

Ejemplos


Consulta CUV

JSON data

{
    "informacion_documento": {
        "cuv": "be27ab71fea9c9fd8c012311111111112222222297cb5792d86f857fe12345667890ca99f3613d3f6b7a97af",
        "fecha_documento": "2025-01-30",
		"numero_documento": "SETT28"
    },
    "generalidades": {
        "tipo_ambiente_dian": 2,
        "identificador_transmision": "20250130",
        "integrador": {
            "nombre": "WEB",
            "tipo": "WEB"
        }
    }
}

Codigo de respuesta


Cuando usted hace un llamado a la API, puede recibir los siguientes mensajes de error en la respuesta. Puede que haya algo mal con su solicitud o puede que algo esté mal de nuestra parte. Los errores responden con un código de error y JSON que contiene un mensaje, una descripción y un código API más preciso.

Códigos de ERROR


Tabla de Errores
Código Estado Descripción Acción sugerida
28 Timeout La operación duro más de 60 seg
15 Error retornado por la DIAN La información enviada no cumple con el estandar del XML o los valores no estan bien calculados
400 Solicitud incorrecta Hay un problema con su solicitud Compruebe que su solicitud sigue la documentación de la API y utiliza la sintaxis correcta.
401 No autorizado No tiene la autorización necesaria para realizar la solicitud. Asegúrese de estar utilizando una clave API válida con los permisos necesarios para su solicitud.
403 Prohibido El servidor entendió la solicitud, pero se negó a cumplirla. Vea si su plan en Afacturar.com incluye el recurso que está solicitando y su clave API tiene las autorizaciones necesarias.
404 No encontrado El servidor no pudo encontrar el recurso solicitado. Cambie su URL de solicitud para que coincida con un punto final API válido.
405 Método no permitido El recurso no tiene el método especificado. (por ejemplo, PUT en las transmisiones) Cambie el método para seguir la documentación del recurso.
409 Conflicto Un conflicto surgió de su solicitud. (por ejemplo, el OFE no esta asociado al código de autorización) Modificar la carga útil para eliminar el conflicto..
415 Tipo de medio no admitido La solicitud no está en un formato compatible. Verifique que su encabezado Content-Type sea compatible y que su solicitud cumpla con la documentación.
422 Entidad no procesable La solicitud fue sintácticamente correcta pero falló debido a errores semánticos. Asegúrese de que su solicitud incluya todos los campos obligatorios y que sus datos sean válidos.
429 Exceder el límite de envío Se excede el numero de transacciones permitido (120 por minuto). Verifique que se encuentra dentro de los límites acordados con Afacturar.
500 Error de servidor interno Algo salió mal de nuestro lado. Pruebe la solicitud nuevamente más tarde. Si el error no se resuelve, póngase en contacto con el soporte técnico soporte@afacturar.com.
503 Servicio no disponible Estamos experimentando niveles de tráfico más altos de lo normal. Prueba la solicitud nuevamente, ya estamos enterado del problema para aumentar la capacidad.

Consumo del API


CURL

								curl --location 'https://servicios-pruebas.afacturar.com/api/rips/consultar_cuv' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer token_obligado' \
--form 'documento_obligado="123123123"' \
--form 'data="{
    \"informacion_documento\": {
        \"cuv\": \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"
    },
    \"generalidedes\": {
        \"tipo_ambiente_dian\": 2,
        \"identificador_transmision\": \"2025-01-31 03:48:03\",
        \"integrador\": {
            \"nombre\": \"WEB\",
            \"tipo\": \"WEB\"
        }
    }
}"'								

C#

								curl --location 'https://servicios-pruebas.afacturar.com/api/rips/consultar_cuv' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer token_obligado' \
--form 'documento_obligado="123123123"' \
--form 'data="{
    \"informacion_documento\": {
        \"cuv\": \"xxxxxxxxxxxxxxxxxxxxx\"
    },
    \"generalidedes\": {
        \"tipo_ambiente_dian\": 2,
        \"identificador_transmision\": \"2025-01-31 03:48:03\",
        \"integrador\": {
            \"nombre\": \"WEB\",
            \"tipo\": \"WEB\"
        }
    }
}"'								

Historico de cambios


Versión Cambios Fecha de liberación
2 Publicación del API 1 de febrero de 2025