Skip to main content

Events

Karla generates events throughout the customer journey, from order creation to delivery completion. Understanding the event hierarchy and structure is crucial for building integrations, setting up webhooks, and creating responsive campaigns.

Third-party tools

We can integrate with any third-party tool that allows custom event creation via their API. If the tool allows passing a custom attributes object, such object will have the format defined here.

Contact us for more information about how to integrate triggers with any tool you use.

Event Hierarchy

Events in Karla follow a four-level hierarchy:

1. Source

The top-level entity that generates the event:

  • shipments - Package delivery events
  • claims - Customer service request events
  • campaigns - Marketing interaction events
  • customers - Customer behavior events
  • system - System operation events

2. Ref

The event reference. Format will be different depending on its source:

Shipments: {source}/{phase}/{event_name}

  • Example: shipments/delivered/SUCCESSFULLY_DELIVERED

Claims: {source}/{action}

  • Example: claims/created
info

When subscribing to events via a webhook's enabled_events field, you can use the phase-level ref, like shipments/delivered to receive all events belonging to the delivered shipment phase or claims to get all relevant claim actions.

3. Event Name

The most granular event identifier (e.g., SUCCESSFULLY_DELIVERED, OUT_FOR_DELIVERY)

4. Event Group

Klaviyo-friendly groupings for easier campaign management (e.g., shipment_delivered, shipment_in_transit)

Shipment Events

Shipment events are generated by fulfilled shipments only (those with tracking numbers). Draft shipments only generate pre-transit events.

Draft vs Fulfilled Events
  • Draft shipments: Only generate ORDER_CREATED and ORDER_CANCELLED events (no tracking number yet)
  • Fulfilled shipments: Generate all other tracking events

See Shipment States Explained for more details.

Event Structure

Ref Pattern: shipments/{phase}/{event_name}

By Phase

Order Created (order_created)

Events when order is placed but before carrier pickup:

Event NameRefEvent Group
ORDER_CREATEDshipments/order_created/ORDER_CREATEDshipment_pre_transit
ORDER_IN_PROCESSINGshipments/order_created/ORDER_IN_PROCESSINGshipment_pre_transit

Order Processed (order_processed)

Events when package is prepared for shipping (23 events total):

Event NameRefEvent Group
ORDER_PROCESSEDshipments/order_processed/ORDER_PROCESSEDshipment_pre_transit
PARCEL_DATA_SUBMITTED_TO_CARRIERshipments/order_processed/PARCEL_DATA_SUBMITTED_TO_CARRIERshipment_pre_transit
PICKUP_SUCCESSFULshipments/order_processed/PICKUP_SUCCESSFULshipment_pre_transit
PARCEL_DISPATCHEDshipments/order_processed/PARCEL_DISPATCHEDshipment_pre_transit
See all order_processed events (23 total)
Event NameRefEvent Group
CARRIER_UNKNOWNshipments/order_processed/CARRIER_UNKNOWNshipment_pre_transit
DISPATCHED_FROM_FORWARDING_DEPOTshipments/order_processed/DISPATCHED_FROM_FORWARDING_DEPOTshipment_pre_transit
ERROR_IN_PARCEL_DATA_SUBMISSIONshipments/order_processed/ERROR_IN_PARCEL_DATA_SUBMISSIONshipment_pre_transit
ORDER_PROCESSEDshipments/order_processed/ORDER_PROCESSEDshipment_pre_transit
PARCEL_COLLECTED_FROM_DROP_OFF_LOCATIONshipments/order_processed/PARCEL_COLLECTED_FROM_DROP_OFF_LOCATIONshipment_pre_transit
PARCEL_DATA_SUBMISSION_DELAYEDshipments/order_processed/PARCEL_DATA_SUBMISSION_DELAYEDshipment_pre_transit
PARCEL_DATA_SUBMITTED_TO_CARRIERshipments/order_processed/PARCEL_DATA_SUBMITTED_TO_CARRIERshipment_pre_transit
PARCEL_DISPATCHEDshipments/order_processed/PARCEL_DISPATCHEDshipment_pre_transit
PARCEL_DROPPED_OFF_AT_PARCEL_LOCKERshipments/order_processed/PARCEL_DROPPED_OFF_AT_PARCEL_LOCKERshipment_pre_transit
PARCEL_DROPPED_OFF_AT_POST_OFFICEshipments/order_processed/PARCEL_DROPPED_OFF_AT_POST_OFFICEshipment_pre_transit
PARCEL_DROPPED_OFF_IN_PARCEL_SHOPshipments/order_processed/PARCEL_DROPPED_OFF_IN_PARCEL_SHOPshipment_pre_transit
PARCEL_DROPPED_OFF_OVER_THE_COUNTERshipments/order_processed/PARCEL_DROPPED_OFF_OVER_THE_COUNTERshipment_pre_transit
PARCEL_DROPPED_OFF_WITH_CARRIERshipments/order_processed/PARCEL_DROPPED_OFF_WITH_CARRIERshipment_pre_transit
PARCEL_READY_FOR_PICKUPshipments/order_processed/PARCEL_READY_FOR_PICKUPshipment_pre_transit
PICKUP_ATTEMPTEDshipments/order_processed/PICKUP_ATTEMPTEDshipment_pre_transit
PICKUP_DELAYEDshipments/order_processed/PICKUP_DELAYEDshipment_pre_transit
PICKUP_FAILEDshipments/order_processed/PICKUP_FAILEDshipment_pre_transit
PICKUP_SUCCESSFULshipments/order_processed/PICKUP_SUCCESSFULshipment_pre_transit
PROCEEDING_TO_CARRIER_FACILITYshipments/order_processed/PROCEEDING_TO_CARRIER_FACILITYshipment_pre_transit
RECEIPT_AT_FORWARDING_DEPOTshipments/order_processed/RECEIPT_AT_FORWARDING_DEPOTshipment_pre_transit
SHIPMENT_INFO_SENT_TO_LAST_MILE_SERVICE_PROVIDERshipments/order_processed/SHIPMENT_INFO_SENT_TO_LAST_MILE_SERVICE_PROVIDERshipment_pre_transit
SHIPMENT_NEVER_ARRIVEDshipments/order_processed/SHIPMENT_NEVER_ARRIVEDshipment_pre_transit

