Endpoints de Eventos
Los eventos permiten realizar acciones especiales sobre documentos electrónicos ya emitidos, como inutilizar números de documentos, cancelar facturas o nominar clientes.
Endpoint
https://api.factpy.com/facturacion-api/evento.php
| Método | URL | Content-Type |
|---|---|---|
| POST | https://api.factpy.com/facturacion-api/evento.php |
multipart/form-data |
Tipos de Eventos
Inutilización (tipoEvento: 1)
Dar de baja números de documentos no utilizados o salteados
Cancelación (tipoEvento: 2)
Anular un DE dentro de 48 horas desde su aprobación
Nominación (tipoEvento: 3)
Asignar cliente a factura emitida sin datos del comprador
Parámetros del Body
El cuerpo de la solicitud debe enviarse en formato multipart/form-data con los siguientes parámetros:
tipoEvento y los campos correspondientes según el tipo de evento
Respuestas de la API
Respuesta Exitosa
{
"status": true,
"code": "Evento registrado correctamente",
"fecha": "2025-01-10 13:22"
}
| Campo | Tipo | Descripción |
|---|---|---|
status |
boolean | true si el evento se registró correctamente |
code |
string | Mensaje de confirmación |
fecha |
string | Fecha y hora del registro del evento |
Respuesta de Error
{
"status": false,
"code": "Codigo o mensaje de error"
}
| Campo | Tipo | Descripción |
|---|---|---|
status |
boolean | false si hubo un error |
code |
string | Mensaje descriptivo del error |
Ejemplo de Solicitud cURL
curl -X POST https://api.factpy.com/facturacion-api/evento/ \
-H "Content-Type: multipart/form-data" \
-F "dataJson={\"tipoEvento\":1,\"timbrado\":\"1622239\",\"tipoDoc\":\"1\",\"establecimiento\":\"001\",\"punto\":\"001\",\"desde\":\"0000001\",\"hasta\":\"0000001\",\"motivo\":\"Salto de numeracion\"}" \
-F "recordID=TU_RECORD_ID"
Ejemplo en JavaScript
const formData = new FormData();
const eventoData = {
tipoEvento: 1,
timbrado: "1622239",
tipoDoc: "1",
establecimiento: "001",
punto: "001",
desde: "0000001",
hasta: "0000001",
motivo: "Salto de numeracion"
};
formData.append('dataJson', JSON.stringify(eventoData));
formData.append('recordID', 'TU_RECORD_ID');
fetch('https://api.factpy.com/facturacion-api/evento/', {
method: 'POST',
body: formData
})
.then(response => response.json())
.then(data => {
console.log('Respuesta:', data);
if (data.status) {
console.log('Evento registrado:', data.fecha);
} else {
console.error('Error:', data.code);
}
})
.catch(error => console.error('Error de red:', error));
Notas Importantes
El recordID es único para cada cuenta y lo encuentras en tu perfil de FactPy
Asegúrate de usar multipart/form-data como Content-Type
Siempre verifica el campo status en la respuesta antes de continuar
La cancelación solo es posible dentro de las 48 horas siguientes a la aprobación del documento