Get started
Customization
Troubleshooting
Introduction
Ingrid Delivery Checkout for WooCommerce is a plugin that extends WooCommerce, allowing you to make shipments via Ingrid.
You can download the plugin here.
- As of version 2.9.0 Ingrid Delivery Checkout for WooCommerce support High-Performance Order Storage (HPOS).
Ingrid Delivery Checkout for WooCommerce does not support the Checkout block i WooCommerce.
You can read more about this here.
Sign up with Ingrid
You need an agreement with Ingrid to be able to use this plugin.
Installation
- Login to WordPress Admin. Navigate to Plugins → Add New (in the left column menu).
- Click Upload Plugin and then browse to the plugin zip-file on your computer. Click on OK and finally click on the Install Now button.
- Activate the plugin.
Configuration
Go to: WooCommerce → Settings → Shipping
Now Ingrid Delivery Checkout is displayed as an available option in the horizontal menu at the top. Click on this link to access the Ingrid settings.
Basic settings
- API Key – Enter your API key that you will receive from Ingrid once you have your agreement.
- Delivery API version – Check this box to use the new API (Delivery Checkout v2)
- Test mode – Check this box to use the Ingrid Staging Environment
- Ingrid address form – Check this box to enbable this setting if you are using Ingrid’s address form.
- Fallback shipping method – Enter the shipping method you want as backup in the event of WooCommerce being unable to connect to Ingrid.
- New widget placement – Check this box to use the new widget placement logic. When this box is checked the Ingrid Delivery Checkout will be displayed where the shortcode is placed. If not checked the widget will be displayed in the default position.
- Widget placement hook – Choose the hook where you want the Ingrid Shipping widget to be displayed.
- Custom placement hook – Enter a custom hook where you want the Ingrid Shipping widget to be placed.
- Update on product page – Check this box to create and update Ingrid session when a product is added to the cart, to be able to get shipping price before customer navigates to checkout page.
Delivery tracking
- Site ID – Enter the Site ID received from the Ingrid administration portal.
- Tracking number field name – Order post meta name used when sending tracking number to Ingrid. Leave blank to use plugin default.
Read more about delivery tracking in this section.
Product Page Widget
- Auth token – Enter the Product page widget token received from the Ingrid administration portal.
- Product Page Widget placement – Choose where you want the Product Page Widget to be displayed.
- Custom placement hook – Enter a custom hook where you want the Product Page Widget to be displayed.
- Custom placement hook priority – Enter a priority for the custom hook where you want the Product Page Widget to be displayed.
Displaying Ingrid Delivery Checkout
Go to Shipping zones in the horizontal menu at the top and remove any existing Shipping Zones as they will conflict with Ingrid.
Edit your Checkout page and add the shortcode [woocommerce_ingrid]
above [woocommerce_checkout]
Cart data sent to Ingrid
For each order line sent to Ingrid the following data will be passed:
- sku
- name
- price
- quantity
- height, width & length
- weight
- out of stock
- attributes – (as an array) both regular product attributes (as pa_attributename:attributevalue) and variable product variants (as variantvalue).
For the entire order the following data is sent to Ingrid:
- vouchers – (as an array) the name of the coupon code used. If the coupon code enables free shipping, a voucher named free_shipping will also be sent
- purchase_country
- purchase_currency
This data can be used when creating conditional logic in your Ingrid account.
Shipping data in WooCommerce order
When an order has been created in WooCommerce, the name and price of the selected shipping method in the Ingrid Delivery Checkout widget is added to the order.
The order ID created in Ingrids system for the shipment is saved as an order post_meta field with the name ingrid_tos_id
. This id can be used to make API requests to Ingrid to retrieve more information about the shipment.
More information about the shipment is saved as an order post_meta field with the name _ingrid_shipment_info
. This data is stored as a JSON object with the following structure:
{
"session_id": "c9a16f51-937a-4e88-8b80-633aafc827ce",
"tos_id": "01FPW7NJ0KQR9F2PNBENMS4G47",
"currency": "SEK",
"cost": 29,
"category_name": "PostNord",
"shipping": {
"method_id": "pnl-mpc",
"external_method_id": null,
"carrier": "PostNord",
"product": "MyPack Collect",
"location": {
"name": "Ica Kvantum Arvika",
"id": "204160"
}
}
}
For shipping methods that does not have a pickup point the “location” parameter will not be included in the structure.
From version 2.6.0 of the plugin, the following data is also stored as separate order meta data fields:
- Shipping method id –
_ingrid_method_id
. - External method id –
_ingrid_external_method_id
. - Service location id (pickup point or box) –
_ingrid_location_id
. - Availability token (Instabox) –
_ingrid_availability_token
. - Shipment carrier –
_ingrid_carrier
Multiple store currencies
In Ingrids system you specify shipping options – and prices – per region. The easiest and most straight forward way to handle multiple currencies in your store together with Ingrid is to force a currency to a specific set of countries/regions.
That way you can have a setup like this:
- In WooCommerce you force NOK as the currency for customers from Norway.
- In Ingrid you specify shipping prices in NOK in the region Norway.
If this isn’t possible, you can enable Ingrids Currency Conversion logic. Contact Ingrid customer support team to enable this feature. More info can be found in Ingrid’s docs about currency conversion.