---
title: "Get checkout cost preview"
method: POST
path: "/api/v2/organizations/{orgSlug}/checkout/summary"
tags: ["Checkout"]
---

# Get checkout cost preview

`POST /api/v2/organizations/{orgSlug}/checkout/summary`

Returns a cost preview for a potential checkout without creating an order or charging the member. Provide either memberships/fees or a booking, but not both. A discount code can be included to see its effect on pricing. 

**Memberships/Fees flow:** Calculates the order total based on the selected plans, fees, and the member's billing context (billing flow, currency, tax settings). Returns line items, subtotal, total, tax breakdown, and any applicable processing fees or discounts. 

**Booking flow:** Returns a summary of the booking request including resource availability pricing, per-date fee breakdown with credits and coins applied, and the cancellation policy that would apply to the booking. 

 Required scopes: `flex.billing.checkout.create`

## Path parameters

- `orgSlug` string, required

## Query parameters

- `enforceBookingPolicy` boolean

## Request body

- CheckoutSummaryRequestDto
  - `member` string, required — The `_id` of the member. Used to resolve the member's billing context including billing flow, currency, and company. Required for memberships/fees summaries.
  - `location` string — Overrides the location for the order. If omitted, resolved from the member's assigned location.
  - `memberships` MembershipRequestDto[] — Memberships to include in the checkout summary. Mutually exclusive with booking.
    - `plan` string, required — The `_id` of the plan that defines the membership type, pricing, and benefits.
    - `startDate` string, required — The date the membership becomes active. Format: YYYY-MM-DD.
    - `location` string — The `_id` of the location for this membership. If omitted, resolved from the member's assigned location or the first open location.
    - `name` string — A custom display name that overrides the plan's default name for this membership.
    - `price` number — A custom price that overrides the plan's default price for this membership.
    - `addOns` string[] — Plan `_id`s of add-on plans to include with this membership. Add-ons provide supplementary benefits on top of the base plan.
  - `fees` FeeRequestDto[] — Fees to include in the checkout summary. Mutually exclusive with booking.
    - `plan` string — The `_id` of the plan that defines the fee type and pricing.
    - `date` string — The effective date of the fee. Format: YYYY-MM-DD.
    - `location` string — The `_id` of the location associated with this fee.
  - `booking` BookingRequestBaseDto
    - `start` string, date-time, required — The booking start date and time in ISO 8601 format.
    - `end` string, date-time, required — The booking end date and time in ISO 8601 format. Must be after `start`.
    - `resource` string, required — The `_id` of the resource (e.g., meeting room, desk) to book.
    - `member` string — The `_id` of the member making the booking. At least one of `member` or `company` must be provided.
    - `company` string — The `_id` of the company making the booking. At least one of `member` or `company` must be provided.
    - `price` number — Overrides the resource's default price for this booking. When omitted, the resource's plan-based pricing applies.
    - `isFree` boolean — When true, the booking is created without generating any fees or charges.
    - `isTentative` boolean — When true, the booking is created as a tentative/unconfirmed reservation.
    - `extras` BookingExtraDto[] — Additional resources or services (e.g., catering, AV equipment) to include with the booking. Each extra generates additional fees.
      - `_id` string, required — The `_id` of the extra resource to add to the booking (e.g., additional equipment, catering).
      - `count` number, required — The quantity of this extra resource to include.
  - `discountCode` string — A discount code to apply to see its effect on pricing.
  - `cardType` string — The card brand (e.g., "visa", "mastercard"). Used to calculate any card-specific processing fees in the summary.
  - `paymentMethod` 'card' | 'ach' — The payment method type. Used to calculate any method-specific processing fees in the summary.

## Response `200`

