Skroutz API Access Application no longer accepts requests.

Webhook Edit the file on GitHub

Smart Cart webhook allows Skroutz Merchants to automatically receive order details to their platform when a new Smart Cart order is placed or an existing one is updated.

You may find a high level overview of the service and descriptive guides for its activation in the merchant support guidelines.

Table of Contents

Setup

In order to be able to use the webhook, a webhook URL should be registered by the merchant from within Smart Cart settings page in merchant's panel (Merchants > Υπηρεσίες > Έξυπνο Καλάθι).

The webhook URL should match the shop's domain and it should follow secure HTTP (HTTPS)

Webhook URL example
Shop URL Webhook URL
https://shop.gr https://shop.gr/smart_cart_orders

Webhook requests

An HTTP POST request is sent to the predefined webhook URL once an event has been triggered.

Handling failures / retries

Any failed request (including server timeouts or non -200 responses) would be retried automatically within the next 15 minutes. There is a retry limit of 3 requests in total for every order/event.

The merchant can also trigger sending (or retrying the latest) an order webhook request at any time from within the order page.

The expected request payload would be the same in both scenarios.

The anatomy of a request

Request
POST {webhook_url}
Request headers
Header Value
Content-Type application/json: charset=utf-8
User-Agent Skroutz OrderNotifier v1
Expected request response
200

Webhook events

The available webhook events for which a request is performed are:

  • new order events
  • order update events

New order

A new order webhook request is triggered upon the placement of a new order.

Order updates

An order update event is triggered upon the update of an order. As of right now, an update event notification is sent for the following cases:

  • When an order is cancelled (either by the user or our support team).
  • When an order is extended (allowing more time to handle the order).
  • When an order's courier voucher is created (for the associated shipment).

Request payload

Name Type Value Description
event_type String "new_order" / "order_updated" Order event type
event_time Date String in format
YYYY-MM-DDTHH:MM:SS+HH:M
  Event creation time
order Object   Order details
changes Object   Order changes with old and new values (optional)

Order changes object

Name Type Value Description
state Object { "old": "open", "new": "cancelled" } The state changed values (optional)
expires_at Object { "old": "2019-11-02T13:15:43+02:00", "new": "2019-11-04T13:15:00+02:00" } The order's current expiration time changes (optional)
dispatch_until Object { "old": "2019-11-03T12:00:00+02:00", "new": "2019-11-04T18:00:00+02:00" } The order's current time until dispatching changes (optional)
courier_voucher Object { "old": null, "new": "https://b.scdn.gr/path-to/voucher.pdf" } The order's shipment courier voucher URL (optional)

The order object included in webhook payload is the sames as the one when retrieving a single order via the orders API.

Order object

Name Type Value Description
code String   Order code
state String "open" / "cancelled" Order state
comments String   Order comments
courier_voucher String   Order's shipment courier voucher URL
line_items Array   Order line items (products)
created_at Date String in format
YYYY-MM-DDTHH:MM:SS+HH:M
  Order creation date
expires_at Date String in format
YYYY-MM-DDTHH:MM:SS+HH:M
  Order expiration date
dispatch_until Date String in format
YYYY-MM-DDTHH:MM:SS+HH:M
  Order maximum dispatch date

Order line items array

Name Type Description
line_items[_].id String Unique item id
line_items[_].shop_uid String Item id in shop
line_items[_].product_name String Item product name
line_items[_].quantity Integer Item quantity
line_items[_].size Object Item size values (optional)
line_items[_].unit_price Double Price per item in euros (VAT-included)
line_items[_].total_price Double Total item price in euros: unit_price * quantity

Line item size

Name Type Value Description
line_items[_].size.label String "Νούμερο" / "Μέγεθος" / "Ηλικία" Item size label
line_items[_].size.value String   Item size value
line_items[_].size.shop_value String   Item original size as provided by the shop
Payload Examples

Example 1