In Transit (in_transit)

Events when package is moving through carrier network (50+ events total):

Event NameRefEvent Group
DISPATCHED_FROM_SORTING_CENTERshipments/in_transit/DISPATCHED_FROM_SORTING_CENTERshipment_in_transit
ARRIVAL_AT_FINAL_DELIVERY_CENTERshipments/in_transit/ARRIVAL_AT_FINAL_DELIVERY_CENTERshipment_in_transit
SHIPMENT_EN_ROUTEshipments/in_transit/SHIPMENT_EN_ROUTEshipment_in_transit
DELAY_EXPECTEDshipments/in_transit/DELAY_EXPECTEDshipment_carrier_delay
SHIPMENT_DAMAGEDshipments/in_transit/SHIPMENT_DAMAGEDshipment_damaged
See all in_transit events (50+ total)
Event NameRefEvent Group
ACCEPTED_BY_DESTINATION_OFFICEshipments/in_transit/ACCEPTED_BY_DESTINATION_OFFICEshipment_in_transit
ACCEPTED_BY_ORIGIN_OFFICEshipments/in_transit/ACCEPTED_BY_ORIGIN_OFFICEshipment_in_transit
ARRIVAL_AT_FINAL_DELIVERY_CENTERshipments/in_transit/ARRIVAL_AT_FINAL_DELIVERY_CENTERshipment_in_transit
ARRIVAL_AT_TRANSPORT_HUBshipments/in_transit/ARRIVAL_AT_TRANSPORT_HUBshipment_in_transit
ARRIVAL_IN_DESTINATION_COUNTRYshipments/in_transit/ARRIVAL_IN_DESTINATION_COUNTRYshipment_in_transit
ARRIVED_AT_SORTING_CENTERshipments/in_transit/ARRIVED_AT_SORTING_CENTERshipment_in_transit
ASSIGNED_TO_TRANSPORTshipments/in_transit/ASSIGNED_TO_TRANSPORTshipment_in_transit
AT_SORTING_CENTERshipments/in_transit/AT_SORTING_CENTERshipment_in_transit
AT_TRANSPORT_HUBshipments/in_transit/AT_TRANSPORT_HUBshipment_in_transit
COMPLETION_OF_CUSTOMS_PROCESSINGshipments/in_transit/COMPLETION_OF_CUSTOMS_PROCESSINGshipment_in_transit
COMPLETION_OF_EXPORT_PROCESSINGshipments/in_transit/COMPLETION_OF_EXPORT_PROCESSINGshipment_in_transit
CUSTOMS_PROCESSINGshipments/in_transit/CUSTOMS_PROCESSINGshipment_in_transit
DELAY_EXPECTEDshipments/in_transit/DELAY_EXPECTEDshipment_carrier_delay
DELAY_IN_TRANSPORT_MISROUTED_SHIPMENTshipments/in_transit/DELAY_IN_TRANSPORT_MISROUTED_SHIPMENTshipment_carrier_delay
DELAY_IN_TRANSPORT_OFFLOADED_SHIPMENTshipments/in_transit/DELAY_IN_TRANSPORT_OFFLOADED_SHIPMENTshipment_carrier_delay
DELAY_IN_TRANSPORTshipments/in_transit/DELAY_IN_TRANSPORTshipment_carrier_delay
DEPARTURE_FROM_TRANSPORT_HUBshipments/in_transit/DEPARTURE_FROM_TRANSPORT_HUBshipment_in_transit
DISPATCHED_FROM_DELIVERY_CENTERshipments/in_transit/DISPATCHED_FROM_DELIVERY_CENTERshipment_in_transit
DISPATCHED_FROM_SORTING_CENTERshipments/in_transit/DISPATCHED_FROM_SORTING_CENTERshipment_in_transit
DISPATCHING_STARTED_AT_PROCESSING_CENTERshipments/in_transit/DISPATCHING_STARTED_AT_PROCESSING_CENTERshipment_in_transit
ENCODING_COMPLETED_AT_PROCESSING_CENTERshipments/in_transit/ENCODING_COMPLETED_AT_PROCESSING_CENTERshipment_in_transit
ENCODING_ERROR_IN_PROCESSING_AT_SORTING_CENTERshipments/in_transit/ENCODING_ERROR_IN_PROCESSING_AT_SORTING_CENTERshipment_in_transit
ENCODING_STARTED_AT_PROCESSING_CENTERshipments/in_transit/ENCODING_STARTED_AT_PROCESSING_CENTERshipment_in_transit
ERROR_IN_PROCESSING_AT_SORTING_CENTERshipments/in_transit/ERROR_IN_PROCESSING_AT_SORTING_CENTERshipment_in_transit
EXPORT_PROCESSINGshipments/in_transit/EXPORT_PROCESSINGshipment_in_transit
FAILED_TO_HAND_OVER_TO_DELIVERY_PARTNERshipments/in_transit/FAILED_TO_HAND_OVER_TO_DELIVERY_PARTNERshipment_in_transit
HANDED_OVER_TO_DELIVERY_PARTNERshipments/in_transit/HANDED_OVER_TO_DELIVERY_PARTNERshipment_in_transit
HELD_AT_CUSTOMS_FOR_ADDITIONAL_PAYMENTshipments/in_transit/HELD_AT_CUSTOMS_FOR_ADDITIONAL_PAYMENTshipment_in_transit
HELD_AT_CUSTOMS_FOR_CLARIFICATIONSshipments/in_transit/HELD_AT_CUSTOMS_FOR_CLARIFICATIONSshipment_in_transit
HELD_AT_CUSTOMSshipments/in_transit/HELD_AT_CUSTOMSshipment_in_transit
HELD_AT_EXPORT_PROCESSINGshipments/in_transit/HELD_AT_EXPORT_PROCESSINGshipment_in_transit
INBOUND_FLIGHT_ARRIVEDshipments/in_transit/INBOUND_FLIGHT_ARRIVEDshipment_in_transit
INBOUND_TRUCK_ARRIVEDshipments/in_transit/INBOUND_TRUCK_ARRIVEDshipment_in_transit
ISSUES_IN_PROCESSING_BY_CUSTOMS_AUTHORITIESshipments/in_transit/ISSUES_IN_PROCESSING_BY_CUSTOMS_AUTHORITIESshipment_in_transit
MORE_INFO_ON_CARRIER_WEBSITEshipments/in_transit/MORE_INFO_ON_CARRIER_WEBSITEshipment_in_transit
OUTBOUND_FLIGHT_DEPARTEDshipments/in_transit/OUTBOUND_FLIGHT_DEPARTEDshipment_in_transit
OUTBOUND_TRUCK_DEPARTEDshipments/in_transit/OUTBOUND_TRUCK_DEPARTEDshipment_in_transit
PROCESSED_AT_DELIVERY_CENTERshipments/in_transit/PROCESSED_AT_DELIVERY_CENTERshipment_in_transit
PROCESSING_AT_TRANSPORT_HUBshipments/in_transit/PROCESSING_AT_TRANSPORT_HUBshipment_in_transit
SCANNED_AT_PROCESSING_CENTERshipments/in_transit/SCANNED_AT_PROCESSING_CENTERshipment_in_transit
SHIPMENT_AT_FINAL_DELIVERY_CENTERshipments/in_transit/SHIPMENT_AT_FINAL_DELIVERY_CENTERshipment_in_transit
SHIPMENT_DAMAGEDshipments/in_transit/SHIPMENT_DAMAGEDshipment_damaged
SHIPMENT_DELAYED_DUE_TO_CUSTOMER_REQUESTshipments/in_transit/SHIPMENT_DELAYED_DUE_TO_CUSTOMER_REQUESTshipment_delayed_due_to_customer_request
SHIPMENT_EN_ROUTEshipments/in_transit/SHIPMENT_EN_ROUTEshipment_in_transit
SHIPMENT_MISROUTEDshipments/in_transit/SHIPMENT_MISROUTEDshipment_in_transit
SORTING_COMPLETED_AT_PROCESSING_CENTERshipments/in_transit/SORTING_COMPLETED_AT_PROCESSING_CENTERshipment_in_transit
SORTING_ERROR_IN_PROCESSING_AT_SORTING_CENTERshipments/in_transit/SORTING_ERROR_IN_PROCESSING_AT_SORTING_CENTERshipment_in_transit
SORTING_STARTED_AT_PROCESSING_CENTERshipments/in_transit/SORTING_STARTED_AT_PROCESSING_CENTERshipment_in_transit
START_OF_CUSTOMS_PROCESSINGshipments/in_transit/START_OF_CUSTOMS_PROCESSINGshipment_in_transit
START_OF_EXPORT_PROCESSINGshipments/in_transit/START_OF_EXPORT_PROCESSINGshipment_in_transit
TRANSPORT_ARRIVEDshipments/in_transit/TRANSPORT_ARRIVEDshipment_in_transit
TRANSPORT_DEPARTEDshipments/in_transit/TRANSPORT_DEPARTEDshipment_in_transit