- CheckoutSummaryResponseDto
  - `stats` union, required — The checkout summary statistics. Shape depends on whether memberships/fees or booking was requested.
    - MembershipsCheckoutSummaryStatsDto
      - `lines` LineItemDto[] — Breakdown of individual line items with unit price, quantity, and tax details.
        - `taxPercent` number — The tax percent applied to the line item.
        - `taxAmount` number — The tax amount applied to the line item.
        - `price` number — The total price as described in the system.
        - `discountAmount` number — The calculated discount amount based on the discount set in the payment.
        - `unitPrice` number — Based on the quantity of the line item, this is the price of a single unit.
        - `baseUnitPrice` number — Based on the quantity of the line item, this is the price of a single unit in the base currency.
        - `subTotal` number — The subtotal of the line item (including tax).
        - `baseTotal` number — The total price of the line item in the base currency (including discount).
        - `total` number — The total for the line item (including tax).
        - `convertedAmounts` CalculatedLineStatsDto
          - `taxPercent` number — The tax percent applied to the line item.
          - `taxAmount` number — The tax amount applied to the line item.
          - `price` number — The total price as described in the system.
          - `discountAmount` number — The calculated discount amount based on the discount set in the payment.
          - `unitPrice` number — Based on the quantity of the line item, this is the price of a single unit.
          - `baseUnitPrice` number — Based on the quantity of the line item, this is the price of a single unit in the base currency.
          - `subTotal` number — The subtotal of the line item (including tax).
          - `baseTotal` number — The total price of the line item in the base currency (including discount).
          - `total` number — The total for the line item (including tax).
        - `description` string — Description of the line item.
        - `account` string — A reference to the account the line item is allocated to.
        - `plan` string — A reference to the plan the line item is for.
        - `fee` string — A reference to the fee the line item is for.
        - `location` string — A reference to the location the line item is for.
        - `membership` string — A reference to the membership the line item is for. @deprecated Use memberships array instead.
        - `taxRate` string — A reference to the taxRate the line item is for.
        - `discount` number — Based on the quantity of the line item, this is the total discount that applied.
        - `unitDiscount` number — Based on the quantity of the line item, this is the single discount of a unit.
        - `quantity` number — The quantity of items described in the line item.
        - `startDate` string — The start date of the billing period.
        - `endDate` string — The end date of the billing period.
        - `addOns` LineItemAddonDto
          - `name` string — The name of the addon.
          - `unitPrice` number — The unit price of the addon.
          - `description` string — The description of the addon.
        - `fees` string[] — An array of fee references from the original lines that were merged into this invoice line.
        - `memberships` string[] — An array of membership references from the original lines that were merged into this invoice line.
      - `subtotal` number — The subtotal before tax.
      - `total` number — The total including tax.
      - `processingFeeLine` LineItemDto
        - `taxPercent` number — The tax percent applied to the line item.
        - `taxAmount` number — The tax amount applied to the line item.
        - `price` number — The total price as described in the system.
        - `discountAmount` number — The calculated discount amount based on the discount set in the payment.
        - `unitPrice` number — Based on the quantity of the line item, this is the price of a single unit.
        - `baseUnitPrice` number — Based on the quantity of the line item, this is the price of a single unit in the base currency.
        - `subTotal` number — The subtotal of the line item (including tax).
        - `baseTotal` number — The total price of the line item in the base currency (including discount).
        - `total` number — The total for the line item (including tax).
        - `convertedAmounts` CalculatedLineStatsDto
          - `taxPercent` number — The tax percent applied to the line item.
          - `taxAmount` number — The tax amount applied to the line item.
          - `price` number — The total price as described in the system.
          - `discountAmount` number — The calculated discount amount based on the discount set in the payment.
          - `unitPrice` number — Based on the quantity of the line item, this is the price of a single unit.
          - `baseUnitPrice` number — Based on the quantity of the line item, this is the price of a single unit in the base currency.
          - `subTotal` number — The subtotal of the line item (including tax).
          - `baseTotal` number — The total price of the line item in the base currency (including discount).
          - `total` number — The total for the line item (including tax).
        - `description` string — Description of the line item.
        - `account` string — A reference to the account the line item is allocated to.
        - `plan` string — A reference to the plan the line item is for.
        - `fee` string — A reference to the fee the line item is for.
        - `location` string — A reference to the location the line item is for.
        - `membership` string — A reference to the membership the line item is for. @deprecated Use memberships array instead.
        - `taxRate` string — A reference to the taxRate the line item is for.
        - `discount` number — Based on the quantity of the line item, this is the total discount that applied.
        - `unitDiscount` number — Based on the quantity of the line item, this is the single discount of a unit.
        - `quantity` number — The quantity of items described in the line item.
        - `startDate` string — The start date of the billing period.
        - `endDate` string — The end date of the billing period.
        - `addOns` LineItemAddonDto
          - `name` string — The name of the addon.
          - `unitPrice` number — The unit price of the addon.
          - `description` string — The description of the addon.
        - `fees` string[] — An array of fee references from the original lines that were merged into this invoice line.
        - `memberships` string[] — An array of membership references from the original lines that were merged into this invoice line.
      - `taxType` string — How tax is applied to the order. Values: "included" (prices include tax), "excluded" (tax added on top), or "noTax".
      - `taxAmounts` TaxAmountDto[] — Tax amount breakdowns by tax rate.
        - `percent` number — The tax percent for the group.
        - `total` number — The tax total for the group.
        - `taxRate` string — A reference to the taxRate the group is for.
      - `discountPercent` number — The discount percentage applied from the provided discount code.
      - `totalDiscount` number — The total monetary discount amount deducted from the order.
      - `paymentMethod` string — The resolved payment method label used for the summary.
      - `location` string — The `_id` of the location used for the checkout summary.
      - `baseTotal` number — The total amount converted to the organization's base currency, when multi-currency is enabled.
    - BookingCheckoutSummaryStatsDto
      - `lines` LineItemDto[] — Breakdown of individual invoice line items with unit price, quantity, and tax details.
        - `taxPercent` number — The tax percent applied to the line item.
        - `taxAmount` number — The tax amount applied to the line item.
        - `price` number — The total price as described in the system.
        - `discountAmount` number — The calculated discount amount based on the discount set in the payment.
        - `unitPrice` number — Based on the quantity of the line item, this is the price of a single unit.
        - `baseUnitPrice` number — Based on the quantity of the line item, this is the price of a single unit in the base currency.
        - `subTotal` number — The subtotal of the line item (including tax).
        - `baseTotal` number — The total price of the line item in the base currency (including discount).
        - `total` number — The total for the line item (including tax).
        - `convertedAmounts` CalculatedLineStatsDto
          - `taxPercent` number — The tax percent applied to the line item.
          - `taxAmount` number — The tax amount applied to the line item.
          - `price` number — The total price as described in the system.
          - `discountAmount` number — The calculated discount amount based on the discount set in the payment.
          - `unitPrice` number — Based on the quantity of the line item, this is the price of a single unit.
          - `baseUnitPrice` number — Based on the quantity of the line item, this is the price of a single unit in the base currency.
          - `subTotal` number — The subtotal of the line item (including tax).
          - `baseTotal` number — The total price of the line item in the base currency (including discount).
          - `total` number — The total for the line item (including tax).
        - `description` string — Description of the line item.
        - `account` string — A reference to the account the line item is allocated to.
        - `plan` string — A reference to the plan the line item is for.
        - `fee` string — A reference to the fee the line item is for.
        - `location` string — A reference to the location the line item is for.
        - `membership` string — A reference to the membership the line item is for. @deprecated Use memberships array instead.
        - `taxRate` string — A reference to the taxRate the line item is for.
        - `discount` number — Based on the quantity of the line item, this is the total discount that applied.
        - `unitDiscount` number — Based on the quantity of the line item, this is the single discount of a unit.
        - `quantity` number — The quantity of items described in the line item.
        - `startDate` string — The start date of the billing period.
        - `endDate` string — The end date of the billing period.
        - `addOns` LineItemAddonDto
          - `name` string — The name of the addon.
          - `unitPrice` number — The unit price of the addon.
          - `description` string — The description of the addon.
        - `fees` string[] — An array of fee references from the original lines that were merged into this invoice line.
        - `memberships` string[] — An array of membership references from the original lines that were merged into this invoice line.
      - `subtotal` number — The subtotal before tax.
      - `total` number — The total including tax.
      - `timezone` string — The IANA timezone of the booking location (e.g., "Europe/London").
      - `plan` string — The `_id` of the rate/plan used for pricing the booking, determined by the resource's associated plan.
      - `location` string — The `_id` of the location where the resource is located.
      - `currentPrice` number — The base price of the resource for the requested time slot, before any extras, credits, or coins are applied.
      - `fees` BookingFeeSummaryDto[] — Per-date breakdown of booking fees, including credits and coins applied to each fee.
        - `date` string — The effective date of this fee entry.
        - `fee` BookingFeeDetailDto, required
          - `date` string — The effective date of the fee.
          - `price` number — The fee unit price.
          - `quantity` number — The number of units charged.
          - `name` string — The display name of the fee.
          - `formattedPrice` string — The price formatted with the organization's currency symbol and locale settings.
        - `extraFees` string[], required — Fee `_id`s generated for the extra resources added to the booking.
        - `credits` BookingCreditsResultDto[], required — Booking hour credits applied to offset this fee.
          - `count` number — The number of credits used for the booking.
          - `credit` string — The _id of the set of credits used for the booking.
        - `coins` BookingCoinDto[], required — Coin credits applied to offset this fee.
          - `_id` string — The `_id` of the coin credit used to offset the booking cost.
          - `count` number — The number of coins deducted from the member's coin balance.
      - `cancellation` CancellationPolicyDto
        - `conditions` CancellationConditionDto[], required — Time-based cancellation conditions, ordered by hours before the booking start.
          - `hours` number — The minimum number of hours before the booking start time at which this cancellation condition applies.
          - `cancellationFeePercent` number — The percentage of the booking price charged as a cancellation fee when cancelling within this time window.

---

[API](https://skmtc.dev/officernd/apis/authentication-api.md) · [All operations](https://skmtc.dev/officernd/apis/authentication-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/officernd/authentication-api/revisions/6bcd33dc648e/schema)
