# Callbacks de notificación

Además de los webhooks, Getnet proporciona **notificaciones basadas en callback**: el servidor llama a las URL que usted proporciona (callbacks) para notificar a su sistema sobre eventos de pago. Este mecanismo utiliza peticiones **HTTP GET** con datos en la query string y se configura en el momento de la acreditación. Es distinto de los [webhooks](https://www.google.com/search?q=../../../sep-regional-api/webhooks/) que se ofrecen en la Global API, los cuales utilizan HTTP POST, suscripciones configurables y un formato de payload diferente.

Para configurar las notificaciones de Getnet vía callback, **debe indicar 4 URL en el momento de su acreditación** en la Plataforma Digital. Cada una estará destinada a recibir diferentes notificaciones de los siguientes tipos:

  * Transacciones de crédito,
  * Transacciones de débito,
  * Transacciones de recibo bancario (boleto),
  * Transacciones recurrentes (suscripción)

Una vez configuradas las URL de callback, Getnet enviará automáticamente los datos relevantes a cada URL cuando ocurra el evento especificado. En caso de error, la información se reenviará cada 15 minutos hasta 4 veces.

Siempre recomendamos estar atentos a la fecha de caducidad del certificado para cada URL. En caso de renovación o si necesita modificar alguna de las URL indicadas originalmente, por favor, póngase en contacto con nuestro Equipo de Soporte de Integración de Getnet.

## Estructura de las notificaciones

En términos generales, las peticiones HTTP tienen la siguiente estructura:
`https://YOUR_HOST_EXAMPLE/YOUR_SERVICE_EXAMPLE?query_param_1=valueExample1&query_param_2=valueExample2`
Donde:

  * `https://YOUR_HOST/YOUR_SERVICE` se refiere a una de las 4 URL de callback indicadas anteriormente.
  * `?` indica el inicio de la sección de la query.
    `query_param_1=valueExample1` es un ejemplo de un query parameter.
    `&` se utiliza como conector entre múltiples query parameters.

Las **notificaciones HTTP GET** proporcionadas por Getnet incluirán un conjunto específico de query parameters, algunos de los cuales se comparten entre diferentes eventos de activación, mientras que otros son únicos y específicos para un solo evento de activación.

## Notificaciones de crédito

**Query param compartido para todos los eventos**
A continuación encontrará la lista de los query params compartidos en todos los eventos relacionados con transacciones de tarjeta de crédito: **Approved**, **Authorized**, **Pending**, **Confirmed**, **Canceled**, **Denied** y **Error**.

| Query parameters       | Descripción                                                                                                                                                                        |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| *payment\_type* | (único valor posible:) **credit** |
| *customer\_id* | (código de Id del cliente)                                                                                                                                                         |
| *order\_id* | (número de pedido)                                                                                                                                                                 |
| *payment\_id* | (Id de transacción en formato UUIDv4)                                                                                                                                              |
| *amount* | (importe de la transacción)                                                                                                                                                        |
| *status* | (valores posibles dependiendo del tipo de evento de la transacción:)<br /> **APPROVED**<br />**AUTHORIZED**<br />**PENDING**<br />**CONFIRMED**<br />**CANCELED**<br />**DENIED**<br />**ERROR** |
| *number\_installments* | (número de plazos)                                                                                                                                                                 |
| *terminal\_nsu* | (código de autorización generado por el emisor cuando una transacción se realiza con éxito)                                                                                        |
| *authorization\_code* | (código de autorización generado por el sistema de ecommerce de Getnet)                                                                                                            |

A continuación encontrará los query parameters adicionales para cada evento específico.

Parámetros adicionales para eventos de transacción **Approved**, **Authorized** y **Pending**

| Query parameters            | Descripción                          |
| --------------------------- | ------------------------------------ |
| *acquirer\_transaction\_id* | (código de transacción del comprador)|
| *authorization\_timestamp* | (fecha y hora de la autorización)    |
| *brand* | (marca de la tarjeta)                |

Parámetros adicionales para eventos de transacción **Canceled**

| Query parameters            | Descripción                          |
| --------------------------- | ------------------------------------ |
| *acquirer\_transaction\_id* | (código de transacción del comprador)|

Parámetros adicionales para eventos de transacción **Denied** y **Error**

| Query parameters            | Descripción                                                |
| --------------------------- | ---------------------------------------------------------- |
| *acquirer\_transaction\_id* | (código de transacción del comprador)                      |
| *description\_detail* | (descripción del error ocurrido durante la transacción)    |
| *error\_code* | (código numérico de denegación o error)                    |

## Notificaciones de débito

### Query param compartido para todos los eventos

A continuación encontrará la lista de los query params compartidos en todos los eventos relacionados con transacciones de tarjeta de débito: **Approved**, **Denied** y **Error**.

| Query parameters | Descripción                                                                                             |
| ---------------- | ------------------------------------------------------------------------------------------------------- |
| *payment\_type* | (único valor posible:) **debit** |
| *customer\_id* | (código de Id del cliente)                                                                              |
| *order\_id* | (número de pedido)                                                                                      |
| *payment\_id* | (Id de transacción en formato UUIDv4)                                                                   |
| *amount* | (importe de la transacción)                                                                             |
| *status* | (valores posibles dependiendo del tipo de evento de la transacción:)<br />**APPROVED**<br />**DENIED**<br />**ERROR** |
| *brand* | (marca de la tarjeta)                                                                                   |

A continuación encontrará los query parameters adicionales para cada evento específico.

Parámetros adicionales para eventos de transacción **Approved**

| Query parameters            | Descripción                                                                               |
| --------------------------- | ----------------------------------------------------------------------------------------- |
| *acquirer\_transaction\_id* | (código de transacción del comprador)                                                     |
| *authorization\_timestamp* | (fecha y hora de la autorización)                                                         |
| *terminal\_nsu* | (código de autorización generado por el emisor cuando una transacción se realiza con éxito) |
| *authorization\_code* | (código de autorización generado por el sistema de ecommerce de Getnet)                   |

Parámetros adicionales para eventos de transacción **Denied** y **Error**

| Query parameters      | Descripción                                                |
| --------------------- | ---------------------------------------------------------- |
| *description\_detail* | (descripción del error ocurrido durante la transacción)    |
| *error\_code* | (código numérico de denegación o error)                    |

## Notificaciones de recibo bancario (Boleto)

En el caso de una notificación de recibo bancario, se enviará en dos etapas. En la primera etapa, se envía una notificación cuando finaliza el registro del recibo bancario, y en la segunda etapa, se envía una notificación cuando el recibo se liquida. El servicio sigue siendo el mismo; sin embargo, los campos de respuesta diferirán entre las dos etapas.

### Primera Etapa

**Query param compartido para todos los eventos**
A continuación encontrará la lista de los query params compartidos en todos los eventos relacionados con acciones de la primera etapa: **Pending**, **Denied** y **Error**.

| Query parameters   | Descripción                                                                                            |
| ------------------ | ------------------------------------------------------------------------------------------------------ |
| *payment\_type* | (único valor posible:) **boleto** |
| *order\_id* | (número de pedido)                                                                                     |
| *payment\_id* | (identificador del pago)                                                                               |
| *amount* | (importe del recibo bancario)                                                                          |
| *status* | (valores posibles dependiendo del tipo de evento de la transacción:)<br />**PENDING**<br />**DENIED**<br />**ERROR** |
| *bank* | (código bancario del emisor del recibo bancario. El único valor posible es **Banco Santander**)        |
| *our\_number* | (nuestro número. Si no lo indica, será generado por el banco emisor)                                   |
| *typefull\_line* | (línea digitable del recibo bancario devuelta por el banco emisor)                                     |
| *issue\_date* | (Fecha de emisión, formato: `DDMMYYYY`)                                                                |
| *expiration\_date* | (Fecha de caducidad, formato: ` DDMMYYYY)  `                                                             |

A continuación encontrará los query parameters adicionales para cada evento específico.

Parámetros adicionales para eventos de transacción **Denied** y **Error**

| Query parameters      | Descripción                                                                                                             |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| *id* | (identificador del recibo bancario, formato: UUIDv4. Se utiliza para identificar el recibo bancario para la notificación de liquidación) |
| *description\_detail* | (descripción del error ocurrido durante la transacción)                                                                 |
| *error\_code* | (código numérico de denegación o error)                                                                                 |

### Segunda Etapa

**Query param compartido para todos los eventos**
A continuación encontrará la lista de los query params compartidos en todos los eventos relacionados con acciones de la segunda etapa: **Paid** y **Canceled**.

| Query parameters | Descripción                                                                                                             |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------- |
| *id* | (identificador del recibo bancario, formato: UUIDv4. Se utiliza para identificar el recibo bancario para la notificación de liquidación) |
| *amount* | (importe del recibo bancario)                                                                                           |
| *status* | (valores posibles dependiendo del tipo de evento de la transacción:)<br />**PAID**<br />**CANCELED** |
| *payment\_date* | (Fecha en que su cliente paga el recibo bancario, formato: `DDMMYYYY`)                                                  |

## Notificaciones de transacciones recurrentes (suscripción)

**Query param compartido para todos los eventos**
A continuación encontrará la lista de los query params compartidos en todos los eventos relacionados con transacciones recurrentes: **Authorized**, **Approved**, **Confirmed**, **Canceled**, **Denied** y **Error**.

| Query parameters            | Descripción                                                                                                                                                      |
| --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| *payment\_type* | (único valor posible:) **credit** |
| *customer\_id* | (código de Id del cliente)                                                                                                                                       |
| *order\_id* | (número de pedido)                                                                                                                                               |
| *payment\_id* | (Id de transacción en formato UUIDv4)                                                                                                                            |
| *amount* | (importe de la transacción)                                                                                                                                      |
| *status* | (valores posibles dependiendo del tipo de evento de la transacción:)<br />**AUTHORIZED**<br />**APPROVED**<br />**CONFIRMED**<br />**CANCELED**<br />**DENIED**<br />**ERROR** |
| *authorization\_timestamp* | (fecha y hora de la autorización)                                                                                                                                |
| *acquirer\_transaction\_id* | (código de transacción del comprador)                                                                                                                            |
| *subscription\_id* | (identificador de suscripción, formato: UUIDv4)                                                                                                                  |
| *plan\_id* | (identificador del plan utilizado en la suscripción, formato: UUIDv4)                                                                                            |
| *charge\_id* | (identificador del cargo, formato: UUIDv4)                                                                                                                       |
| *number\_installments* | (número de plazos)                                                                                                                                               |
| *billing\_number* | (número del plazo procesado)                                                                                                                                     |
| *brand* | (marca de la tarjeta)                                                                                                                                            |
| *terminal\_nsu* | (código de autorización generado por el emisor cuando una transacción se realiza con éxito)                                                                      |
| *authorization\_code* | (código de autorización generado por el sistema de ecommerce de Getnet)                                                                                          |
| *retry\_number* | (número de reintentos)                                                                                                                                           |

A continuación encontrará los query parameters adicionales para cada evento específico.

Parámetros adicionales para eventos de transacción **Denied** y **Error**

| Query parameters      | Descripción                                                |
| --------------------- | ---------------------------------------------------------- |
| *description\_detail* | (descripción del error ocurrido durante la transacción)    |
| *error\_code* | (código numérico de denegación o error)                    |

## Notificaciones de método de pago alternativo (PIX)

**Query param compartido para todos los eventos**

A continuación encontrará la lista de los query params compartidos en todos los eventos relacionados con transacciones PIX: **Approved**, **Denied** y **Error**.

| Query parameters         | Descripción                                                                                             |
| ------------------------ | ------------------------------------------------------------------------------------------------------- |
| *payment\_type* | (único valor posible:) **pix** |
| *customer\_id* | (código de Id del cliente)                                                                              |
| *order\_id* | (número de pedido)                                                                                      |
| *payment\_id* | (Id de transacción en formato UUIDv4)                                                                   |
| *amount* | (importe de la transacción)                                                                             |
| *status* | (valores posibles dependiendo del tipo de evento de la transacción:)<br />**APPROVED**<br />**DENIED**<br />**ERROR** |
| *transaction\_id* | (identificador de la transacción en la institución PSP tras generar el código QR)                       |
| *transaction\_timestamp* | (fecha y hora de la transacción PIX, formato: ISO)                                                      |
| *terminal\_nsu* | (código de autorización generado por el emisor cuando una transacción se realiza con éxito)             |

A continuación encontrará los query parameters adicionales para cada evento específico.

Parámetros adicionales para eventos de transacción **Approved**

| Query parameters      | Descripción                              |
| --------------------- | ---------------------------------------- |
| *payer\_psp\_name* | Nombre de la institución PSP del pagador |
| *payer\_psp\_code* | Código de la institución PSP del pagador |
| *payer\_name* | Nombre del pagador                       |
| *payer\_cnpj* | Número de CNPJ del pagador para persona jurídica |
| *payer\_cpf* | Número de CPF del pagador para particulares |
| *receiver\_psp\_name* | Nombre de la institución PSP del receptor|
| *receiver\_psp\_code* | Código de la institución PSP del receptor|
| *receiver\_name* | Nombre del receptor                      |
| *receiver\_cnpj* | Número de CNPJ del receptor para persona jurídica |
| *receiver\_cpf* | Número de CPF del receptor para particulares |

Parámetros adicionales para eventos de transacción **Denied** y **Error**

| Query parameters      | Descripción                                                |
| --------------------- | ---------------------------------------------------------- |
| *description\_detail* | (descripción del error ocurrido durante la transacción)    |