@playstack/payments
Provider-instance-aware one-time checkout, payment, refund, dispute, and reconciliation projections.
Pro. Covered by the Playstack Pro License. Registry access is required; check preview availability before installing. See package access.
@playstack/payments handles one-time payment state without owning subscriptions, orders, inventory, fulfillment, raw webhook verification, or card collection.
import { createPayments } from '@playstack/payments'
import { stripePayments } from '@playstack/payments/stripe'
const payments = createPayments({
providers: [
stripePayments({ client: storeStripe, instance: 'store' }),
stripePayments({ client: euStripe, instance: 'eu' }),
],
persistence,
events,
ids,
clock,
})Each provider and configured instance is a persisted identity, making multiple Stripe accounts safe to compose. Pass only verified, queued events from @playstack/webhooks to handleWebhook(). The native escape hatch is payments.provider(ref).client.
Use @playstack/payments/prisma for PostgreSQL projections and atomic refund reservations, @playstack/payments/stripe for hosted Stripe Checkout in payment mode, and @playstack/payments/testing for application contract tests.
Install
After confirming preview access, install the package at your application's shared Playstack version:
npm install --save-exact @playstack/payments@0.1.0-beta.1Check the peer requirements below before choosing a runtime or provider.
API entry points and requirements
Reference snapshot: @playstack/payments@0.1.0-beta.1. Import only the entry point your runtime needs. Paths below are relative to the installed package; use Go to Definition in your editor to inspect exact parameters, return types and overloads. Do not import the declaration-file paths directly.
| Public entry point | Declaration file |
|---|---|
@playstack/payments | ./dist/index.d.ts |
@playstack/payments/errors | ./dist/errors.d.ts |
@playstack/payments/prisma | ./dist/prisma.d.ts |
@playstack/payments/stripe | ./dist/stripe.d.ts |
@playstack/payments/testing | ./dist/testing.d.ts |
@playstack/payments/package.json | No TypeScript declaration (asset or metadata export). |
Node.js engine requirement: >=20. This is not a claim that every entry point works in browsers or Workers.
Peer dependencies
This package declares no peer dependencies. Its ordinary dependencies are resolved by the package manager.
For a complete first program, start with Getting started. For API lookup and partial-example conventions, see Reading the reference. Provider failures, lifecycle requirements and application responsibilities remain described in the guide above; types alone do not establish production safety.