---
schema_version: "1"
id: 39ef51491a2b8d1f05edc12e5c6cffe5d555b0c9b14e83d0b39beb50593e23e1
title: B2B Commerce Checkout Calculators
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/commerce-cloud/salesforce-commerce/guides/d2c-commerce/b2b-comm-checkout-calculators.md
canonical_url: https://developer.salesforce.com/docs/commerce/salesforce-commerce/guide/b2b-comm-checkout-calculators.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: b7269640e4062a2cff064767c9ea3dec646cbe61853b4397b26b44978f20ed4c
products:
  - B2B Commerce Developer Guide
  - Salesforce APIs
---
# B2B Commerce Checkout Calculators

Calculators run automatically when you invoke Checkout APIs. They compute pricing, promotions, taxes, inventory, and shipping for the cart. See [Cart Calculate API](https://developer.salesforce.com/docs/commerce/salesforce-commerce/guide/cart-calculate-api.html) for calculator execution details.

![Diagram showing how checkout calculators compute taxes, shipping, and promotions during the B2B Commerce checkout process](https://developer.salesforce.com/media/d2c-commerce/commerce-checkout-calculators.png '{"class": "image-lg", "title": "Commerce Checkout Calculators"}')

## Calculator Execution by API

**Start Checkout:** PUT [`/commerce/webstores/{webstoreId}/checkouts`](https://developer.salesforce.com/docs/atlas.en-us.chatterapi.meta/chatterapi/connect_resources_commerce_webstore_checkouts_start_checkout.htm)

Always runs:

- Pricing
- Promotions
- Inventory

Additionally runs if address is available:

- Shipping
- Tax

**Update Checkout:** PATCH [`/commerce/webstores/{webstoreId}/checkouts/{activeOrCheckoutId}`](https://developer.salesforce.com/docs/atlas.en-us.chatterapi.meta/chatterapi/connect_resources_commerce_webstore_checkouts.htm)

Runs when payload includes address:

- Shipping
- Tax

Runs when payload includes shipping method:

- Tax

## Wait for Completion

While calculators run, the API returns 202 Accepted. Continue polling GET [/commerce/webstores/{webstoreId}/checkouts/{activeOrCheckoutId}](https://developer.salesforce.com/docs/atlas.en-us.chatterapi.meta/chatterapi/connect_resources_commerce_webstore_checkouts.htm) until you receive 200 OK, indicating all calculators completed.

**Note:** Don't invoke another Checkout API until the previous request returns 200 OK.
