Skip to content
Get API key (opens in a new tab)

order.fulfilled

Sent when an order's fulfillment status reaches FULFILLED or a later status, with the order, its customer and their loyalty standing.

Use it to pass shipped orders to an ERP, a warehouse system or a marketing tool.

When it fires

  • When an order's fulfillment_status rises from PENDING or PARTIALLY_FULFILLED to FULFILLED or DELIVERED, including an order that already has that status when Cevoid first receives it.
  • If fulfillment is reopened and the order is fulfilled again, it fires again, as a new event.
  • An order that goes straight to DELIVERED sends both this event and order.delivered.
  • Orders imported as history (ingestion_mode: "historical") start no Flows. To send events for past orders, choose Enroll historical orders in the menu of an active Flow: you get one event per order.
  • profile, points and tier are missing when the order is linked to no profile.

Receive it

In Settings โ†’ Flows, choose Create flow โ†’ Forward event โ†’ Webhook and pick the Order fulfilled trigger. See Set up a webhook.

The Content upload request, Product review request and Company review request actions can also send to a webhook from this trigger. Their data is different from the payload below.

Payload

Example payload
{
  "created_at": "2026-08-03T11:58:05.000Z",
  "data": {
    "order": {
      "buyer": {
        "email": "astrid.lindqvist@example.com",
        "external_customer_id": "7391056823401",
        "profile_id": "prf_c4n8x2q1m5v7rt"
      },
      "cancelled": false,
      "created_at": "2026-07-30T14:21:12.000Z",
      "currency": "SEK",
      "financial_status": "PAID",
      "fulfilled_at": "2026-08-03T11:58:00.000Z",
      "fulfillment_status": "FULFILLED",
      "id": "ord_7k2m4n8p5x9qwe",
      "ingestion_mode": "live",
      "lines": [
        {
          "discount": 0,
          "external_line_id": "14829301776434",
          "fulfillment_status": "FULFILLED",
          "product_id": "8104729350194",
          "quantity": 1,
          "refund": 0,
          "returned_units": 0,
          "sku": "LINEN-SHIRT-M",
          "unit_price": 1190,
          "variant_id": "44637192855602"
        }
      ],
      "market_id": "mar_s3k8w1n5q2x7ye",
      "money": {
        "discount": 0,
        "refunded": 0,
        "shipping": 100,
        "sub_total": 1190,
        "tax": 258,
        "total": 1290
      },
      "order_number": "#1043",
      "paid_at": "2026-07-30T14:21:10.000Z",
      "placed_at": "2026-07-30T14:21:09.000Z",
      "source": {
        "external_order_id": "5832917458994",
        "type": "SHOPIFY"
      },
      "updated_at": "2026-08-03T11:58:03.000Z"
    },
    "points": {
      "expiring_30d": 0,
      "expiring_60d": 200,
      "expiring_90d": 200,
      "lifetime_earned": 3870,
      "lifetime_spent": 2450,
      "next_expiration_at": "2026-09-30T23:59:59.999Z",
      "pending": 130,
      "spendable": 1290,
      "total": 1420
    },
    "profile": {
      "country": "SE",
      "created_at": "2026-03-14T08:12:44.000Z",
      "email": "astrid.lindqvist@example.com",
      "external_id": "7391056823401",
      "first_name": "Astrid",
      "id": "prf_c4n8x2q1m5v7rt",
      "language": "sv",
      "last_name": "Lindqvist",
      "name": "Astrid Lindqvist",
      "name_display_format": "FIRST_LAST_INITIAL",
      "updated_at": "2026-08-03T11:58:02.000Z"
    },
    "tier": {
      "current_tier": {
        "expires_at": "2026-12-31T23:59:59.999Z",
        "id": "tier_0m3v8k2q9x1sdf",
        "name": "Silver"
      },
      "next_tier": {
        "entry_rewards": [
          {
            "title": "15% off your next order",
            "type": "DISCOUNT_CODE"
          }
        ],
        "id": "tier_5p7w2n4k8c1zyh",
        "milestones": [
          {
            "current": 1420,
            "percent_complete": 71,
            "remaining": 580,
            "required": 2000,
            "type": "POINTS"
          }
        ],
        "name": "Gold",
        "perks": [
          {
            "value": "Free shipping on every order"
          }
        ]
      }
    }
  },
  "id": "4f1c9a2e-7b3d-8e61-9c05-2a8d6f4b1e73",
  "origin": {
    "flow": {
      "id": "wfl_3p9v6d2s8k1mqa",
      "name": "Send fulfilled orders to ERP"
    }
  },
  "type": "order.fulfilled",
  "version": 1
}
Show all 115 linesShow fewer lines
typestringrequired

