Webhook de notificación México

Recibe notificaciones de eventos en Prometeo

Para las transacciones A2A con nuestro widget en México, el webhook de notificación proporcionará información adicional sobre la transferencia, debido a los requisitos específicos de este tipo de transacciones. A continuación, se detalla la estructura que se incluirá en el webhook para estas transacciones:

Estructura de notificaciones

Tu endpoint recibirá una llamada POSTconteniendo un JSON con la siguiente estructura:

{
  "verify_token": "TOKEN",
  "events": [
    {
      "event_type": "payment.success",
      "event_id": "e9af15dd-b9e7-4481-8d19-a782fc6b68bf",
      "timestamp": "2022-10-19T13:10:37Z",
      "payload": {}
    }
  ]
}
CampoDescripción
verify_tokenEl token de verificación definido en tu widget
eventsLista de eventos generados
events.event_typeEl tipo de evento
events.event_idIdentificador del evento, usado para de duplicación
events.timestampTimestamp de creación del evento
events.payloadObjeto JSON especifico para cada evento. Ver tabla a continuación.
events.informed_by_merchantObjeto JSON especifico para cada evento. Ver tabla a continuación.

Objeto Payload

CampoDescripción
amountCantidad a transferir
conceptConcepto o descripción de la transferencia
currencyMoneda de la cuenta en formato ISO 4217, en este caso MXN
origin_accountNúmero de celular desde donde se transfiere
destination_accountNúmero de cuenta a donde se transfiere
destination_institutionID de la institución a donde se transfiere, el ID se obtiene en el endpoint de listar instituciones para transferencias
destination_owner_nameNombre del individuo o entidad que es el propietario o titular de la cuenta bancaria de destino.
destination_account_typeTipo de la cuenta destino
document_typeTipo de documento asociado a la cuenta destino
document_numberNúmero de documento asociado a la cuenta destino
destination_bank_codeCódigo de banco destino.
external_idID alfanumérico proporcionado para rastrear y gestionar tus pagos internamente
sales_point_user_keyIdentificador único asignado a cada usuario autorizado para utilizar los puntos de venta.
sales_point_user_idID único asignado al usuario en el contexto de un punto de venta específico
cellphoneNúmero de celular asociado a la cuenta bancaria que realizó el pago
request_idID de la transacción generado por Prometeo
intent_idID del intento de pago
operation_idID único asociado a la operación

informed by merchant

CampoDescripción
document_numberNúmero de documento que identifica a un usuario.
usernameNombre de usuario que identifica al sujeto en la plataforma del comerciante.
referenceReferencia adicional para el comercio.

payment.success

A continuación listamos un ejemplo de pago exitoso:

{
  "verify_token": "310XXXX4",
  "events": [
    {
      "event_type": "payment.success",
      "event_id": "209f681b-XXXX-4238-XXXX-2204XXXX27cf",
      "timestamp": "2024-01-31T21:04:37.781798",
      "payload": {
        "amount": "1",
        "concept": "payment_mx",
        "currency": "MXN",
        "origin_account": "55X2X456XX",
        "destination_account": "0021XXXX1000000XXXX595",
        "destination_institution": "0",
        "branch": "0",
        "destination_owner_name": "CONSULTORA XXXXXXXX MX",
        "destination_account_type": null,
        "document_type": null,
        "document_number": null,
        "destination_bank_code": "citibanamex_mx",
        "mobile_os": null,
        "external_id": "external-id",
        "sales_point_user_key": "sales-point-user-key",
        "sales_point_user_id": "sales-point-user-id",
        "cellphone": "55X2X456XX",
        "request_id": "5ba13cd5a9XXXXXXXX521269ac13bb5a",
        "intent_id": "aaa13cd5a9XXXXXXXX521269ac13bb5a",
        "operation_id":"123123456456",
      },
      "informed_by_merchant":{
                "document_number": "12345678",
                "username": "bruceWayne",
                "reference": "user-reference"
      }
    }
  ]
}

payment.error

A continuación listamos un ejemplo de pago con error:

{
  "verify_token": "310XXXX4",
  "events": [
    {
      "event_type": "payment.error",
      "event_id": "976306fa-XXXX-4d86-XXXX-af2XXX89fbd8",
      "timestamp": "2024-01-31T21:04:37.781798",
      "payload": {
        "amount": "1",
        "concept": "payment_mx",
        "currency": "MXN",
        "origin_account": "55X2X456XX",
        "destination_account": "0021XXXX1000000XXXX595",
        "destination_institution": "0",
        "branch": "0",
        "destination_owner_name": "CONSULTORA XXXXXXXX MX",
        "destination_account_type": null,
        "document_type": null,
        "document_number": null,
        "destination_bank_code": "citibanamex_mx",
        "mobile_os": null,
        "external_id": "external-id",
        "sales_point_user_key": "sales-point-user-key",
        "sales_point_user_id": "sales-point-user-id",
        "cellphone": "55X2X456XX",
        "request_id": "5ba13cd5a9XXXXXXXX521269ac13bb5a",
        "intent_id": "aaa13cd5a9XXXXXXXX521269ac13bb5a",
        "operation_id": null,
      },
      "informed_by_merchant":{
                "document_number": "12345678",
                "username": "peterParker",
                "reference": "user-reference"
      }
    }
  ]
}

payment.rejected

A continuación listamos un ejemplo de pago rechazado:

{
  "verify_token": "310XXXX4",
  "events": [
    {
      "event_type": "payment.rejeceted",
      "event_id": "dec4cc14-XXX-4ab0-XXXX-XXXXXXXX",
      "timestamp": "2024-01-31T21:04:37.781798",
      "payload": {
        "amount": "1",
        "concept": "payment_mx",
        "currency": "MXN",
        "origin_account": "55X2X456XX",
        "destination_account": "0021XXXX1000000XXXX595",
        "destination_institution": "1",
        "branch": "0",
        "destination_owner_name": "CONSULTORA XXXXXXXX MX",
        "destination_account_type": null,
        "document_type": null,
        "document_number": null,
        "destination_bank_code": "citibanamex_mx",
        "mobile_os": null,
        "external_id": "external-id",
        "sales_point_user_key": "sales-point-user-key",
        "sales_point_user_id": "sales-point-user-id",
        "cellphone": "55X2X456XX",
        "request_id": "5ba13cd5a9XXXXXXXX521269ac13bb5a",
        "intent_id": "aaa13cd5a9XXXXXXXX521269ac13bb5a",
        "operation_id": null,
      },
      "informed_by_merchant":{
                "document_number": "12345678",
                "username": "dianaPrince",
                "reference": "user-reference"
      }
    }
  ]
}

payment.cancelled

A continuación listamos un ejemplo de pago cancelado:

{
  "verify_token": "310XXXX4",
  "events": [
    {
      "event_type": "payment.cancelled",
      "event_id": "f7a92b6f-XXX-449b-9257-XXXXXXXX",
      "timestamp": "2024-01-31T21:04:37.781798",
      "payload": {
        "amount": "1",
        "concept": "payment_mx",
        "currency": "MXN",
        "origin_account": "55X2X456XX",
        "destination_account": "0021XXXX1000000XXXX595",
        "destination_institution": "19",
        "branch": "0",
        "destination_owner_name": "CONSULTORA XXXXXXXX MX",
        "destination_account_type": null,
        "document_type": null,
        "document_number": null,
        "destination_bank_code": "citibanamex_mx",
        "mobile_os": null,
        "external_id": "external-id",
        "sales_point_user_key": "sales-point-user-key",
        "sales_point_user_id": "sales-point-user-id",
        "cellphone": "55X2X456XX",
        "request_id": "5ba13cd5a9XXXXXXXX521269ac13bb5a",
        "intent_id": "aaa13cd5a9XXXXXXXX521269ac13bb5a",
        "operation_id": null,
      },
      "informed_by_merchant":{
                "document_number": "12345678",
                "username": "oliverQueen",
                "reference": "user-reference"
      }
    }
  ]
}