Skip to main content

Overview

POST /partner/operations/:operationId/cancel uses the same rules as the cancel button on the widget receipt. The clock starts when the user presses Make Payment (operation.createdAt) and lasts 30 minutes unless your environment uses a different window. Check first with GET /partner/operations/:operationId. The detail includes data.cancellation:
Set BASE_URL from the Partner API overview.
reason is optional (max 500 characters). It is stored on the operation and sent on operation.cancelled as cancellationReason. That webhook also includes cancelledBy: "partner".

Success

corridorCancel.outcome is ok (corridor accepted), failed (canonical operation is cancelled, corridor call failed — Leap support is notified), or not_applicable (no corridor operation id).

When cancel is refused

A refusal is HTTP 409. error.code matches error.data.unavailableReason in uppercase. error.data.nextStep says what to do. retryable is true only for IN_FLIGHT.
A missing operation, or one that belongs to another partner, is 404 OPERATION_NOT_FOUND.