The event type, always order.fulfilled.

idstring<uuid>required

Unique event ID, the same value as the webhook-id header. Retries keep it; a replay gets a new one.

created_atstring<date-time>required

When the delivery was scheduled to send, in ISO 8601 UTC: for a Flow, when its webhook action ran, after any Wait step. Retries and replays keep it.

versionintegerrequired

Payload version, currently 1.

originobject

Why this destination received the event. Absent when no Flow sent it.

origin properties
flowobjectrequired

The Flow that sent the event.

flow properties
idstringrequired

Flow ID.

namestringrequired

Flow name at the time of the delivery.

dataobjectrequired

The order and its customer.

data properties
orderobject

The order, as GET /v2/orders/{id} returns it.

order properties
idstringrequired

Cevoid order ID.

ingestion_modestring

Processing mode of the latest order write. Historical mode suppresses automatic Flows. Live mode allows new lifecycle transitions to trigger Flows. Absent for orders without a live or historical mode. One of live, historical.

sourceobjectrequired
source properties
typestring

System that owns this order. Absent when the order has no connected source. One of SHOPIFY, WOOCOMMERCE, MYSTORE, NORDISK_EHANDEL, VISKAN, CENTRA, PUBLIC_API, OTHER.

connection_idstring

Stable source namespace for the order. Absent when the order has no connected source.

external_order_idstringrequired

Order identifier in the source system.

order_numberstring

Customer-facing order number.

buyerobject

Buyer identity. Absent when the order carries no buyer information.

buyer properties
emailstring

Buyer email as supplied by the source system.

external_customer_idstring

Customer identifier in the source system.

profile_idstring

Cevoid profile ID. Absent when no profile is linked to the order.

placed_atstring<date-time>required

ISO 8601 timestamp when the order was placed.

currencystringrequired

Three-letter uppercase ISO currency code.

moneyobjectrequired
money properties
totalnumberrequired

Current declared order total.

sub_totalnumberrequired

Current merchandise subtotal.

discountnumber

Current order-level discount total.

taxnumber

Current order-level tax total.

shippingnumber

Current order-level shipping total.

refundednumber

Cumulative refunded amount.

fulfillment_statusstringrequired

Current order fulfillment state. One of PENDING, PARTIALLY_FULFILLED, FULFILLED, DELIVERED.

financial_statusstringrequired

Current order payment state. One of PENDING, PAID, PARTIALLY_REFUNDED, REFUNDED.

fulfilled_atstring<date-time>

ISO 8601 timestamp when the order was fulfilled.

delivered_atstring<date-time>

ISO 8601 timestamp when the order was delivered.

cancelledbooleanrequired

Whether the order is cancelled.

cancelled_atstring<date-time>

ISO 8601 timestamp when the order was cancelled.

paid_atstring<date-time>

ISO 8601 timestamp when the order was paid.

last_refunded_atstring<date-time>

ISO 8601 timestamp of the most recent refund.

market_idstring

Cevoid market ID.

linesobject[]required
lines[] properties
external_line_idstringrequired

Stable line identifier within the source order.

product_idstring

Product identifier in the source catalog. Absent when the line names no product.

variant_idstring

Variant identifier in the source catalog.

skustring

Merchant SKU snapshot.

quantityintegerrequired

Absolute ordered quantity.

unit_pricenumberrequired

Price per unit in the order currency.

discountnumber

