- Published on
Skrym releases Checkout API
- Author
- Prasanna BalajiMax DanielssonMert MercanVilhelm MelkstamLukas PetersonDavid Bern
Skrym launches Checkout API to provide a logistics-aware solution for retailers worldwide
We are very excited to finally announce our new and powerful Checkout API, designed to help retailers worldwide embed logistics awareness and optimization into their online shopping experience.
The API will make it much easier to build dynamic behaviour into the checkout experience, ensuring delivery options are displayed, priced and ranked correctly.
It feels so good to finally bring a solution to the market that developers will actually want to use.
Max Danielsson, Product Manager at Skrym
Already in use, the new Checkout API is also the backbone of our integrations with checkout providers such as Klarna. And of course, it is available for free to all Skrym users currently using Skrym through a standard checkout integration.
Functionality
Now let's explore some of the new functionality that comes with this release. While there is a lot to be excited about, we have chosen our favourite three features that come with the Checkout API.
Integrate easily
One quality of life feature where the positive response from customers has completely blown us away is the ability to use aliasing. In short, aliasing enables interfacing with legacy software without requiring figuring out where certain old semantics come from, significantly reducing barriers to implementation and time needed to get up and running.
This flexibility makes it extremely easy to migrate from your existing solution to Skrym, since important identifiers (for example codes for different transport methods) in both input and output can remain the same.
Example - using custom parameters for styling output
Like described above, one of the the most powerful functionalities in our Checkout API is the ability to use custom parameters.
Now let us look at how you can use custom parameters for crafting great checkout experiences for your customers, since you can also add custom parameters in the response body for each shipping option.
Suppose we want to achieve the following:
- If
customerType
isLOYALTY
then returnexpressShipping
astrue
for all home delivery shipping options
You only need to do the following 3 steps to achieve this
- Define your custom parameters
customerType
andexpressShipping
- Add a checkout tactic to include the condition on
customerType
- Add the
expressShipping
to the home delivery shipping options in this tactic
In effect, this will give you output that looks like the following:
{
"sessionId": "50cfae0c-521b-4b97-9802-025dd3b64004",
"transportMethods": [
{
"transporterId": "6a92c0e6-dca9-4170-a518-7bea880400b6",
"transportMethodId": "c9ad6e82-f164-423f-ade1-7e1619449c79",
"transporter": "DB Schenker",
"transportMethod": "Collection Point",
"methodCode": "",
"deliveryType": "service-point-pickup",
"priceForCustomer": 4900,
"costForRetailer": 0,
"deliveryTime": {
"interval": {
"earliest": 1,
"latest": 3
},
"earliest": "2024-06-28T11:18:51.336777725Z",
"latest": "2024-06-30T11:18:51.336777725Z"
},
"customParameters": {}
},
{
"transporterId": "8a93b0f8-fbd4-487d-bc61-46e23d3f68c7",
"transportMethodId": "f6bd14f6-9134-438b-8a7f-09d45c81d2df",
"transporter": "PostNord",
"transportMethod": "MyPack Home",
"methodCode": "postnord-mph",
"deliveryType": "home-delivery",
"priceForCustomer": 5900,
"costForRetailer": 0,
"deliveryTime": {
"interval": {
"earliest": 1,
"latest": 2
},
"earliest": "2024-06-27T11:18:51.336777725Z",
"latest": "2024-06-28T11:18:51.336777725Z"
},
"customParameters": {
"expressShipping": "true"
}
},
{
"transporterId": "2b27a1d6-77c6-44ea-b4c4-0123456789ab",
"transportMethodId": "e7a6d7e3-1234-5678-9012-34567890abcd",
"transporter": "DHL",
"transportMethod": "Home Delivery",
"methodCode": "dhl-hd",
"deliveryType": "home-delivery",
"priceForCustomer": 7500,
"costForRetailer": 0,
"deliveryTime": {
"interval": {
"earliest": 1,
"latest": 2
},
"earliest": "2024-06-27T11:18:51.336777725Z",
"latest": "2024-06-28T11:18:51.336777725Z"
},
"customParameters": {
"expressShipping": "true"
}
}
]
}
Want to try it?
If you want to get access to the Checkout API, reach out through the button below and we will help you get the credentials needed for getting started.
You can also read more about how to implement our Checkout API on our Docs.