Order Item Fulfillment Webhook


The following is an example of a generic webhook payload for an order item fulfillment, with some metadata identifying the webhook (e.g. id, event_type). The actual data about the resource/operation is indicated order_item object and order object.

Products Available


ProductEvent nameNotes
Gift Cardorder_item.fulfillment.confirmed
order_item.fulfillment.failed
Points Transferorder_item.fulfillment.confirmed
order_item.fulfillment.failed

Event Name (event_type)

  • order_item.fulfillment.confirmed
  • order_item.fulfillment.failed
  • order_item.fulfillment.cancelled

Webhook Payload Schema

{
  "event_id": "376b9ff8-ff94-4938-bdba-564dad9c7690",
  "event_type": "order_item.fulfillment.confirmed",
  "source_type": "system",
  "created_at": "2025-03-21T16:22:06Z",
  "order_item": {
    // Order item details
  },
  "order": {
    // Order details
  },
  "metadata": {
    // Additional contextual information
  }
}

Payload Fields

FieldTypeRequiredDescription
event_idUUIDYes

Unique identifier used to track and manage events throughout the system, particularly in the webhook processing pipeline.

For example, if the webhook was to provide an update on a redemption, the event_id would refer to the unique redemption ID

event_typeStringYesIdentifies the event that triggered the webhook delivery (e.g. order_item.fulfillment.confirmed
source_typeStringYesPossible values include auto_redemption, admin, user, system
created_atISO 8601YesTimestamp when the event occurred (UTC).
order_itemObjectYesInformation about the order item being redeemed
orderObjectYesInformation about the parent order which order item belongs to.
metadataObjectYesThis is reserved object to provide some custom data if need.

Sample webhook payloads

1. Order Item Fulfillment Confirmed

Event type: order_item.fulfillment.confirmed

Sample Webhook Payloads:

{
  "event_id": "376b9ff8-ff94-4938-bdba-564dad9c7690",
  "event_type": "order_item.fulfillment.confirmed",
  "source_type": "system",
  "created_at": "2025-03-21T16:22:06Z",
  "order_item": {
    "id": "02c0287e-05f5-4ee4-8f20-dbc8007c1aa3",
    "data": {
      "membership": {
        "number": "3081031701519960",
        "last_name": "John",
        "first_name": "Doe"
      },
      "program_name": "ALL – Accor Live Limitless",
      "points_amount": 1000,
      "transfer_amount": 1000,
      "program_image_url": "https://kaligo.imgix.net/logos/ACCORLECLUB.en.png",
      "loyalty_program_id": "cf633f92-4e58-4efe-944c-3f495a634f60",
      "tenant_currency_name": "Rewards Points",
      "program_currency_name": "ALL Reward points"
    },
    "type": "points_transfer_order_item",
    "status": "fulfilled",
    "quantity": 1,
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 1000,
    "points_amount": 1000,
    "description": "1,000 ALL Reward points",
    "errors":[],
    "created_at": "2025-03-20T06:59:16.096Z",
    "updated_at": "2025-03-20T06:59:58.635Z"
  },
  "order": {
    "id": "78e2d529-4026-4808-9a83-c66a1a58b186",
    "status": "completed",
    "user_id": "61827ea5-21cc-4a25-b0f1-6d2ee4f1a764",
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 1000,
    "points_amount": 1000,
    "source_type": "api",
    "reference_id": "be5acb78-59c6-42f8-8ea7-f736e67a6140",
    "created_at": "2025-03-20T06:59:16.078Z",
    "updated_at": "2025-03-20T06:59:58.772Z"
  },
  "metadata": {}  
}
{
  "event_id": "376b9ff8-ff94-4938-bdba-564dad9c7690",
  "event_type": "order_item.fulfillment.confirmed",
  "source_type": "system",
  "created_at": "2025-03-21T16:22:06Z",
  "order_item": {
    "id": "02c0287e-05f5-4ee4-8f20-dbc8007c1aa3",
    "data": {
      "membership": {
        "number": "3081031701519960",
        "last_name": "John",
        "first_name": "Doe"
      },
      "program_name": "ALL – Accor Live Limitless",
      "points_amount": 1000,
      "transfer_amount": 1000,
      "program_image_url": "https://kaligo.imgix.net/logos/ACCORLECLUB.en.png",
      "loyalty_program_id": "cf633f92-4e58-4efe-944c-3f495a634f60",
      "tenant_currency_name": "Rewards Points",
      "program_currency_name": "ALL Reward points"
    },
    "type": "points_transfer_order_item",
    "status": "fulfilled",
    "quantity": 1,
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 1000,
    "points_amount": 1000,
    "description": "1,000 ALL Reward points",
    "errors":[],
    "created_at": "2025-03-20T06:59:16.096Z",
    "updated_at": "2025-03-20T06:59:58.635Z"
  },
  "order": {
    "id": "78e2d529-4026-4808-9a83-c66a1a58b186",
    "status": "completed",
    "user_id": "61827ea5-21cc-4a25-b0f1-6d2ee4f1a764",
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 1000,
    "points_amount": 1000,
    "source_type": "api",
    "reference_id": "be5acb78-59c6-42f8-8ea7-f736e67a6140",
    "created_at": "2025-03-20T06:59:16.078Z",
    "updated_at": "2025-03-20T06:59:58.772Z"
  },
  "metadata": {}  
}

2. Order Item Fulfillment Failed

Event type: order_item.fulfillment.failed

Sample Webhook Payloads:

{
  "event_id": "376b9ff8-ff94-4938-bdba-564dad9c7690",
  "event_type": "order_item.fulfillment.failed",
  "source_type": "system",
  "created_at": "2025-03-21T16:22:06Z",
  "order_item": {
    "id": "4611fb1e-6d6d-4d92-9cb5-afd1a5ff2440",
    "data": {
      "membership": {
        "number": "988877387",
        "last_name": "John",
        "first_name": "Doe"
      },
      "program_name": "Aeroplan",
      "points_amount": 999900,
      "transfer_amount": 999900,
      "program_image_url": "https://kaligo.imgix.net/logos/ACAEROPLAN.en.png",
      "loyalty_program_id": "896b8b70-dcb6-4092-bf88-364e8364ec59",
      "tenant_currency_name": "Points",
      "program_currency_name": "Aeroplan points"
    },
    "type": "points_transfer_order_item",
    "status": "failed",
    "quantity": 1,
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 999900,
    "points_amount": 999900,
    "error_message": "This is error message",
    "errors": [
      {
      	"code": "xxxxxx",
      	"message": "something went wrong"
      }
    ],
    "description": "999,900 Aeroplan points",
    "created_at": "2025-03-03T11:18:54.311Z",
    "updated_at": "2025-03-18T06:19:44.605Z",
  },
  "order": {
    "id": "12a688ce-f378-4dfb-912e-6a6f6b9e857d",
    "status": "completed",
    "user_id": "7dd9b857-1ae7-4ad2-8384-9ab57d2240c5",
    "cash_paid": 0,
    "created_at": "2025-03-03T11:18:54.298Z",
    "updated_at": "2025-03-18T06:19:44.654Z",
    "cash_amount": 0,
    "points_paid": 999900,
    "source_type": "user",
    "points_amount": 999900
  },
  "metadata": {}
}
{
  "event_id": "376b9ff8-ff94-4938-bdba-564dad9c7690",
  "event_type": "order_item.fulfillment.failed",
  "source_type": "system",
  "created_at": "2025-03-21T16:22:06Z",
  "order_item": {
    "id": "c2c6d5ba-1dc9-48d0-965a-eec282a5d31d",
    "data": {
      "recipient": {
        "email": "[email protected]",
        "address": {
          "line_1": "123 Main Street",
          "city": "Apt 1A",
          "country_code": "USA",
          "postal_code": "12345"
        },
        "last_name": "John",
        "first_name": "Doe",
        "company_name": "Ascenda",
        "phone_number": "+6512345678"
      },
      "currency": "USD",
      "display_value": 20,
      "gift_card_id": "c3204305-b7c5-42b6-a6eb-3617449b69c2",
      "product_name": "Adidas",
      "fulfillment_data": null,
      "product_image_url": "https://catalogue-api.meritincentives.com/media/products/images/Adidas-_SINGAPORE.jpg",
      "redemption_instruction": null
    },
    "type": "gift_card_order_item",
    "status": "failed",
    "description": "$20 Gift Card",
    "errors": [
      {
      	"code": "xxxxxx",
      	"message": "something went wrong"
      }
    ],
    "quantity": 1,
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 2000,
    "points_amount": 2000,
    "created_at": "2025-03-19T13:02:42.946Z",
    "updated_at": "2025-03-19T13:18:46.454Z"
  },
  "order": {
    "id": "38e9b2c9-a263-4bcf-96c4-34ea66f495b1",
    "status": "completed",
    "user_id": "61827ea5-21cc-4a25-b0f1-6d2ee4f1a764",
    "cash_paid": 0,
    "cash_amount": 0,
    "points_paid": 2000,
    "points_amount": 2000,
    "source_type": "api",
    "reference_id": "241def10-7e7a-4999-9625-7722a1868b9f",
    "created_at": "2025-03-19T13:02:42.940Z",
    "updated_at": "2025-03-19T13:18:46.721Z"
  },
  "metadata": {}
}