V2 of Checkout and Fulfillment API is already in beta (migration will be completed on May 21st)

Daniel Aleixo

Daniel Aleixo

Last updated

The second version of the Checkout and Fulfillment API is already available in beta. Starting May 21st, all stores will be running it. This V2 brings a lot of improvements in comparison with the previous version and removes some outdated routes and fields.

Atention
We strongly recommend you to run tests to evaluate all impacts and adapt you web site’s integrations and customizations before the deadline.
So, when we complete the update to the API’s new version, the process will run smoothly for your store.

Take a look at everything wich changes with the Checkout and Fulfillment new API (and what’s in beta or in stable):

  • Removal of the defaultPicker, handlerSequence and handling fields from itens object, in the shopping cart and orders response routes (BETA). These fields were included because of a feature that is not being used anymore. Therefore, they’ve not being filled in for a while now.
  • Replacement of checkToSavePersonDataByDefault by the saveUserData field from the storePreferencesData object in the shopping cart and orders response routes (BETA). Attention: during the migration period, we recommend you to keep reading both fields because of possible compatibility issues, but always prioritizing the new one.
  • Removal of the attachmentId (or id, depending of the route) field, from attachment fields (such as shippingData, clientProfileData and giftRegistryData), in the shopping cart and orders response routes. This change will resolve redundancy issues (BETA).
  • Removal of the templateOptions field from the storePreferencesData object in the shopping cart and orders responses (BETA). The development of the feature which was supposed to use this field was never completed, so it always returns the same value.
  • Removal of the itemAttachment field (outdated) from the items object, both in the shopping cart and orders creation and in the orders obtaining (BETA). This field will be removed because of redundancy issues with the attachments field (already in STABLE). It has been on until now to keep compatibility, since it’s first version wasn’t a list.
  • Update of the shippingEstimate field from the SLAs, in the shopping cart and orders response, to support hours (h) and minutes (m) values (BETA).
  • Removal of the callback route (authorization in the order fulfillment) {host}/gatewayCallback/{gatewayReferenceId}/{transactionId}/{messageCode} (GET) and replacement by the {host}/gatewayCallback/{orderGroup}/{messageCode} (GET) route. This change is in BETA, but the correct route is already in STABLE.
  • Removal of the merchantName, transactionId and payments fields from the paymentData object in the following response routes: {host}/api/checkout/pub/orders/order-group/{order-group}, {host}/api/checkout/pub/orders (GET) and {host}/api/checkout/pub/orders/{orderId}. This change is in BETA and completely removes outdated and redundant fields, as compared to those in the transactions field (wich is already in STABLE with all the mentioned changes).
  • Removal of the {host}/api/checkout/pvt/orders/order-import route in the order import (BETA).
  • Removal of the products field in the shopping cart response and requisition routes. This feature was never completely implemented and will be deprecated (BETA).
  • Removal of support for the {host}/checkout/cart/add route in the product queryString. This feature was never completely implemented and will be deprecated (BETA).
  • Removal of the expectedOrderFormSections object in the shopping cart request routes. From now on, all fields be returned (BETA).
  • Removal of the stockBalance field from the logisticsInfo object in the response route {host}/api/checkout/pub/orderForms/simulation. Important: this field will still be available in the private route {host}/api/checkout/pvt/orderForms/simulation (BETA).
  • Removal of the route {host}/api/checkout/pvt/orders/{orderId}/updateShippingEstimateDate (BETA).
  • Error fixing in cases that should return code 500, but were returning code 400 (BETA).