Cancel Suscription

The CANCEL/subscription/{subscriptionId} endpoint allows merchants to cancel an existing One Click Payment (OCP) subscription, revoking the customer's prior authorization for future charges.

This functionality ensures that merchants can manage the lifecycle of a subscription, allowing them to deactivate subscriptions when no longer needed or upon customer request. Once canceled, the subscription token becomes invalid and can no longer be used for initiating payments.

Endpoints

πŸ“˜

URL

Certification:<https://cert.subscriptions.payin.monnet.io/api/v1/subscription/cancel>

Production: <https://subscriptions.payin.monnet.io/api/v1/subscription/cancel>

πŸ” Authorization Header

All requests to the /create-subscription endpoint must include a custom Authorization header to ensure secure communication and proper merchant validation.

πŸ“₯ Header Required

HeaderValue FormatRequired
AuthorizationBearer SHA512(merchantId + type + customerId + processorCode + keyPayin)βœ… Yes

The Authorization value must be a SHA-512 hash generated by concatenating the following fields:

- `merchantId`: Assigned merchant identifier
- `type`: Operation type (`ON_DEMAND/RECURRENT`)
- `customerId`: End user/customer ID
- `processorCode`: Code of the payment processor
- `keyPayin`: Secret key assigned by Monnet

Field Description

FieldDescription
merchantIdInteger (Required)
Unique ID assigned to the merchant by Monnet
subscriptionDetailsObject (Required)
typeString (Required)
Subscription type. Allowed value: **ON_DEMAND**
customerIdString (Required)
Unique identifier of the customer within the merchant’s system
Example:
992984321
processorCodeString (Required)
Code identifying the selected payment processor
Example:
`Yape_on_file

This service allows merchants to cancel an existing One Click Payment (OCP) subscription associated with a customer. Once canceled, the subscription token will no longer be valid for initiating future payments..

Request Body (JSON)

The merchant must send a JSON payload with the following structure:

{
  "merchantId": 1073741824,
  "subscriptionDetails": {
    "type": "ON_DEMAND",
    "customerId": "140912518",
    "processorCode": "Yape_on_file"
  }
}

Response Field Description

FieldDescription
subscriptionIdInteger (Required)
Unique identifier of the subscription that has been successfully cancelled
statusString (Required)
Status returned by processor.
Example
Β΄ CANCELLED

βœ… Successful Response – 200 OK

If the subscription cancellation request is valid, the service will respond with a 200 OK status and return a JSON payload confirming the operation, including the subscription ID and a status indicating that the subscription has been successfully cancelled.:

{
  "subscriptionId": 1073741824,
  "status": "CANCELLED"
}

Error Response

This response indicates that the subscription transaction could not be processed due to a business or validation error. It provides both a general error message and a detailed list of one or more specific underlying errors.

Error Response Field

FieldDescription
errorCodeString (Opcional)
General code representing the main error type. Typically business-level.
See Errors Code
errorMessageString (Required)
Human-readable description of the general error
See Errors Code
errorFieldDetailsArray (Opcional)
List of specific errors encountered during processing
fleldString (Required)
Refers to the affected field.
errorMessageString (Required)
Description of the specific error

Response Body (JSON)

{
    "errorCode": "9099",
    "errorMessage": "error",
    
}

Errors Code

Error CodeError MessageHTTP Code
E401Unauthorized request401
9099error200
9025Unable to locate record on file200
B401The merchant does not exists200
B404The merchant does not contain the correct processor settings200
B405Subscription not active200