revoke Method
Overview
The revoke method cancels an existing recurring payment mandate. Once revoked, no future automatic charges can be made using this mandate.
Business Use Case: A customer cancels their SaaS subscription. You call revoke to stop all future billing and comply with their cancellation request.
Purpose
| Scenario | Benefit |
|---|---|
| Subscription cancellation | Honor customer cancellation requests |
| Compliance | Meet regulatory requirements |
| Customer retention | Clean revocation improves re-subscription likelihood |
Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
mandateId | string | Yes | The mandate ID to revoke |
reason | string | No | Reason for revocation |
Response Fields
| Field | Type | Description |
|---|---|---|
mandateId | string | The revoked mandate ID |
status | MandateStatus | REVOKED |
revokedAt | string | ISO 8601 timestamp |
statusCode | number | HTTP status code |
Example
SDK Setup
const { RecurringPaymentClient } = require('hyperswitch-prism');
const recurringClient = new RecurringPaymentClient({
connector: 'stripe',
apiKey: 'YOUR_API_KEY',
environment: 'SANDBOX'
});
Request
const request = {
mandateId: "mandate_xxx",
reason: "customer_canceled"
};
const response = await recurringClient.revoke(request);
Response
{
mandateId: "mandate_xxx",
status: "REVOKED",
revokedAt: "2024-01-15T10:30:00Z",
statusCode: 200
}
Important Notes
- Immediate effect - Revocation takes effect immediately
- No refunds - Revoking doesn't refund past charges
- Idempotent - Multiple calls return same result
- No undo - Create new mandate if needed
Next Steps
- charge - Process payments before revocation
- setupRecurring - Create new mandate if customer resubscribes