In Delivery (in_delivery)

Events when package is out for delivery (19 events total):

Event NameRefEvent Group
OUT_FOR_DELIVERYshipments/in_delivery/OUT_FOR_DELIVERYshipment_out_for_delivery
IN_DELIVERYshipments/in_delivery/IN_DELIVERYshipment_out_for_delivery
DELIVERY_ATTEMPTEDshipments/in_delivery/DELIVERY_ATTEMPTEDshipment_delivery_failed
See all in_delivery events (19 total)
Event NameRefEvent Group
ATTEMPTED_DELIVERY_UNDELIVERABLEshipments/in_delivery/ATTEMPTED_DELIVERY_UNDELIVERABLEshipment_delivery_failed
DELIVERY_ATTEMPTED_ADDRESS_COULD_NOT_BE_FOUNDshipments/in_delivery/DELIVERY_ATTEMPTED_ADDRESS_COULD_NOT_BE_FOUNDshipment_delivery_failed_address_issue
DELIVERY_ATTEMPTED_ADDRESSEE_MOVEDshipments/in_delivery/DELIVERY_ATTEMPTED_ADDRESSEE_MOVEDshipment_delivery_failed_address_issue
DELIVERY_ATTEMPTED_ADDRESSEE_NOT_KNOWN_AT_ADDRESSshipments/in_delivery/DELIVERY_ATTEMPTED_ADDRESSEE_NOT_KNOWN_AT_ADDRESSshipment_delivery_failed_address_issue
DELIVERY_ATTEMPTED_CASH_ON_DELIVERY_AMOUNT_NOT_READYshipments/in_delivery/DELIVERY_ATTEMPTED_CASH_ON_DELIVERY_AMOUNT_NOT_READYshipment_delivery_failed
DELIVERY_ATTEMPTED_FAILED_WILL_TRY_AGAINshipments/in_delivery/DELIVERY_ATTEMPTED_FAILED_WILL_TRY_AGAINshipment_delivery_second_attempt
DELIVERY_ATTEMPTED_FORWARDING_TO_PICKUP_LOCATIONshipments/in_delivery/DELIVERY_ATTEMPTED_FORWARDING_TO_PICKUP_LOCATIONshipment_delivery_failed_forwarded_to_parcel_shop
DELIVERY_ATTEMPTED_LAST_ATTEMPTshipments/in_delivery/DELIVERY_ATTEMPTED_LAST_ATTEMPTshipment_delivery_failed
DELIVERY_ATTEMPTED_RECIPIENT_NOT_AT_HOMEshipments/in_delivery/DELIVERY_ATTEMPTED_RECIPIENT_NOT_AT_HOMEshipment_delivery_failed
DELIVERY_ATTEMPTEDshipments/in_delivery/DELIVERY_ATTEMPTEDshipment_delivery_failed
DELIVERY_LAPSEDshipments/in_delivery/DELIVERY_LAPSEDshipment_delivery_failed
DELIVERY_OPTION_REQUESTED_BY_RECEIVERshipments/in_delivery/DELIVERY_OPTION_REQUESTED_BY_RECEIVERshipment_delivery_failed
DELIVERY_SCHEDULED_IN_THE_FINAL_DELIVERY_DEPOTshipments/in_delivery/DELIVERY_SCHEDULED_IN_THE_FINAL_DELIVERY_DEPOTshipment_out_for_delivery
IN_DELIVERYshipments/in_delivery/IN_DELIVERYshipment_out_for_delivery
NO_DELIVERY_ATTEMPT_ON_ROUTEshipments/in_delivery/NO_DELIVERY_ATTEMPT_ON_ROUTEshipment_delivery_failed
OUT_FOR_DELIVERYshipments/in_delivery/OUT_FOR_DELIVERYshipment_out_for_delivery
PATCHEDshipments/in_delivery/PATCHEDshipment_out_for_delivery
SHIPMENT_ON_HOLD_IN_DELIVERY_CENTERshipments/in_delivery/SHIPMENT_ON_HOLD_IN_DELIVERY_CENTERshipment_out_for_delivery
SHIPMENT_ON_ITS_WAY_TO_PICKUP_LOCATIONshipments/in_delivery/SHIPMENT_ON_ITS_WAY_TO_PICKUP_LOCATIONshipment_out_for_delivery

