Last updated

Shipping Details


How we handle shipping in KCO.

How it is done

There are several ways shipping can be added to an order.

Using the same address for billing and shipping

Creating an order without specifying the options.allow_separate_shipping property will not display the shipping section in the checkout. The shipping address will be the same as the billing address. KSA is disabled with this configuration.

{
  "purchase_country": "GB",
  "purchase_currency": "GBP",
  "locale": "en-GB",
  "order_amount": 50000,
  "order_tax_amount": 4545,
  "order_lines": [
      {
        "type": "physical",
        "reference": "19-402-USA",

Allowing a separate shipping address

An order created with allow_separate_shipping set to true will display KSA in the checkout if the Merchant Portal configuration is correct. This allows the consumer to enter a separate shipping address.

{
  "purchase_country": "GB",
  "purchase_currency": "GBP",
  "locale": "en-GB",
  "order_amount": 50000,
  "order_tax_amount": 4545,
  "order_lines": [
      {
        "type": "physical",
        "reference": "19-402-USA",

Shipping address checkout demo store

Sending shipping options

Merchants can provide KCO with shipping options to present to the consumer using the shipping_options property. This enables KSA, presenting a shipping selector in the checkout. The cart updates automatically.

{
  "purchase_country": "GB",
  "purchase_currency": "GBP",
  "locale": "en-GB",
  "order_amount": 50000,
  "order_tax_amount": 4545,
  "order_lines": [
      {
        "type": "physical",
        "reference": "19-402-USA",

Shipping methods Checkout demo store

Allowing separate shipping & sending shipping options

Specifying both options.allow_separate_shipping and shipping_options allows consumers to choose a shipping option and shipping address.

{
  "purchase_country": "GB",
  "purchase_currency": "GBP",
  "locale": "en-GB",
  "order_amount": 50000,
  "order_tax_amount": 4545,
  "order_lines": [
      {
        "type": "physical",
        "reference": "19-402-USA",

Shipping option update callback

Use a shipping_option_update URL for server-side callbacks when consumers change shipping options. In this case, the shipping option cost is not automatically added to order_lines or order_total.

Using a transport management system

For TMS use, refer to KSA documentation. More details and a Checkout integration section are available.