A deterministic idempotency key for a checkout attempt. The SAME cart under the same scope (principal) yields the SAME key, so a retried "create payment intent" REUSES the existing intent instead of charging twice; a changed cart yields a new key. Thread this into the processor's idempotency-key header.
Deprecated
@suluk/stripe is DEPRECATED and gutted (C048) — it is now a thin re-export shell over @suluk/payments and will be REMOVED in the next major. Import everything below from
@suluk/paymentsinstead.What moved to @suluk/payments (re-exported here for backward compatibility): the pricing primitives, the Stripe webhook surface (signature verification + the event router), and the Stripe form-encoder/transport. What was DELETED (dead — no consumer): the Stripe usage-billing (Billing Meters), the checkout-param builders, the shipping/tax adapters, the
PaymentProvider/StripeLiketypes, andrestStripe/retrievePaymentIntent. Use@suluk/payments'PaymentConnector(agnostic) orstripeConnectorfor payment flows.