Object Reference
AdditionalInfo
Additional meta information related to the session.
courier_instructions π |
string
optional
Courier instruction provided by the customer |
customer_number π |
string
optional
Optional customer number provided by the user. Sometimes required by specific shipping products. For example DHL lockers in Germany |
door_code π |
string
optional
Entrance door code provided by the customer that can be used by the courier to get in |
Address
Common address entity that used almost everywhere in Ingrid's API.
address_lines π |
string[]
List of address lines part of address such as street and building number |
apartment_number π |
string
Number of the apartment |
attn π |
string
optional
Attention field. Can be used to indicate an employee if the address is a company address |
care_of π |
string
optional
Care of part of address usually written as `c/o` |
city π |
string
Name of the city |
coordinates π |
Geolocation coordinates of the address. If reverse geolocation lookup of the address was successful this property will be populated. If coordinates are available they will be used to in service point search. In case of `search_address` coordinates can also be set by merchant if known |
country π |
string
Country should be specified as two uppercase letters (ISO Alpha-2). Example `SE` for Sweden, `ES` for Spain |
door_code π |
string
optional
The door code to the main entrance of the building if applicable |
floor_number π |
string
optional
Floor number |
name π |
string
Customer or company name |
postal_code π |
string
Postal code (or zipcode in US) |
region π |
string
optional
Region can be a state or a province |
street π |
string
Name of the street |
street_number π |
string
Number of the street |
subregion π |
string
optional
Further division of regions. Example countries are GB, IE, IT, LT, MX For example for The Republic Of Ireland there are 4 provinces (regions), e.g. `Connacht` and 26 counties (subregions), e.g. `Galway` Format is ISO 3166 where applicable, exceptions are e.g. Mexico |
Addresses
All address information related to one delivery group.
billing_address π |
Billing information to be sent to the payment provider |
customer π |
Customer information received from the merchant |
delivery_address π |
Information about delivery address of recipient of the shipment |
location π |
Pickup location if delivery type is `pickup` or `instore` |
search_address π |
Search Address when not in the address form flow |
Any
BillingAddress
address_lines π |
string[]
|
apartment_number π |
string
Number of the apartment |
attn π |
string
optional
Attention field. Can be used to indicate an employee if the address is a company address |
care_of π |
string
optional
Care of part of address usually written as `c/o` |
city π |
string
Name of the city |
company_name π |
string
optional
The name of the company |
country π |
string
Country should be specified as two uppercase letters (ISO Alpha-2). Example `SE` for Sweden, `ES` for Spain |
email π |
string
Email address of the recipient |
external_id π |
string
Unique address identifier |
first_name π |
string
The first name of the recipient |
last_name π |
string
The last name of the recipient |
phone π |
string
Phone number of the recipient |
phone_country π |
string
optional
Phone number country of the recipient Example `SE` for Sweden, `ES` for Spain |
postal_code π |
string
Postal code (or zipcode in US) |
region π |
string
optional
Region can be a state or a province |
street π |
string
Name of the street |
street_number π |
string
Number of the street |
vat π |
string
optional
Value Added Tax identifier |
vat_type π |
string
optional
Type of the VAT number |
CarrierAddon
Carrier specific addons
code π |
string
Identifier of the addon in carrier's system |
description π |
string
Description of the addon's functionality |
name π |
string
Internal identifier of an addon |
Cart
Cart information from the e-commerce store. Information in here is used by the shipping rule engine to calculate the best shipping option for the customer.
attributes π |
string[]
Attributes of the Cart. Cart level attributes are specific to the cart or for the full cart contents. Ingrid Delivery Checkout can set varied delivery scenarios based on such attributes. Ex. [βPRIOβ, βAB-testIDβ] |
cart_id π |
string
required
Unique cart id or unique hashed cart id for the customers cart on the merchant side |
groups π |
CartGroup[]
optional
Specification of groups to which the cart items should be assigned |
items π |
CartItem[]
required
Information about the individual order items. This can be used by the shipping rule engine to calculate the best shipping option |
pre_order π |
boolean
Indicated if the order can be shipped earliest on the provided shipping date |
shipping_date π |
Date the order is expected to be dispatched from the warehouse. For orders containing out of stock items or items available for pre-order only. Multiple shipping dates with appropriate tags can be specified inside internal field `category_tags`. It applies to all cart items. If this property is not set Ingrid defaults to today's date |
total_discount π |
integer
required
Total non-negative discount amount in cents. Example `2000` is `20.00` |
total_value π |
integer
required
Total non-negative cart value in cents after discounts applying. Example `20000` represents `200.00` |
vouchers π |
string[]
Vouchers that can be used in price/filter rules |
CartGroup
Optional specification of group to which the cart items should be assigned.
attributes π |
string[]
Attributes list of a single delivery group. Used to control the behaviour of the `cart_attributes()` filter rule for each group individually |
cart_item_sku_list π |
string[]
deprecated
Deprecated: use contents instead. List of cart item SKUs (unique product identifiers) that belong to the given group. SKUs in the list must match the ones provided on cart items |
consolidatable π |
boolean
Indicates, that the group could be consolidated (merged into single group with other consolidatable groups) |
contents π |
GroupContent[]
required
List of cart item splits by each group. For example: Different sku quantities can be split between groups(orders) |
group_id π |
string
required
Unique identifier of group passed when doing split of shipments |
header π |
string
Header text containing arbitrary information related to the group |
CartItem
Product in the shopping cart
attributes π |
string[]
Attributes of Cart items. Often referred to as βtagsβ. Cart Item level attributes are specific to that particular item and can be set to adjust delivery scenarios in Ingrid Delivery Checkout. A typical scenario is disabling of one or many delivery options based on cart containing cart items with certain attributes. Ex. [βSendAsLetterβ, βPrescriptionβ, βHazmatβ] |
dimensions π |
Dimensions of this cart item. Can be used by the shipping rule engine to calculate the best shipping option |
discount π |
integer
required
Non-negative discount for the given item. Can be used by the shipping rule engine to calculate the best shipping option |
image_url π |
string
URL of the image of the given cart item |
name π |
string
required
Product name or title |
out_of_stock π |
boolean
Flag indicating if the item is currently out of stock |
price π |
integer
required
Non-negative price of the item after the discount applied. Can be used by the shipping rule engine to calculate the best shipping option |
quantity π |
integer
required
Total number of the product item in the cart |
shipping_date π |
Date the item is expected to be dispatched from the warehouse. For orders containing out of stock items or items available for pre-order only. Multiple shipping dates with appropriate tags can be specified inside internal field `category_tags`. If used, it overrides shipping date of a single item, remaining items have shipping date cascaded from `cart.shipping_date` |
site_external_id π |
string
Site external ID can be used in case of marketplace configuration. If sent empty, top level site will be used |
sku π |
string
required
Unique product identifier |
weight π |
Weight of the item in grams. Can be used by the shipping rule engine to calculate the best shipping option. Example `1000` is 1 kg and `10` is 0,01 kg |
CompleteSessionRequest
checkout_session_id π |
string
required
Checkout session id |
customer π |
Information about the customer such as name, email, phone and address. This information is required when completing a session. The address information is used as recipient address information to correctly calculate the correct shipping option |
external_id π |
string
optional
Connects the session with an order on the merchant side. Can be used for troubleshooting and debugging. It has to be provided before the session is completed |
CompleteSessionResponse
Coordinates
Geolocation coordinates
CreateSessionRequest
additional_information π |
Additional information associated with the current session such as door code and delivery notes to courier |
cart π |
Cart
required
Cart details as items, their weight, dimensions, attributes, quantities as well as shipping date, cart total value and currency |
external_id π |
string
optional
Connects the session with an order on the merchant side. Can be used for troubleshooting and debugging. It has to be provided before the session is completed |
locales π |
string[]
required
List of locales to load the shipping selector widget in, in order of preference (first supported one will be used) |
meta π |
hash
Generic key/value object that is used for supplying complementing information |
prefill_delivery_address π |
Prefill Delivery Address be used to prepopulate address form |
purchase_country π |
string
required
The country of the purchase. Example SE |
purchase_currency π |
string
required
The currency of the purchase. Example SEK |
search_address π |
Lookup address for generating delivery options. Could be any address such as (office address) if customer e.g. want to pickup their delivery package close to his/her work place. Minimum required field is country and postal code |
CreateSessionResponse
html_snippet π |
string
HTML snippet to be included on the page |
session π |
Session object |
token π |
string
Token generated for this session |
CustomerAddress
address_lines π |
string[]
List of address lines part of address such as street and building number |
apartment_number π |
string
Number of the apartment |
attn π |
string
optional
Attention field. Can be used to indicate an employee if the address is a company address |
care_of π |
string
optional
Care of part of address usually written as `c/o` |
city π |
string
Name of the city |
coordinates π |
Geolocation coordinates of the address. If reverse geolocation lookup of the address was successful this property will be populated. If coordinates are available they will be used to in service point search. In case of `search_address` coordinates can also be set by merchant if known |
country π |
string
Country should be specified as two uppercase letters (ISO Alpha-2). Example `SE` for Sweden, `ES` for Spain |
door_code π |
string
optional
The door code to the main entrance of the building if applicable |
email π |
string
Email address of the customer |
name π |
string
The name of the customer |
phone π |
string
Phone number of the customer |
postal_code π |
string
Postal code (or zipcode in US) |
region π |
string
optional
Region can be a state or a province |
street π |
string
Name of the street |
street_number π |
string
Number of the street |
DateTimeRange
Provides a date interval. Depending on a case, `start` and `end` parts are not guaranteed to be present.
end π |
string
End of the interval. Date is returned in RFC3339 format. Example `2018-09-08T22:47:31Z` |
start π |
string
Start of the interval. Date is returned in RFC3339 format. Example `2018-09-08T22:47:31Z` |
DeliveryAddress
address_lines π |
string[]
List of address lines part of address such as street and building number |
apartment_number π |
string
Number of the apartment |
attn π |
string
optional
Attention field. Can be used to indicate an employee if the address is a company address |
care_of π |
string
optional
Care of part of address usually written as `c/o` |
city π |
string
Name of the city |
company_name π |
string
optional
The name of the company |
coordinates π |
Geolocation coordinates of the address. If reverse geolocation lookup of the address was successful this property will be populated. If coordinates are available they will be used to in service point search. In case of `search_address` coordinates can also be set by merchant if known |
country π |
string
Country should be specified as two uppercase letters (ISO Alpha-2). Example `SE` for Sweden, `ES` for Spain |
door_code π |
string
optional
The door code to the main entrance of the building if applicable |
email π |
string
Email address of the recipient |
external_id π |
string
Unique address identifier |
first_name π |
string
The first name of the recipient |
last_name π |
string
The last name of the recipient |
phone π |
string
Phone number of the recipient |
phone_country π |
string
optional
Phone number country of the recipient Example `SE` for Sweden, `ES` for Spain |
postal_code π |
string
Postal code (or zipcode in US) |
region π |
string
optional
Region can be a state or a province |
street π |
string
Name of the street |
street_number π |
string
Number of the street |
DeliveryGroup
Summary of the order.
addresses π |
All important addresses in a single place |
category π |
Details about the selected Delivery Category for this Delivery Promise |
delivery_time π |
Details the Delivery time aspects of the Delivery promise given in Delivery Checkout |
external_id π |
string
optional
Connects the delivery group with an order on the merchant side. Can be used for troubleshooting and debugging |
group_id π |
string
Identifier of delivery group used to perform splitting of shipments |
header π |
string
Header text containing arbitrary information related to the delivery group |
items π |
Cart items that belong to the delivery group |
pricing π |
Pricing information for selected Delivery Promise with currency details |
selection π |
Defines how selected Delivery Promise was obtained |
shipping π |
Details about the delivery promise given in a Checkout session, such as specifications of the selected Carrier, Pickup Location information, Routing and Integration mapping IDs |
tos_id π |
string
Identifier of order created based on completed session. By default, orders are created asynchronously so the identifier might need to be re-fetched |
DeliveryGroupCategory
The Delivery Category selected by the User.
base_price π |
integer
Base price of the carrier product for the given Delivery Promise |
custom_text π |
string
User-defined custom text displayed near the category in shipping selector widget |
custom_warning_text π |
string
User-defined custom warning text displayed near the category in shipping selector widget, that indicates e.g. edge cases related to the given category |
external_id π |
string
optional
External ID that can be used to map to merchant specific ids. Can be set in configuration |
id π |
string
The Ingrid internal ID of the category |
name π |
string
Default category name. This admin name of the delivery category. This would be shown to end user if there are no translations set for the category |
presented_category_name π |
string
The name of the category that was actually presented to the end user |
tags π |
The category tags set in Ingrid Merchant Platform for that specific Delivery Category |
DeliveryGroupDeliveryAddon
Specifies a single selected addon.
DeliveryGroupDeliveryTime
Listing of Delivery Time Components produced by the Ingrid Delivery Checkout.
carrier_delivery_promise π |
The Date & Time response returned by Ingrid Carrier integrations that specify when carriers say they could deliver the parcel. This notion could differ from customer_delivery_promise since a carrier could have deliveries on eg. Saturdays but a user has configured Ingrid Delivery Checkout to communicate only business days. For such situation, Ingrid would move the customer_delivery_promise to the next possible business day |
customer_delivery_promise π |
The date & time used to present the delivery time promise to the end user. (When time is set to 00:00 it means Ingrid has presented a set of days or business days e.g. 2-3 Business days) |
pickup_from_merchant π |
The date & time when the parcel is understood by Ingrid Delivery Checkout and is possible to collect from Merchant Warehouse or Store |
DeliveryGroupDeliveryTimeRange
DeliveryGroupItem
Item that belongs to a delivery group.
quantity π |
integer
Quantity of cart item |
shipping_date π |
Shipping date set for the item |
site_external_id π |
string
Site external ID can be used in case of marketplace configuration to split items by marketplace merchant. If sent empty, top level site will be used |
sku π |
string
Unique cart item's product identifier |
DeliveryGroupPricing
The price of the delivery promise from Ingrid Delivery Checkout. Given as a total or divided into it is components for cases such as separating eg. Delivery Addons selected by the user during checkout.
currency π |
string
Session's currency. Example `SEK` |
net_price π |
integer
optional
Net price of the delivery option. Unit are cents |
price π |
integer
Price in cents. Example `20000` represents `200.00` |
price_components π |
Components which make up the price |
DeliveryGroupShipping
How the package should be shipped to the end customer.
addons π |
Shipping products addons that are enabled by default. Can be configured in the Merchant Admin tool |
carrier π |
string
Name of the shipping company |
carrier_product_id π |
string
Identifier of chosen carrier product, can be used for merchant-specific shipping methods mappings. If external method identifier is defined on carrier product, its value is passed in this field. Otherwise, shipping method from carrier product is passed |
delivery_addons π |
Selected delivery addons |
delivery_type π |
string
Type of delivery (pickup, instore, mailbox, delivery) |
meta π |
hash
Carrier specific metadata related to the shipping option, for example addons |
product π |
string
Name of the shipping product |
route π |
Delivery steps |
supports π |
Contains information about the features a shipping option should support |
warehouse π |
Address of the warehouse from which the package will be shipped |
DeliveryGroupWarehouse
address π |
Dimensions
Dimensions of an item in millimeters.
height π |
integer
Height of the item in millimeters |
length π |
integer
Length of the item in millimeters |
width π |
integer
Width of the item in millimeters |
Distance
Walking and driving distance information (if available). This depends if we could reverse geolocate supplied address and succeeded in finding a nearest route from A to B. Usually only available for distance information between address provided by the customer and service point address.
DistanceSpec
Generic distance object used by Distance object to provide driving and walking information.
duration π |
integer
Approximate duration in minutes |
value π |
integer
Approximate distance in meters |
Error
GetSessionResponse
GroupContent
LegLocation
LegLocation represents a location that takes part in a delivery.
address π |
Address of a location. This is optional when LocationType is WAREHOUSE or HOME, since these values can be obtained from the session |
external_id π |
string
Possibility to set an external id for this location. Usually service point id or merchant store id |
location_type π |
Location type. Can be UNKNOWN, WAREHOUSE, STORE, HOME or PICKUP |
ListSessionsSummariesResponse
Contains the list of session IDs with result fields.
OperationalHours
Service points's operational hours
free_text π |
string[]
Free text operational hours. Used as a fallback when the operational hours cannot be parsed correctly |
fri π |
string
|
mon π |
string
|
sat π |
string
|
sun π |
string
|
thu π |
string
|
tue π |
string
|
wed π |
string
|
PickupLocation
Contains information about the pickup service point as returned by the carrier.
address π |
Visiting address of the service point |
distance π |
Distance between the service point location and customer's delivery address if available |
external_id π |
string
Carrier specific ID of the service point location returned by the carrier |
location_type π |
The type of pickup location. Can be `UNKNOWN_PICKUP_LOCATION_TYPE, LOCKER, STORE, POSTOFFICE, MANNED` |
meta π |
hash
Carrier specific metadata related to the pickup location [t:hash<string,string>] |
name π |
string
Name or title of the service point as returned by the carrier |
operational_hours π |
Operation hours for the service point provided by the carrier if available |
sections π |
PriceComponent
Specifies a single price component.
id π |
string
|
type π |
Indicates if the component is the cost of shipping or the one of an addon |
value π |
integer
Gross price |
vat π |
integer
optional
Amount of tax |
vat_rate π |
number
optional
Tax rate of the delivery option |
Route
Route represents a list of delivery steps.
shipping_legs π |
ShippingLegs represent a list of delivery steps. For a non-chained delivery this will contain only one element |
SearchAddress
address_lines π |
string[]
List of address lines part of address such as street and building number |
apartment_number π |
string
Number of the apartment |
city π |
string
Name of the city |
coordinates π |
Geolocation coordinates of the address. If reverse geolocation lookup of the address was successful this property will be populated. If coordinates are available they will be used to in service point search. In case of `search_address` coordinates can also be set by merchant if known |
country π |
string
Country should be specified as two uppercase letters (ISO Alpha-2). Example `SE` for Sweden, `ES` for Spain |
postal_code π |
string
Postal code (or zipcode in US) |
region π |
string
optional
Region can be a state or a province |
street π |
string
Name of the street |
street_number π |
string
Number of the street |
Section
SectionColumnItem
items π |
SectionItem
Session
Contains information about the current session. Each session is unique for every customer transaction
additional_information π |
Additional meta information related to the session |
cart π |
Checkout cart details as items, their weight, dimensions, attributes, quantities as well as shipping date, cart total value and currency |
checkout_session_id π |
string
Identifier of the session. Generated when session is created. Used for updating, fetching and completing the session |
delivery_groups π |
Delivery groups contain information about session results. Information about order, selection and price can be found here. If split shipment is disabled, delivery groups contain only one entry |
experiment_id π |
string
Identifier of an A/B testing experiment, which is related to the session. If the session is not related to any A/B testing experiment, this field is empty |
purchase_country π |
string
The country of the purchase |
status π |
SessionSessionStatus
readonly
Current session status (ACTIVE, COMPLETE). You cannot reactivate a session after it is completed |
updated_at π |
string
Datetime indicating when the session was last updated |
SessionSummary
addresses π |
All important addresses in a single place |
category π |
Details about the selected Delivery Category for this Delivery Promise |
delivery_time π |
Details the Delivery time aspects of the Delivery promise given in Delivery Checkout |
pricing π |
Pricing information for selected Delivery Promise with currency details |
selection π |
Defines how selected Delivery Promise was obtained |
shipping π |
Details about the delivery promise given in a Checkout session, such as specifications of the selected Carrier, Routing and Integration mapping IDs |
ShippingDate
Information about possible shipping dates.
category_tags π |
Multiple shipping dates with appropriate tags |
end π |
string
End of the interval. Date is returned in RFC3339 format. Example `2018-09-08T22:47:31Z07:00` |
start π |
string
Start of the interval. Date is returned in RFC3339 format. Example `2018-09-08T22:47:31Z07:00` |
ShippingDateTag
ShippingLeg
ShippingLeg represents a single step of package delivery.
delivery_type π |
string
Step's delivery type |
from π |
Origin address. Can be warehouse or service point or merchant store address |
shipping_method π |
string
Shipping product used for this step |
to π |
Destination address. Can be warehouse or service point or merchant store address or customer's home address |
Supports
Contains information about features that a shipping option supports. Configurable in Merchant Admin tool.
courier_instructions π |
boolean
Indicates if shipping option supports courier notes. If true, a courier instructions input will be displayed in the shipping selector widget. Only applicable for home delivery type |
customer_number π |
boolean
Indicates if shipping option supports carrier specific customer number. If true, a carrier number input will be displayed in the shipping selector widget. Only applicable for DHL Germany at this moment, where customer has to provide a number that identifies a pickup locker |
door_code π |
boolean
Indicates if shipping option supports door code. If true, a door code input will be displayed in the shipping selector widget. Only applicable for home delivery type |
search π |
boolean
Indicates if search should be enabled |
Tag
name π |
string
|
UpdateSessionRequest
cart π |
Cart details as items, their weight, dimensions, attributes, quantities as well as shipping date, cart total value and currency |
checkout_session_id π |
string
required
Checkout session id |
external_id π |
string
optional
Connects the session with an order on the merchant side. Can be used for troubleshooting and debugging. It has to be provided before the session is completed |
locales π |
string[]
List of locales to load the shipping selector widget in, in order of preference (first supported one will be used) |
meta π |
hash
Generic key/value object that is used for supplying complementing information |
prefill_delivery_address π |
Prefill Delivery Address be used to prepopulate address form |
purchase_country π |
string
The country of the purchase |
purchase_currency π |
string
The currency of the purchase |
search_address π |
Lookup address for generating delivery options. Could be any address such as (office address) if customer e.g. want to pickup their delivery package close to his/her work place. Minimum required field is country and postal code |