Skip to main content
This webhook is triggered when a customer’s uploaded receipt is declined. The receipt may have been declined automatically or after manual review. To subscribe to this webhook, your access token needs to contain the read_customers scope.

Payload

customer
object
required
Customer object with the same shape as the Customers API response
receipt
object
required
rule
object
required
declined_reason
string | null
required
The reason the receipt was declined, if available
upload_url
string
required
A URL the customer can use to re-upload a new receipt

Example

Example
{
  "id": "bff1bddb-6cd8-4c2c-9619-18744657053c",
  "topic": "program_events/customer.receipt_declined",
  "created_at": "2025-03-15T10:30:00.000Z",
  "payload": {
    "id": "a1b2c3d4-5e6f-7890-abcd-ef1234567890",
    "created_at": "2025-03-15T10:30:00.000Z",
    "kind": "customer.receipt_declined",
    "unique_until": null,
    "properties": {
      "customer": {
        "id": 6932,
        "merchant_id": "2134606599",
        "email": "jessica@example.com",
        "points_approved": 200,
        "points_pending": 0,
        "points_spent": 500,
        "rewards_claimed": 5,
        "rewards_used": 0,
        "properties": {
          "name": "Jessica White"
        },
        "metadata": {},
        "birthday": "1990-01-29",
        "blocked": false,
        "guest": false,
        "enrolled": true,
        "enrolled_at": "2015-12-10T03:00:00.000Z",
        "referral_id": null,
        "referred_by": null,
        "loyalty_tier_membership": null,
        "tier_eligibility": null,
        "insights_segment": "Loyal",
        "referral_url": null,
        "created_at": "2016-12-10T03:00:00.000Z",
        "updated_at": "2025-03-15T10:30:00.000Z"
      },
      "receipt": {
        "id": 43,
        "status": "declined",
        "retailer_name": "Walmart",
        "total_paid": 85.5,
        "tax_paid": 7.5,
        "currency": "USD",
        "fraud_score": 92,
        "duplicate": false,
        "retailer_receipt_date": "2025-03-14T00:00:00.000Z",
        "created_at": "2025-03-14T18:22:00.000Z"
      },
      "rule": {
        "id": 1234,
        "name": "$retail_purchase"
      },
      "declined_reason": "Fraud score exceeded threshold",
      "upload_url": "https://upload.loyaltylion.com/123/a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
    }
  }
}