Collect (collect)

Events when package is ready for pickup at parcel shops/lockers (6 events total):

Event NameRefEvent Group
ARRIVED_AT_PARCEL_LOCKERshipments/collect/ARRIVED_AT_PARCEL_LOCKERshipment_delivered_to_parcel_locker
ARRIVED_AT_PARCEL_SHOPshipments/collect/ARRIVED_AT_PARCEL_SHOPshipment_delivered_to_parcel_shop
ARRIVED_AT_POST_OFFICEshipments/collect/ARRIVED_AT_POST_OFFICEshipment_delivered_to_parcel_shop
See all collect events (6 total)
Event NameRefEvent Group
ARRIVED_AT_PARCEL_LOCKERshipments/collect/ARRIVED_AT_PARCEL_LOCKERshipment_delivered_to_parcel_locker
ARRIVED_AT_PARCEL_SHOPshipments/collect/ARRIVED_AT_PARCEL_SHOPshipment_delivered_to_parcel_shop
ARRIVED_AT_POST_OFFICEshipments/collect/ARRIVED_AT_POST_OFFICEshipment_delivered_to_parcel_shop
SUCCESSFULLY_DELIVERED_TO_NEIGHBORshipments/collect/SUCCESSFULLY_DELIVERED_TO_NEIGHBORshipment_delivered_to_neighbour
SUCCESSFULLY_DELIVERED_AND_LEFT_AT_LETTER_BOXshipments/collect/SUCCESSFULLY_DELIVERED_AND_LEFT_AT_LETTER_BOXshipment_delivered_to_letterbox
DELIVERY_ATTEMPTED_RECIPIENT_NOT_AT_HOME_CARD_LEFTshipments/collect/DELIVERY_ATTEMPTED_RECIPIENT_NOT_AT_HOME_CARD_LEFTshipment_delivery_failed

Delivered (delivered)

Events when package is successfully delivered (10 events total):