Discount allocated to this line.

refundnumber

Cumulative amount refunded for this line.

returned_unitsinteger

Absolute number of returned units.

fulfillment_statusstringrequired

Current fulfillment state for this line. One of PENDING, PARTIALLY_FULFILLED, FULFILLED, DELIVERED.

delivered_atstring<date-time>

ISO 8601 timestamp when this line was delivered.

removed_atstring<date-time>

Time the line was removed from the order.

created_atstring<date-time>required

ISO 8601 timestamp when Cevoid created the order.

updated_atstring<date-time>required

ISO 8601 timestamp when Cevoid last updated the order.

removed_atstring<date-time>

Time the order was deleted.

profileobject

The profile of the customer who placed the order. Absent when no profile is linked.

profile properties
idstringrequired

Cevoid profile ID.

external_idstring

Identifier this profile carries in the workspace source system, when known.

namestring

Display name of the profile.

first_namestring

First name of the profile.

last_namestring

Last name of the profile.

emailstring

Email address for the profile.

avatar_urlstring

Profile image URL.

countrystring

Country code associated with the profile.

languagestring

Preferred language code associated with the profile.

locationstring

Free-form location associated with the profile.

social_instagram_handlestring

Instagram handle associated with the profile.

social_tiktok_handlestring

TikTok handle associated with the profile.

social_x_handlestring

X handle associated with the profile.

birthdaystring<date>

Birthday in YYYY-MM-DD format.

name_display_formatstring

Preferred format for displaying the profile name. One of FULL, FIRST_LAST_INITIAL, FIRST, ANONYMOUS.

biostring

Profile biography text.

notesstring

Internal notes about the profile.

created_atstring<date-time>required

ISO 8601 timestamp when the profile was created.

updated_atstring<date-time>required

ISO 8601 timestamp when the profile was last updated.

pointsobject

The profile's loyalty points. Only for workspaces with Loyalty, and only when the profile is a member.

points properties
totalnumberrequired

Total active and pending points.

spendablenumberrequired

Active points available to spend.

pendingnumberrequired

Earned points not active yet.

expiring_30dnumberrequired

Points expiring within 30 days.

expiring_60dnumberrequired

Points expiring within 60 days.

expiring_90dnumberrequired

Points expiring within 90 days.

lifetime_earnednumberrequired

Points earned over the membership lifetime.

lifetime_spentnumberrequired

Points spent over the membership lifetime.

next_expiration_atstring<date-time>

Earliest upcoming active-points expiration.

tierobject

The profile's tier standing. Only for workspaces with Loyalty, and only when the profile is a member.

tier properties
current_tierobject | nullrequired

The member's current tier; null without one.

current_tier properties
idstringrequired

Cevoid tier ID.

namestringrequired

Display name of the tier.

icon_urlstring

Optional icon representing the tier.

expires_atstring<date-time>

When the current tier expires, if tier evaluations expire.

next_tierobject | nullrequired

The next tier the member can reach; null when there is none.

next_tier properties
idstringrequired

Cevoid tier ID.

namestringrequired

Display name of the tier.

icon_urlstring

Optional icon representing the tier.

milestonesobject[]required

Progress required for the next tier.

milestones[] properties
typestringrequired

Metric used to qualify for the next tier. One of POINTS, AMOUNT_SPENT, NUMBER_OF_PURCHASES.

requirednumberrequired

Required amount for the next tier. AMOUNT_SPENT values use major currency units.

currentnumberrequired

Current progress. AMOUNT_SPENT values use major currency units.

remainingnumberrequired

Remaining amount. AMOUNT_SPENT values use major currency units.

percent_completenumberrequired

Progress percentage, capped at 100.

entry_rewardsobject[]required

Rewards granted at the next tier.

entry_rewards[] properties
typestringrequired

Reward type granted when the tier is reached.

titlestringrequired

Human-readable reward title.

icon_urlstring

Optional icon representing the reward.

perksobject[]required

Perks associated with the next tier.

perks[] properties
valuestringrequired

Human-readable perk text.