Cart Operations interacts with the Shipping Services during checkout when fetching fulfillment (shipping) rates for fulfillment groups.
The default implementation facilitates HTTP requests against the Shipping Services endpoints.
See Shipping Services Docs for more details.
The ShippingProvider interface specifies two methods:
getFulfillmentRates - to get a list of rates for a FulfillmentPricingRequest. The fulfillmentOption should be null on the FulfillmentPricingRequest.
getFulfillmentRate - to get a single rate after the user has selected a shipping method. The fulfillmentOption shuld be set on the FulfillmentPricingRequest.
ExternalShippingProperties exposes the following properties:
url - the URL of the Shipping Service.
serviceClient - the service client for OAuth2 service-to-service authentication.
allRatesUri - the endpoint in Shipping Services to retrieve all rates for a cart.
retrieveRateUri - the endpoint in Shipping Services to retrieve a single rates for a cart.