Kaizen
Browse modulesCheckoutcheckout/serverInterfaces

Interface: CheckoutFeatureDeps

Defined in: server/checkout/deps.ts:74

Properties

clock

clock: ClockPort;

Defined in: server/checkout/deps.ts:79

Injectable now() for placement/status timestamps (deterministic tests).


getActorId

getActorId: () => string | null;

Defined in: server/checkout/deps.ts:77

() => string | null → audit + status_updated_by (proposal §Factory).

Returns

string | null


priceCart?

optional priceCart?: PriceCart;

Defined in: server/checkout/deps.ts:104

Consumer pricing adapter (proposal §Pricing injection) — used ONLY by CartService (getPricedCart/finalize re-price the cart through it). Optional here so the other services (Order/Payment/Refund) construct without it, exactly as they do today; the stage-8 factory always supplies it. CartService throws a clear error when a cart-pricing op runs with no adapter configured.


providers

providers: PaymentProviderRegistry;

Defined in: server/checkout/deps.ts:88

provider key → adapter registry (proposal §Factory: providerRegistry — the consumer registers its stripe/worldpay/manual adapters). Required, not optional: the stage-8 factory requires it, and an unset registry should fail at construction, not at the first tender op.


randomBytes

randomBytes: (n: number) => Uint8Array;

Defined in: server/checkout/deps.ts:81

CSPRNG for order codes — injectable so collision-retry is testable.

Parameters

ParameterType
nnumber

Returns

Uint8Array


refundPolicy

refundPolicy: RefundPolicyOption;

Defined in: server/checkout/deps.ts:95

Refund authorization gate (proposal §Factory: REQUIRED — the decision table advertises a role-gated authorize step; an optional gate that silently defaults open is not a control). 'allow-any-actor' is the explicit opt-out. RefundService.authorizeRefund consults it.


repos

repos: CheckoutRepositories;

Defined in: server/checkout/deps.ts:75

On this page