Webhook

The merchant must implement an HTTP POST endpoint (webhook) to receive asynchronous notifications about changes in the subscription status.

When the subscription status is updated by the processor, Monnet will send a POST request to the webhook URL developed by the merchant and configured during the integration process. This notification will be triggered for each change in the subscription lifecycle, enabling the merchant to track and update the process in real time.

The following section details the complete set of data and parameters that will be received in the request body to perform the operation.

📦 Request Payload

FieldDescription
subscriptionIdInteger
Unique identifier generated and assigned by Monnet to each merchant. Required for identifying the merchant across all transactions and API operations.
chargeTypeString
Indicates the type of subscription configured for the customer, as communicated in the notification.(ON_DEMAND, RECURRENT)
customerIdString
Indicates the unique customer identifier associated with the subscription, as communicated in the notification.
originTypeString
Subscription source channel (WEB, MOBILE, etc.)
statusDescriptionString
Human-readable description of the processing result. See StatusDescripton table.
statusCodeString (Optional)
Processing status code (e.g., 9000= success, other = error)
Ver Error Code
statusMessageString (optional)
Additional message complementary to the result

Below are the descriptions of the different status values that may be included in the notification payload. The merchant’s endpoint must be able to interpret these values and execute the corresponding actions within their internal systems.

StatusDescription

StatusStatusDescription
PENDINGEn espera de procesamiento o confirmación
EXPIREDLa suscripción ha expirado
AUTHORIZEDLa suscripción fue autorizada exitosamente
FAILEDFalló el procesamiento de la suscripción
CANCELLEDLa suscripción fue cancelada
DENIEDLa suscripción fue denegada por el processor

📦 Request Payload (JSON)

Success Example

{
  "subscriptionId": 6,
  "chargeType": "ON_DEMAND",
  "customerId": "006123061",
  "originType": "MOBILE",
  "statusDescription": "En espera de procesamiento o confirmación",
  "statusCode": "9000",
  "statusMessage": "Succeeded"
}

Error Example

{
  "subscriptionId": 6,
  "chargeType": "ON_DEMAND",
  "customerId": "006123061",
  "originType": "MOBILE",
  "statusDescription": "La suscripción fue denegada por el processor",
  "statusCode": "9099",
  "statusMessage": "Error"
}

✅ Expected Webhook Response

The webhook should return HTTP 200 OK to confirm successful receipt of the notification.

🔐 Recommended Security

It is recommended to implement authentication (e.g., token or IP whitelisting) to ensure the notification's legitimacy.

Errors Code

Error CodeError Message
9025Unable to locate record on file
9099Error
9000Succeeded