Event NameRefEvent Group
SUCCESSFULLY_DELIVEREDshipments/delivered/SUCCESSFULLY_DELIVEREDshipment_delivered
SUCCESSFULLY_COLLECTED_AT_PARCEL_LOCKERshipments/delivered/SUCCESSFULLY_COLLECTED_AT_PARCEL_LOCKERshipment_delivered_to_parcel_locker
SUCCESSFULLY_COLLECTED_AT_PARCEL_SHOPshipments/delivered/SUCCESSFULLY_COLLECTED_AT_PARCEL_SHOPshipment_delivered_to_parcel_shop
See all delivered events (10 total)
Event NameRefEvent Group
PARCEL_TRANSFERRED_TO_THIRD_PARTYshipments/delivered/PARCEL_TRANSFERRED_TO_THIRD_PARTYshipment_delivered
SUCCESSFULLY_COLLECTED_AT_PARCEL_LOCKERshipments/delivered/SUCCESSFULLY_COLLECTED_AT_PARCEL_LOCKERshipment_delivered_to_parcel_locker
SUCCESSFULLY_COLLECTED_AT_PARCEL_SHOPshipments/delivered/SUCCESSFULLY_COLLECTED_AT_PARCEL_SHOPshipment_delivered_to_parcel_shop
SUCCESSFULLY_COLLECTED_AT_POST_OFFICEshipments/delivered/SUCCESSFULLY_COLLECTED_AT_POST_OFFICEshipment_delivered_to_parcel_shop
SUCCESSFULLY_COLLECTEDshipments/delivered/SUCCESSFULLY_COLLECTEDshipment_picked_up
SUCCESSFULLY_DELIVERED_AND_CASH_ON_DELIVERY_COLLECTEDshipments/delivered/SUCCESSFULLY_DELIVERED_AND_CASH_ON_DELIVERY_COLLECTEDshipment_delivered
SUCCESSFULLY_DELIVERED_AND_LEFT_AT_DOORshipments/delivered/SUCCESSFULLY_DELIVERED_AND_LEFT_AT_DOORshipment_delivered
SUCCESSFULLY_DELIVERED_AND_PROOF_OF_DELIVERY_COLLECTEDshipments/delivered/SUCCESSFULLY_DELIVERED_AND_PROOF_OF_DELIVERY_COLLECTEDshipment_delivered
SUCCESSFULLY_DELIVEREDshipments/delivered/SUCCESSFULLY_DELIVEREDshipment_delivered
USER_SUCCESSFULLY_DELIVEREDshipments/delivered/USER_SUCCESSFULLY_DELIVEREDshipment_delivered

Delivery Failed (delivery_failed)

Events when delivery attempts fail (6 events total):

Event NameRefEvent Group
DELIVERY_ATTEMPTED_REJECTED_BY_ADDRESSEEshipments/delivery_failed/DELIVERY_ATTEMPTED_REJECTED_BY_ADDRESSEEshipment_refused_then_returned
SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_BASEshipments/delivery_failed/SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_BASEshipment_not_picked_up_then_returned
See all delivery_failed events (6 total)
Event NameRefEvent Group
DELIVERY_ATTEMPTED_REJECTED_BY_ADDRESSEEshipments/delivery_failed/DELIVERY_ATTEMPTED_REJECTED_BY_ADDRESSEEshipment_refused_then_returned
SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_BASEshipments/delivery_failed/SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_BASEshipment_not_picked_up_then_returned
SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_ORIGIN_COUNTRYshipments/delivery_failed/SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_ORIGIN_COUNTRYshipment_not_picked_up_then_returned
SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_SHOP_RETURNED_TO_BASEshipments/delivery_failed/SHIPMENT_NOT_PICKED_UP_FROM_PARCEL_SHOP_RETURNED_TO_BASEshipment_not_picked_up_then_returned
SHIPMENT_NOT_PICKED_UP_FROM_POST_OFFICE_RETURNED_TO_BASEshipments/delivery_failed/SHIPMENT_NOT_PICKED_UP_FROM_POST_OFFICE_RETURNED_TO_BASEshipment_not_picked_up_then_returned
SHIPMENT_NOT_PICKED_UP_RETURNED_TO_ORIGIN_COUNTRYshipments/delivery_failed/SHIPMENT_NOT_PICKED_UP_RETURNED_TO_ORIGIN_COUNTRYshipment_not_picked_up_then_returned

Returned (returned)

Events when packages are returned to sender (7 events total):

Event NameRefEvent Group
RETURN_IN_PROGRESSshipments/returned/RETURN_IN_PROGRESSshipment_failed_returned
RETURN_TO_SENDER_COMPLETEDshipments/returned/RETURN_TO_SENDER_COMPLETEDshipment_failed_returned
SHIPMENT_RETURNED_TO_SENDERshipments/returned/SHIPMENT_RETURNED_TO_SENDERshipment_failed_returned
See all returned events (7 total)
Event NameRefEvent Group
RETURN_IN_PROGRESSshipments/returned/RETURN_IN_PROGRESSshipment_failed_returned
RETURN_TO_SENDER_COMPLETEDshipments/returned/RETURN_TO_SENDER_COMPLETEDshipment_failed_returned
RETURN_TO_SENDER_FAILEDshipments/returned/RETURN_TO_SENDER_FAILEDshipment_failed_returned
SHIPMENT_REJECTED_RETURNING_TO_SENDERshipments/returned/SHIPMENT_REJECTED_RETURNING_TO_SENDERshipment_failed_returned
SHIPMENT_RETURNED_TO_SENDERshipments/returned/SHIPMENT_RETURNED_TO_SENDERshipment_failed_returned
SHIPMENT_RETURNING_TO_SENDERshipments/returned/SHIPMENT_RETURNING_TO_SENDERshipment_failed_returned
SHIPMENT_SUCCESSFULLY_RETURNED_TO_SENDERshipments/returned/SHIPMENT_SUCCESSFULLY_RETURNED_TO_SENDERshipment_failed_returned

Return Failed (return_failed)

Events when return shipments fail (1 event total):

Event NameRefEvent Group
DELIVERY_FAILED_SHIPMENT_DESTROYEDshipments/return_failed/DELIVERY_FAILED_SHIPMENT_DESTROYEDshipment_failed_returned

Missing/Lost Events

These events can occur in any phase when packages go missing:

Event NameRefEvent Group
SHIPMENT_LOST_IN_DELIVERYshipments/{phase}/SHIPMENT_LOST_IN_DELIVERYshipment_lost
SHIPMENT_LOST_IN_TRANSITshipments/{phase}/SHIPMENT_LOST_IN_TRANSITshipment_lost
SHIPMENT_LOSTshipments/{phase}/SHIPMENT_LOSTshipment_lost

