Journey Docs
Members APILoyalty

Confirm Fulfillment Redeemed

Member confirms a claimed fulfillment as successfully redeemed

POST/members/me/loyalty/offers/fulfillments/{fulfillmentId}/confirm

Overview

Allows a member to self-confirm that they have successfully redeemed a claimed fulfillment. This moves the status from "claimed" to "fulfilled" and is used for direct redemption types where the member can verify their own redemption.

Valid for "direct", "externalCode", and "static" redemption types only.

Authentication

Requires a valid Clerk JWT token in the Authorization header.

Path Parameters

fulfillmentIdpathstringrequired

Fulfillment UUID to confirm as redeemed

Request Body

confirmedbodyboolean

Confirmation that the fulfillment was successfully used (typically true)

Request

curl -X POST "http://localhost:3000/v1/members/me/loyalty/offers/fulfillments/fulfill_550e8400-e29b-41d4-a716-446655440000/confirm" \
  -H "Authorization: Bearer YOUR_CLERK_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "confirmed": true
  }'

Response

successbooleanrequired

Whether the confirmation was successful

statusstringrequired

New status of the fulfillment (typically "fulfilled")

fulfilledAtstring

ISO 8601 timestamp when fulfillment was marked as fulfilled

Response

{
  "success": true,
  "status": "fulfilled",
  "fulfilledAt": "2024-04-15T16:45:00Z"
}

Confirmation Process

Validation

  1. Ownership: Verifies fulfillment belongs to authenticated member
  2. Redemption Type: Only allows self-confirmation for eligible types
  3. Status Check: Ensures fulfillment is in a confirmable state

Status Updates

  1. Fulfillment Status: Updates from "claimed"/"approved" to "fulfilled"
  2. Timestamp: Records when confirmation occurred
  3. Ledger Update: Finalizes any point transactions if applicable

Eligible Redemption Types

  • direct: Instant activation (e.g., account credits)
  • externalCode: Member redeems externally (e.g., third-party vouchers)
  • static: Fixed redemptions that don't require property verification

Valid Confirmation Statuses

claimed

  • Meaning: Recently claimed, ready for redemption
  • Action: Member confirms they used/redeemed the item
  • Result: Moves to "fulfilled"

approved

  • Meaning: Approved by property, ready for use
  • Action: Member confirms they used the approved item
  • Result: Moves to "fulfilled"

Non-Confirmable Redemption Types

propertySpecific

  • Reason: Requires property verification
  • Alternative: Property marks as fulfilled when member redeems

journeyInternal

  • Reason: System-managed redemptions
  • Alternative: Automated fulfillment process

Non-Confirmable Statuses

fulfilled

  • Reason: Already completed
  • Response: Returns current fulfilled timestamp

rejected

  • Reason: Property/system rejected the request
  • Response: Error - cannot confirm rejected items

cancelled

  • Reason: Cancelled by member or admin
  • Response: Error - cannot confirm cancelled items

expired

  • Reason: Past expiration date
  • Response: Error - cannot confirm expired items

Use Cases

Digital Vouchers

  • Member receives external code
  • Member redeems code with third party
  • Member confirms successful redemption

Account Credits

  • Credit applied to member account instantly
  • Member confirms they received the credit
  • Finalizes the transaction

Direct Benefits

  • Benefit applied immediately (e.g., tier status)
  • Member confirms they received the benefit
  • Completes the fulfillment cycle

On this page