@lssm-tech/integration.provider-payments
Website: https://contractspec.io
Server-side Stripe and PayPal payment-platform implementations for ContractSpec.
Usage
Import the root entrypoint for provider-neutral contracts, or import a concrete server implementation from ./impls/stripe-payments or
./impls/paypal-payments.
Both providers expose explicit capabilities for customers, saved payment methods, checkout, payments, subscriptions, invoices, disputes, payouts, marketplaces, and verified webhooks. Call discoverCapabilities() before using account- or region-dependent operations.
All mutations fail closed unless the host supplies a tenant-scoped actor, idempotency key, and unexpired authorization decision scoped to the exact operation, resource, amount, environment, and provider account. An injected authorizer can impose additional vertical policy; it cannot weaken or broaden the per-call decision.
The default test suite is credential-free. Opt-in sandbox smoke tests reject live credentials and production endpoints.
Canonical creator settlement
./creator-settlement bridges existing Stripe/PayPal marketplace capabilities to the canonical creator wallet. The host resolves scoped destinations and independent payment authorization, persists provider receipts, and supplies verified webhook or manual settlement evidence. Accepted or pending transfers remain unresolved. Micro-unit conversion is exact; fractional minor units and unsafe numeric ranges are rejected rather than rounded away. Existing Stripe API defaults are preserved.
Compatibility
This package owns the payments implementation slice split out of @lssm-tech/integration.providers-impls. The legacy package continues to re-export these subpaths for existing consumers.
This release intentionally replaces the previous Stripe-shaped method surface. See MIGRATION.md for the operation and money-field mappings.
When apiVersion is omitted, the Stripe adapter uses the version pinned by the installed SDK, matching its generated types. The current locked Stripe 22.6.1 SDK uses 2026-08-26.dahlia; this replaces the stale July 2026 fallback. Explicit SDK-supported apiVersion options and injected Stripe clients remain supported. Review Stripe API compatibility when updating the SDK lockfile.
The explicit catalog version 2026-07-29.dahlia remains accepted and is passed unchanged to Stripe. This prevents an SDK typing update from silently changing the version selected by the integration factory. The compatibility assertion is confined to SDK construction, following Stripe's documented
older API version support. It does not claim complete live payment-flow qualification for both versions.