Claim Events

Claim events are generated when customers create or update service requests.

Shipment Event Structure

Ref Pattern: claims/{event_name}

Event NameRefDescription
CLAIM_CREATEDclaims/createdNew claim submitted by customer
CLAIM_UPDATEDclaims/updatedClaim status or details changed

Event Groups

Event groups provide business-friendly names for external tools. Each group may contain multiple event names:

Shipment Event Groups

Event GroupDescriptionExample Event Names
shipment_pre_transitPackage prepared for shippingORDER_PROCESSED, PICKUP_SUCCESSFUL
shipment_in_transitPackage moving through networkDISPATCHED_FROM_SORTING_CENTER, ARRIVAL_AT_FINAL_DELIVERY_CENTER
shipment_carrier_delayCarrier-reported delaysDELAY_EXPECTED, DELAY_IN_TRANSPORT
shipment_damagedPackage damage reportedSHIPMENT_DAMAGED
shipment_out_for_deliveryPackage out for deliveryOUT_FOR_DELIVERY, IN_DELIVERY
shipment_deliveredSuccessful deliverySUCCESSFULLY_DELIVERED
shipment_delivered_all_eventsAll delivery variationsAll delivered phase events
shipment_delivered_to_neighbourDelivered to neighborSUCCESSFULLY_DELIVERED_TO_NEIGHBOR
shipment_delivered_to_letterboxDelivered to letterboxSUCCESSFULLY_DELIVERED_AND_LEFT_AT_LETTER_BOX
shipment_delivered_to_parcel_shopDelivered to pickup pointARRIVED_AT_PARCEL_SHOP, SUCCESSFULLY_COLLECTED_AT_PARCEL_SHOP
shipment_delivered_to_parcel_lockerDelivered to parcel lockerARRIVED_AT_PARCEL_LOCKER, SUCCESSFULLY_COLLECTED_AT_PARCEL_LOCKER
shipment_delivery_failedDelivery attempt failedDELIVERY_ATTEMPTED, DELIVERY_LAPSED
shipment_delivery_failed_address_issueAddress problemsDELIVERY_ATTEMPTED_ADDRESS_COULD_NOT_BE_FOUND
shipment_delivery_failed_forwarded_to_parcel_shopForwarded to pickupDELIVERY_ATTEMPTED_FORWARDING_TO_PICKUP_LOCATION
shipment_delivery_second_attemptReattempting deliveryDELIVERY_ATTEMPTED_FAILED_WILL_TRY_AGAIN
shipment_not_picked_up_then_returnedNot picked up, returnedSHIPMENT_NOT_PICKED_UP_FROM_PARCEL_LOCKER_RETURNED_TO_BASE
shipment_refused_then_returnedCustomer refused packageDELIVERY_ATTEMPTED_REJECTED_BY_ADDRESSEE
shipment_failed_returnedPackage returned to senderRETURN_TO_SENDER_COMPLETED
shipment_picked_upSuccessfully picked upSUCCESSFULLY_COLLECTED

Claim Event Groups

Event GroupDescription
claim_createdNew claim submitted
claim_updatedClaim status changed

Event Filtering

When listening to Karla events (e.g. webhooks), use the ref values in your enabled_events array:

All Events

{
"enabled_events": ["*"]
}

Specific Sources

{
"enabled_events": ["shipments", "claims"]
}

Phase-Based Filtering (Shipments Only)

{
"enabled_events": ["shipments/delivered", "shipments/in_delivery"]
}

Granular Event Filtering

{
"enabled_events": [
"shipments/delivered/SUCCESSFULLY_DELIVERED",
"shipments/in_delivery/OUT_FOR_DELIVERY",
"claims/created"
]
}

Common Business Use Cases

{
"enabled_events": [
"shipments/delivered",
"shipments/delivery_failed",
"shipments/in_transit/DELAY_EXPECTED",
"shipments/in_transit/SHIPMENT_DAMAGED",
"claims"
]
}

Event payload

All Karla events follow a consistent structure:

Standard Event Structure
{
"source": "shipments|campaigns",
"ref": "{source}/{phase|action|event_name}[/{event_name}]?",
"version": 1,
"triggered_at": "2024-01-29T14:48:47+00:00",
"event_data": {
// Event-specific data
},
"context": {
// Related entities and metadata
},
"shop_slug": "your-shop-slug",
"shop_id": "your-shop-uuid"
}

Event payload examples

Real event payloads you'll receive from Karla (e.g. via webhooks), organized by event type. These examples include full context data to help you understand the complete structure.

Shipment event

