curl --request POST \
--url https://{cluster}.voucherify.io/v2/loyalties/programs/{programId}/members/{memberId}/cards/{cardId}/pending-points/{bucketId}/cancel \
--header 'X-App-Id: <api-key>' \
--header 'X-App-Token: <api-key>'{
"transaction": {
"id": "lctx_12d7941860abf9e87f",
"card_id": "lcrd_128f962dbd8c4ba5df",
"program_id": "lprg_128f58429f4c4bf7b2",
"member_id": "lmbr_128f962dbc8c4ba5dc",
"card_definition_id": "lcdef_128f495f720c4bec8c",
"card_type": "INDIVIDUAL",
"type": "PENDING_POINTS_CANCELED",
"details": {
"reason": "Manual points cancellation",
"rejection": null,
"metadata": {},
"points": {
"total": 60,
"date": "2026-08-16",
"type": "PERIOD_BASED"
}
},
"status": "PENDING",
"created_at": "2026-08-06T14:01:13.346Z",
"updated_at": null,
"object": "card_transaction"
},
"status": "TRANSACTION_CREATED",
"message": "Points cancellation transaction created"
}Cancel pending point bucket
Cancels a pending points bucket so its points aren’t activated. Creates a PENDING_POINTS_CANCELED card transaction. The transaction is created with status PENDING and processed asynchronously. No request body.
The bucket must be PENDING, and its date must be after the current project day. The program and the member must be ACTIVE, and the program must be inside its validity window. Otherwise the response is 423.
Returns 404 when the program or the member doesn’t exist, when the card isn’t assigned to that member, or when the bucket isn’t on that card.
curl --request POST \
--url https://{cluster}.voucherify.io/v2/loyalties/programs/{programId}/members/{memberId}/cards/{cardId}/pending-points/{bucketId}/cancel \
--header 'X-App-Id: <api-key>' \
--header 'X-App-Token: <api-key>'{
"transaction": {
"id": "lctx_12d7941860abf9e87f",
"card_id": "lcrd_128f962dbd8c4ba5df",
"program_id": "lprg_128f58429f4c4bf7b2",
"member_id": "lmbr_128f962dbc8c4ba5dc",
"card_definition_id": "lcdef_128f495f720c4bec8c",
"card_type": "INDIVIDUAL",
"type": "PENDING_POINTS_CANCELED",
"details": {
"reason": "Manual points cancellation",
"rejection": null,
"metadata": {},
"points": {
"total": 60,
"date": "2026-08-16",
"type": "PERIOD_BASED"
}
},
"status": "PENDING",
"created_at": "2026-08-06T14:01:13.346Z",
"updated_at": null,
"object": "card_transaction"
},
"status": "TRANSACTION_CREATED",
"message": "Points cancellation transaction created"
}Authorizations
Path Parameters
Identifies the loyalty program. Format lprg_[a-f0-9]+.
^lprg_[a-f0-9]+$Identifies the member. Format lmbr_[a-f0-9]+.
^lmbr_[a-f0-9]+$Identifies the loyalty card. Format lcrd_[a-f0-9]+.
^lcrd_[a-f0-9]+$Identifies the pending points bucket. Format lcppb_[a-f0-9]+.
^lcppb_[a-f0-9]+$Response
Result of the pending points cancellation.
Response body schema for POST /v2/loyalties/programs/{programId}/members/{memberId}/cards/{cardId}/pending-points/{bucketId}/cancel.
The created PENDING_POINTS_CANCELED card transaction.
Show child attributes
Show child attributes
Result status. The API endpoint returns TRANSACTION_CREATED.
TRANSACTION_CREATED Human-readable result message - "Points cancellation transaction created".
Points cancellation transaction created 