{
  "event_type": "new_order",
  "event_time": "2019-10-29T10:39:23+02:00",
  "order": {
    "code": "191029-5130474",
    "state": "open",
    "comments": "Παράδοση στο γραφείο",
    "courier_voucher": null,
    "line_items": [
      {
        "id": "l39vKqxqwe",
        "shop_uid": "100",
        "product_name": "L'Oreal Professionel Salon Steam Pod V2 White",
        "quantity": 2,
        "unit_price": 10.40,
        "total_price": 20.80
      },
      {
        "id": "l39vKqxqh2",
        "shop_uid": "10",
        "product_name": "Paul Mitchell Ultimate Color Repair 200ml",
        "quantity": 1,
        "unit_price": 25,
        "total_price": 25
      }
    ],
    "created_at": "2019-10-29T10:39:23+02:00",
    "expires_at": "2019-10-29T16:39:23+02:00",
    "dispatch_until": "2019-10-30T15:00:00+02:00"
  }
}
{
  "event_type": "new_order",
  "event_time": "2019-10-29T10:39:23+02:00",
  "order": {
      "code": "191025-0111363",
      "state": "open",
      "comments": "",
      "courier_voucher": null,
      "line_items": [
        {
          "id": "l39vKqzp2a",
          "shop_uid": "405753",
          "product_name": "adidas Perormance Badge of Sport Swimsuit PS/GS ( DQ3375 )",
          "quantity": 2,
          "size": {
              "label": "Ηλικία",
              "value": "14 χρονών",
              "shop_value": "12-14"
          },
          "unit_price": 17.99,
          "total_price": 35.98
        },
        {
          "id": "l39vKqzpll",
          "shop_uid": "10",
          "product_name": "Paul Mitchell Ultimate Color Repair 200ml",
          "quantity": 1,
          "unit_price": 25,
          "total_price": 25
        }
      ],
      "created_at": "2019-10-25T12:25:22+03:00",
      "expires_at": "2019-10-29T09:25:22+02:00",
      "dispatch_until": "2019-10-29T18:00:00+02:00"
  }
}

Example 3 (cancellation)

{
  "event_type": "order_updated",
  "event_time": "2019-10-29T10:39:23+02:00",
  "order": {
    "code": "191029-5130474",
    "state": "cancelled",
    "comments": "Παράδοση στο γραφείο",
    "courier_voucher": null,
    "line_items": [
      {
        "id": "l39vKqwezt",
        "shop_uid": "100",
        "product_name": "L'Oreal Professionel Salon Steam Pod V2 White",
        "quantity": 2,
        "unit_price": 10.40,
        "total_price": 20.80
      },
      {
        "id": "l39vKqzpll",
        "shop_uid": "10",
        "product_name": "Paul Mitchell Ultimate Color Repair 200ml",
        "quantity": 1,
        "unit_price": 25,
        "total_price": 25
      }
    ],
    "created_at": "2019-10-29T10:39:23+02:00",
    "expires_at": "2019-10-29T16:39:23+02:00",
    "dispatch_until": "2019-10-30T15:00:00+02:00"
  },
  "changes": {
    "state": {
      "old": "open",
      "new": "cancelled"
    }
  }
}

Example 4 (extension)

{
  "event_type": "order_updated",
  "event_time": "2019-10-29T10:39:23+02:00",
  "order": {
    "code": "191029-5130474",
    "state": "open",
    "comments": "Παράδοση στο γραφείο",
    "courier_voucher": null,
    "line_items": [
      {
        "id": "qw3rtyab34",
        "shop_uid": "100",
        "product_name": "L'Oreal Professionel Salon Steam Pod V2 White",
        "quantity": 2,
        "unit_price": 10.40,
        "total_price": 20.80
      },
      {
        "id": "l39vKqzpll",
        "shop_uid": "10",
        "product_name": "Paul Mitchell Ultimate Color Repair 200ml",
        "quantity": 1,
        "unit_price": 25,
        "total_price": 25
      }
    ],
    "created_at": "2019-10-29T10:39:23+02:00",
    "expires_at": "2019-10-29T16:39:23+02:00",
    "dispatch_until": "2019-10-30T15:00:00+02:00"
  },
  "changes": {
    "expires_at": {
      "old": "2019-11-02T13:15:43+02:00",
      "new": "2019-11-04T13:15:00+02:00"
    },
    "dispatch_until": {
      "old": "2019-11-03T12:00:00+02:00",
      "new": "2019-11-04T18:00:00+02:00"
    }
  }
}

Example 5 (courier voucher creation)

{
  "event_type": "order_updated",
  "event_time": "2019-10-29T10:39:23+02:00",
  "order": {
    "code": "191029-5130474",
    "state": "open",
    "comments": "Παράδοση στο γραφείο",
    "courier_voucher": "https://b.scdn.gr/path-to/voucher.pdf",
    "line_items": [
      {
        "id": "l39vpqzZ1l",
        "shop_uid": "100",
        "product_name": "L'Oreal Professionel Salon Steam Pod V2 White",
        "quantity": 2,
        "unit_price": 10.40,
        "total_price": 20.80
      },
      {
        "id": "l39vKqzpll",
        "shop_uid": "10",
        "product_name": "Paul Mitchell Ultimate Color Repair 200ml",
        "quantity": 1,
        "unit_price": 25,
        "total_price": 25
      }
    ],
    "created_at": "2019-10-29T10:39:23+02:00",
    "expires_at": "2019-10-29T16:39:23+02:00",
    "dispatch_until": "2019-10-30T15:00:00+02:00"
  },
  "changes": {
    "courier_voucher": {
      "old": null,
      "new": "https://b.scdn.gr/path-to/voucher.pdf"
    }
  }
}