{
"source": "shipments",
"ref": "shipments/delivered/DEPARTURE_FROM_TRANSPORT_HUB",
"version": 1,
"triggered_at": "2024-01-29T14:48:47+00:00",
"event_data": {
"shipment_id": "6be0ea64-fe5e-478e-aee5-f9f7bbc53804",
"carrier_reference": "dhl",
"event_name": "DEPARTURE_FROM_TRANSPORT_HUB",
"phase": "delivered",
"tracking_number": "0123456789",
"tracking_url": "https://example.com/tracking",
"updated_at": "2024-01-29T14:48:47+00:00"
},
"context": {
"order": {
"order_number": "0000001",
"order_name": null,
"order_placed_at": "2025-06-18T22:00:04.264555+00:00",
"total_order_price": 123.456,
"shipping_price": 4.99,
"sub_total_price": 118.457,
"discount_price": 30,
"products": [
{
"title": "Delivery s*cks",
"quantity": 2,
"price": 1,
"size": "S",
"images": [
{
"src": "https://storage.googleapis.com/karla-merchants-metadata/gokarla/Karla_SINGLE_PRODUCT.png",
"alt": "Delivery socks"
}
],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": [],
"shipment_id": null,
"type": "product"
},
{
"title": "Magic item",
"quantity": 3,
"price": 4,
"size": null,
"images": [],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": [],
"shipment_id": null,
"type": "product"
}
],
"discounts": [],
"email_id": null,
"address": {
"address_line_1": "Gormannstr.",
"address_line_2": "19a",
"city": "Berlin",
"country": "Germany",
"country_code": null,
"name": "John Doe",
"phone": "123456789",
"province": "Berlin",
"province_code": null,
"street": "Gormannstr. 19a",
"zip_code": "01234",
"company": null
},
"currency": "EUR",
"segments": null,
"weight": null,
"external_customer_id": null,
"order_status_url": null
},
"customer": {
"external_id": null,
"email": null,
"first_name": null,
"last_name": null,
"full_name": "John Doe",
"phone": "123456789"
},
"shipments": [
{
"uuid": "6be0ea64-fe5e-478e-aee5-f9f7bbc53804",
"updated_at": "2024-01-29T14:48:47+00:00",
"events": [
{
"event_key": "H20",
"time": "2023-10-09T15:31:43+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "delivered",
"event_name": "SUCCESSFULLY_COLLECTED",
"event_strings": {
"event_status": "Nice! You've collected your parcel.",
"list_label": "Collected",
"header_headline": "COLLECTED",
"header_title": "Home sweet home",
"header_subtitle": "You have picked it up."
},
"language": "en"
},
{
"event_key": "G24",
"time": "2023-10-09T08:20:20+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "in_delivery",
"event_name": "IN_DELIVERY",
"event_strings": {
"event_status": "Get ready! Your package is about to arrive.",
"list_label": "Arriving 25.09",
"header_headline": "ARRIVING",
"header_title": "25.09",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "E23",
"time": "2023-10-08T13:50:40+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "in_transit",
"event_name": "DEPARTURE_FROM_TRANSPORT_HUB",
"event_strings": {
"event_status": "Moving on! Your parcel has left the transport hub.",
"list_label": "Arriving 25.09",
"header_headline": "IN TRANSIT",
"header_title": "25.09",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "E21",
"time": "2023-10-08T10:45:30+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "in_transit",
"event_name": "ARRIVAL_AT_TRANSPORT_HUB",
"event_strings": {
"event_status": "Your parcel arrived at the transport hub and is getting ready for the next leg.",
"list_label": "Arriving 25.09",
"header_headline": "IN TRANSIT",
"header_title": "25.09",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "A12",
"time": "2023-10-07T12:01:10+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "order_processed",
"event_name": "ORDER_PROCESSED",
"event_strings": {
"event_status": "Your parcel has been packed and is ready to be shipped.",
"list_label": "packed",
"header_headline": "PACKED",
"header_title": "Your parcel has been packed",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "A10",
"time": "2023-10-06T18:58:15+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "order_created",
"event_name": "ORDER_CREATED",
"event_strings": {
"event_status": "You've placed an online order.",
"list_label": "Order placed",
"header_headline": "ORDER PLACED",
"header_title": "Thanks for shopping!",
"header_subtitle": ""
},
"language": "en"
}
],
"estimated_arrival": {
"start": "2023-09-23T12:00:00+00:00",
"end": "2023-09-25T12:00:00+00:00",
"time_prediction": "25.09",
"language": "en"
},
"carrier": {
"tracking_number": "0123456789",
"carrier_reference": "dhl",
"tracking_url": null
},
"flag": "normal",
"pickup": {
"type": "neighbor",
"name": "pickup_name",
"address": {
"address_line_1": "Gormannstr. 19a 01234 Berlin",
"address_line_2": null,
"city": null,
"country": null,
"country_code": null,
"name": null,
"phone": null,
"province": null,
"province_code": null,
"street": "Gormannstr. 19a 01234 Berlin",
"zip_code": null,
"company": null
},
"url": "pickup_url",
"opening_hours": "opening_hours",
"date_to": "2023-09-26T12:00:00+00:00"
},
"products": [
{
"title": "Delivery s*cks",
"quantity": 2,
"price": 1,
"size": "S",
"images": [
{
"src": "https://storage.googleapis.com/karla-merchants-metadata/gokarla/Karla_SINGLE_PRODUCT.png",
"alt": "Delivery socks"
}
],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": []
},
{
"title": "Magic item",
"quantity": 3,
"price": 4,
"size": null,
"images": [],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": []
}
]
}
],
"claims": []
},
"shop_slug": "gokarla",
"shop_id": "7af5390b-1425-4af6-a00d-e5f5184a7b51"
}

Claim Event

{
"source": "claims",
"ref": "claims/created",
"version": 1,
"triggered_at": "2023-09-23T12:00:00+00:00",
"event_data": {
"resolution_preference": "refund",
"reason": "partial_damage",
"status": "pending",
"description": "Package was damaged on the right side",
"customer_signature_image_url": "https://cdn.gokarla.io/12d6cceb-efa5-4bbc-a557-a6d31ed9f68b/df4f85de-1580-4c33-9178-cee6729e010a.png",
"selected_items": [
{
"sku": "ABCD3",
"title": "Product Title",
"quantity": 1,
"image_urls": []
}
],
"image_urls": [
"https://cdn.gokarla.io/cdn-cgi/imagedelivery/dXeULRC3hlKS2IJjZmVx9Q/74c5c049-79b5-44b9-7972-672af41e8e00/claim"
],
"claim_id": "38fdc365-7de9-4313-afbd-0ed23717c5e0",
"event_name": "created",
"created_at": "2023-09-23T12:00:00+00:00",
"updated_at": "2023-09-23T12:00:00+00:00",
"event_group": "claim_created"
},
"context": {
"order": {
"order_number": "0000001",
"order_name": null,
"order_placed_at": "2023-03-17T09:51:41+00:00",
"total_order_price": 123.456,
"shipping_price": 4.99,
"sub_total_price": 118.457,
"discount_price": 30,
"products": [
{
"title": "Delivery s*cks",
"variant_title": null,
"quantity": 2,
"price": 1,
"size": "S",
"images": [
{
"src": "https://storage.googleapis.com/karla-merchants-metadata/gokarla/Karla_SINGLE_PRODUCT.png",
"alt": "Delivery socks"
}
],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": [],
"shipment_id": null,
"type": "product"
},
{
"title": "Magic item",
"variant_title": null,
"quantity": 3,
"price": 4,
"size": null,
"images": [],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": [],
"shipment_id": null,
"type": "product"
}
],
"discounts": [],
"email_id": "[email protected]",
"address": {
"address_line_1": "Gormanstr.",
"address_line_2": "19a",
"city": "Berlin",
"country": "Germany",
"country_code": "DE",
"name": null,
"phone": null,
"province": null,
"province_code": null,
"street": null,
"zip_code": "10119",
"company": null
},
"currency": "EUR",
"segments": null,
"weight": null,
"external_customer_id": "123456789",
"order_status_url": "https://shop.gokarla.io/1234067358984/orders/aabbcc/authenticate?key=secret"
},
"customer": {
"external_id": "123456789",
"email": "[email protected]",
"first_name": null,
"last_name": null,
"full_name": null,
"phone": null
},
"shipments": [
{
"uuid": "6be0ea64-fe5e-478e-aee5-f9f7bbc53804",
"updated_at": "2024-01-29T14:48:47+00:00",
"events": [
{
"event_key": "H20",
"time": "2023-10-09T15:31:43+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "delivered",
"event_name": "SUCCESSFULLY_COLLECTED",
"event_strings": {
"event_status": "Nice! You've collected your parcel.",
"list_label": "Collected",
"header_headline": "COLLECTED",
"header_title": "Home sweet home",
"header_subtitle": "You have picked it up."
},
"language": "en"
},
{
"event_key": "G24",
"time": "2023-10-09T08:20:20+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "in_delivery",
"event_name": "IN_DELIVERY",
"event_strings": {
"event_status": "Get ready! Your package is about to arrive.",
"list_label": "Arriving 25.09",
"header_headline": "ARRIVING",
"header_title": "25.09",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "E23",
"time": "2023-10-08T13:50:40+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "in_transit",
"event_name": "DEPARTURE_FROM_TRANSPORT_HUB",
"event_strings": {
"event_status": "Moving on! Your parcel has left the transport hub.",
"list_label": "Arriving 25.09",
"header_headline": "IN TRANSIT",
"header_title": "25.09",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "E21",
"time": "2023-10-08T10:45:30+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "in_transit",
"event_name": "ARRIVAL_AT_TRANSPORT_HUB",
"event_strings": {
"event_status": "Your parcel arrived at the transport hub and is getting ready for the next leg.",
"list_label": "Arriving 25.09",
"header_headline": "IN TRANSIT",
"header_title": "25.09",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "A12",
"time": "2023-10-07T12:01:10+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "order_processed",
"event_name": "ORDER_PROCESSED",
"event_strings": {
"event_status": "Your parcel has been packed and is ready to be shipped.",
"list_label": "packed",
"header_headline": "PACKED",
"header_title": "Your parcel has been packed",
"header_subtitle": ""
},
"language": "en"
},
{
"event_key": "A10",
"time": "2023-10-06T18:58:15+00:00",
"timezone": "UTC",
"location": null,
"additional_info": null,
"phase": "order_created",
"event_name": "ORDER_CREATED",
"event_strings": {
"event_status": "You've placed an online order.",
"list_label": "Order placed",
"header_headline": "ORDER PLACED",
"header_title": "Thanks for shopping!",
"header_subtitle": ""
},
"language": "en"
}
],
"estimated_arrival": {
"start": "2023-09-23T12:00:00+00:00",
"end": "2023-09-25T12:00:00+00:00",
"time_prediction": "25.09",
"language": "en"
},
"carrier": {
"tracking_number": "0123456789",
"carrier_reference": "dhl",
"tracking_url": "https://example.com/tracking"
},
"flag": "normal",
"pickup": {
"type": "neighbor",
"name": "pickup_name",
"address": {
"address_line_1": "Gormannstr. 19a 01234 Berlin",
"address_line_2": null,
"city": null,
"country": null,
"country_code": null,
"name": null,
"phone": null,
"province": null,
"province_code": null,
"street": "Gormannstr. 19a 01234 Berlin",
"zip_code": null,
"company": null
},
"url": "pickup_url",
"opening_hours": "opening_hours",
"date_to": "2023-09-26T12:00:00+00:00"
},
"products": [
{
"title": "Delivery s*cks",
"variant_title": null,
"quantity": 2,
"price": 1,
"size": "S",
"images": [
{
"src": "https://storage.googleapis.com/karla-merchants-metadata/gokarla/Karla_SINGLE_PRODUCT.png",
"alt": "Delivery socks"
}
],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": []
},
{
"title": "Magic item",
"variant_title": null,
"quantity": 3,
"price": 4,
"size": null,
"images": [],
"sku": null,
"weight": null,
"tax_lines": [],
"bundled_products": []
}
]
}
],
"claims": []
},
"shop_slug": "gokarla",
"shop_id": "7af5390b-1425-4af6-a00d-e5f5184a7b51"
}