Skip to content

Class: CheckoutCoordinator

Coordinates framework-agnostic checkout transitions for the active cart.

Constructors

Constructor

new CheckoutCoordinator(options): CheckoutCoordinator

Parameters

options
cartSession

CartSession

client

ZynoSalesClient

hooks

ZynoSalesHooks

pendingPaymentKey

string

storage

ZynoSalesStorage

Returns

CheckoutCoordinator

Methods

applyDiscount()

applyDiscount(input): Promise<ISalesEcommPublicCart>

Applies a discount code and returns the authoritative cart.

Parameters

input

ISalesEcommCartDiscountCodeInput

Returns

Promise<ISalesEcommPublicCart>


beginCardPayment()

beginCardPayment(): Promise<ISalesEcommCartPaymentSetupResponse | null>

Runs the final policy hook and opens a card-payment attempt. For a zero-due cart it finalizes the order and returns null.

Returns

Promise<ISalesEcommCartPaymentSetupResponse | null>


cancelPaymentAttempt()

cancelPaymentAttempt(attemptId): Promise<void>

Cancels an unneeded payment attempt.

Parameters

attemptId

string

Returns

Promise<void>


completeCardPayment()

completeCardPayment(input): Promise<ISalesEcommOrderResponse>

Records an authorized Stripe PaymentIntent with Sales.

Parameters

input

Pick<CardPaymentSetup, "paymentAttemptId" | "paymentIntentId">

Returns

Promise<ISalesEcommOrderResponse>


getOrder()

getOrder(): Promise<ISalesEcommOrderResponse>

Reads the completed order using the retained order capability.

Returns

Promise<ISalesEcommOrderResponse>


getPaymentAttempt()

getPaymentAttempt(attemptId): Promise<ISalesEcommPaymentAttemptResponse>

Reads one payment attempt for host-managed payment UI/recovery.

Parameters

attemptId

string

Returns

Promise<ISalesEcommPaymentAttemptResponse>


getShippingRates()

getShippingRates(input): Promise<ISalesEcommShippingRatesResponse>

Requests backend-authoritative shipping rates.

Parameters

input

ISalesEcommCartShippingRatesInput

Returns

Promise<ISalesEcommShippingRatesResponse>


getSnapshot()

getSnapshot(): CheckoutSnapshot

Returns the latest render-safe checkout snapshot.

Returns

CheckoutSnapshot


quoteShippingSelection()

quoteShippingSelection(input): Promise<ISalesEcommShippingSelectionQuoteResponse>

Quotes a complete package-rate selection with backend-authoritative pricing.

Parameters

input

ISalesEcommShippingSelectionQuoteInput

Returns

Promise<ISalesEcommShippingSelectionQuoteResponse>


recoverPayment()

recoverPayment(): Promise<ISalesEcommOrderResponse | null>

Recovers a paid order or a previously authorized payment attempt after a reload.

Returns

Promise<ISalesEcommOrderResponse | null>


removeDiscount()

removeDiscount(): Promise<ISalesEcommPublicCart>

Removes the active discount and returns the authoritative cart.

Returns

Promise<ISalesEcommPublicCart>


removeFulfillment()

removeFulfillment(): Promise<ISalesEcommPublicCart>

Removes fulfillment from the active cart.

Returns

Promise<ISalesEcommPublicCart>


setBuyer()

setBuyer(input): Promise<ISalesEcommPublicCart>

Updates buyer identity on the active cart.

Parameters

input

ISalesEcommBuyerInput

Returns

Promise<ISalesEcommPublicCart>


setFulfillment()

setFulfillment(input): Promise<ISalesEcommPublicCart>

Applies fulfillment details and selected shipping rates to the active cart.

Parameters

input

ISalesEcommCartFulfillmentInput

Returns

Promise<ISalesEcommPublicCart>


subscribe()

subscribe(listener): () => void

Subscribes to render-safe checkout changes.

Parameters

listener

(snapshot) => void

Returns

() => void


validateDiscount()

validateDiscount(code): Promise<IValidateDiscountCodeResponse>

Validates a discount code without changing the cart.

Parameters

code

string

Returns

Promise<IValidateDiscountCodeResponse>


verifyAddress()

verifyAddress(input): Promise<ISalesFulfillmentAddressVerificationResponse>

Verifies an address without silently choosing a normalization candidate.

Parameters

input

ISalesEcommAddressVerificationInput

Returns

Promise<ISalesFulfillmentAddressVerificationResponse>

MIT Licensed