Item Events

🔐

Authentication

✔️ Application API Scope

✔️ Storefront API Scope


Response Body Definitions

NameTypeDescriptionExample
customerstringCustomer ID"00026001"
merchantstringMerchant ID"ac4f7938383a11e89ecbbc764e1107f2"
productstringProduct ID"0070000693"
paymentstringPayment record ID"070001bc02fd11e99542bc764e1043b0"
shipping_addressstringShipping address record ID"66c25cd0564011e9abc5bc764e107990"
offerstringOffer ID"a748aa648ac811e8af3bbc764e106cf4"
subscription_typestringSubscription Type"Replenish"
componentsstringLegacy Bundle components"product_id_1,product_id_2"
componentsarray of objectsNew Bundle componentsSee example below
extra_datastringRaw JSON string that should be JSON.parse() as key/value store for any extra informationSee example below
public_idstringSubscription ID"f9cb2f93e1c845eb9de9eff46ddb3cbf"
product_attributestring"null"
quantityintegerNumber of items21
pricestringPrice"12.99"
frequency_daysintegerOrder placement interval in days42
reminder_daysintegerDays before order placement to email reminder (minimum of 5)42
everyintegerNumber of periods6
every_periodintegerType of period3
start_datestringDate of subscription start, in format YYYY-MM-DD"2019-07-21"
cancelledstringDate of subscription cancellation; null=not cancelled"null"
cancel_reasonstringPipe-delimited cancel reason code and cancel reason details"4|Overstocked"
cancel_reason_codestringCancel reason code"4"
iterationstringDeprecated
sequencestringDeprecated
session_idstringSession ID, obtained from og_session_id cookie"ac4f7938383a11e89ecbbc764e1107f2.896371.1539022086"
merchant_order_idstringOrder ID in your system"301617"
customer_repstringDeprecated
clubstringDeprecated
createdstringDate created"2017-02-29 12:00:00"
updatedstringDate updated"2017-02-29 12:00:00"
livebooleanTrue=active subscription; False=inactive subscriptiontrue
prepaid_subscription_contextobjectPrepaid information - Returned only if prepaid is enabledSee example below

Example Data

{
  "id": "mmmm4444nnnn3333pppp",
  "type": "item.create",
  "created": 1622589211,
  "data": {
    "object": {
      "type": "item",
      "merchant": "aaaa1111bbbb2222cccc",
      "public_id": "zzzz9999yyyy8888xxxx",
      "customer": "m1234576",
      "product": "SKUabc",
      "order": "1234e74444dd115555d8bc7cccc043b0",
      "subscription": "bc7cccc043b01234e74444155",
      "offer": "a748aa648ac811e8af3bbc764e106cf4",
      "quantity": 1,
      "price": "20.00",
      "total_price": "20.00",
      "first_placed": null,
      "components": [
        {"product": "product_1"},
        {"product": "product_2"}
      ]
    }
  }
}

Components Array Example (New Bundle)

[
  {
    "public_id": "79d2dc76245111eeb185acde48001122",
    "quantity": 1,
    "product": "0070067690"
  },
  {
    "public_id": "7eeaa504245111eeb185acde48001122",
    "quantity": 3,
    "product": "0070067691"
  }
]

Component Object Structure:

  • public_id: string
  • quantity: integer
  • product: string

Extra Data Example

{
  "some": "extra",
  "fields": "here"
}

Prepaid Subscription Context Example

{
  "prepaid_orders_remaining": 0,
  "prepaid_orders_per_billing": 3,
  "renewal_behavior": "autorenew",
  "last_renewal_revenue": 100.8,
  "prepaid_origin_merchant_order_id": "#3082"
}

Or empty object: {}

Item Event Types

item.create

Triggered when an item is created. This event will only occur once for an item, but can occur many times for the associated subscription.

item.change_quantity

Triggered when the quantity of an item is modified. This event can be triggered more than once for an item.

item.remove

Triggered when the item is removed from an order. When this happens, it is deleted from the order. If the item was associated with an active subscription, a corresponding item.create event will be generated. This event will only occur once for an item, but can occur many times for the associated subscription.

item.item_subscribe

Triggered when a subscription is created from an item that originally was a "one-time" item - an item in an order that customer had not subscribed to. This event will only occur once for an item.

item.update_price

Triggered when the price of an item is updated. This event can be triggered more than once for an item.

NOTE: This event can only be triggered when the update item price API endpoint is used.

item.successfully_placed

Triggered when the associated order's placement response indicates it was processed successfully and GMV was realized. This event will only occur once for an item, but can occur many times for the associated subscription.

Related: order.success event

item.out_of_stock

Triggered when an item is detected as not having enough inventory to be fulfilled. The Ordergroove application moves the item to be attempted for processing the next day. The payload provides the order the item was moved to.

NOTE: This retry mechanism occurs a limited number of times. At the end of the retry cycle the item is deleted. This event is not triggered at the end of the retry cycle.