Recibir Invoice Response

Procesar actualizaciones de estado de los destinatarios a través de hooks: acknowledged, accepted, rejected, paid.

Cuando un destinatario comunica el estado de su factura a través de un Invoice Response (mensajes de estado), el PSB envía una notificación a su webhook. Como remitente, así sabe si una factura fue aprobada, rechazada, o si el destinatario necesita información adicional. Este artículo describe cómo recibir y procesar esas notificaciones.

¿Cómo funciona?

Después de enviar una factura, el destinatario puede devolver mensajes de estado a través de la red Peppol. El PSB asocia automáticamente cada Invoice Response recibido a su factura original y publica un evento webhook.

El flujo:

  1. Usted envía una factura a través del PSB
  2. El destinatario procesa la factura y envía un Invoice Response
  3. El PSB recibe el mensaje de response y lo asocia a su factura
  4. Su webhook recibe un evento InvoiceResponseReceived
Configurar el webhook

Registre un hook en el topic InvoiceResponseReceived:

POST /api/v1/hook
{
  "action": "https://mijn-systeem.nl/webhook/responses#mijnSecretKey",
  "topics": ["InvoiceResponseReceived"]
}

El payload del webhook contiene el documentId de la factura original y el responseDocumentId del mensaje Invoice Response.

Descargar el Invoice Response

Recupere el mensaje Invoice Response completo a través de la API:

GET /api/v1/{partyId}/salesInvoice/{documentId}/response/{responseDocumentId}/download HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}

El mensaje contiene el código de estado, los posibles códigos de aclaración y una explicación opcional del destinatario.

Interpretar los códigos de estado

El código de estado recibido indica en qué fase se encuentra la factura en el destinatario:

CódigoNombre¿Qué significa para usted como remitente?ABAcknowledgeLa factura fue recibida y es legibleIPIn ProcessLa factura está siendo procesada, sin veredicto aúnUQUnder QueryEl destinatario tiene preguntas, se requiere acciónRERejectedLa factura fue rechazada, corrija y reenvíeAPAcceptedLa factura fue aprobada, el pago seguiráPDFully PaidLa factura está pagada

Para los estados UQ y RE, es importante leer el Reason code y el Action code enviados. Estos indican qué está mal y qué acción espera el destinatario de usted. Consulte el artículo Enviar Invoice Response para una visión general de todos los Reason y Action codes.

Requisitos para la recepción de responses

Para poder recibir Invoice Responses como remitente, su organización debe estar registrada en el Peppol SMP con la capability invoiceResponse. Sin este registro, el Access Point del destinatario no puede entregar el mensaje de response.

Verifique y active la capability:

PUT /api/v1/peppol/config HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}
Content-Type: application/json

{
  "invoiceResponse": {
    "state": "on"
  }
}
Procesamiento en su propio sistema

Algunas recomendaciones para el procesamiento de Invoice Responses:

  • Asocie a la factura: utilice el documentId del payload para asociar el response a la factura correcta en su propia administración.
  • Muestre el estado: haga visible el estado de la factura para sus usuarios. Un indicador "aprobado" o "rechazado" evita consultas innecesarias.
  • Reaccione ante rechazos: para el estado RE, es habitual corregir la factura y enviar una nueva versión. Atención: utilice un nuevo X-EConnect-DocumentId ya que se trata de un nuevo documento.
  • Conserve la pista de auditoría: registre cada Invoice Response recibido como parte del historial de la factura.
Preguntas frecuentes
¿Qué webhook y campos utilizo para recibir un Invoice Response?

Registre un hook en el topic InvoiceResponseReceived. La payload contiene el documentId de su factura originalmente enviada y el responseDocumentId del mensaje de estado. Esto le permite vincular la respuesta en su sistema con la factura de venta correcta.

¿Cómo recupero el XML completo de un Invoice Response?

Utilice GET /api/v1/{partyId}/salesInvoice/{documentId}/response/{responseDocumentId}/download con el documentId de la factura y el responseDocumentId del webhook. El mensaje contiene el código de estado y la información de clarificación del destinatario.

¿Qué debo hacer con el estado RE y por qué un nuevo X-EConnect-DocumentId?

Con RE (Rejected), debe corregir la factura y reenviarla; los códigos Reason y Action indican qué está mal. Para la nueva versión, utilice un nuevo X-EConnect-DocumentId, ya que se trata de un nuevo documento y la idempotency funciona por documentId.


Los Invoice Responses son opcionales en la red Peppol. No todos los destinatarios los envían. Pero cuando se utilizan, ofrecen información valiosa sobre el proceso de facturación.

Probar en la API