@arki/payments

archive

for @arki/[email protected] · Tier 1: the stack

Payments for ARKI apps: a Stripe provider, plans, customers, subscriptions, payments, refunds, dunning and tax.

Version 0.3.0 archive

Install

bun add @arki/[email protected]
Other package managers
npm install @arki/[email protected]
pnpm add @arki/[email protected]
yarn add @arki/[email protected]

Release health for @arki/[email protected]

Doc examples

No example report was recorded for this version.

Open gaps

6 release checks fail · 1 gap was found by demos

  • checkfile-llms-txt
  • checkfile-agents-md
  • checkfile-agent-guide
  • checkreadme-h2-order
  • checkpkg-engines
  • checkfiles-ship-dist-docs
  • Stripe Checkout hardcodes mode: 'subscription', one price, quantity 1 (stripe-provider.ts) found by drop-studio

Used by demos

No demo uses this package yet.

Runtimes

No engines field, so no runtime requirement is declared.

Benchmarks

No benchmarks are published for this version.

README

Payments for ARKI apps: a Stripe provider, plans, customers, subscriptions, payments, refunds, dunning and tax. It ships Drizzle table factories, repositories, services and @arki/journal commands. Routers stay in each consuming app, so the app owns its RPC context and its authorization policy.

Installation

npm install @arki/payments
# or
bun add @arki/payments

Subpath exports

SubpathContents
@arki/paymentsProvider abstraction (BasePaymentProvider, StripeProvider), shared types
@arki/payments/corePlans, customers, subscriptions, payments, webhook events, UserId
@arki/payments/presetsReady-made subscription and RevenueCat flows
@arki/payments/envTyped environment schema for the Stripe keys and notification settings
@arki/payments/dunningDunning campaigns and retry services
@arki/payments/taxStripe Tax integration
@arki/payments/refundsRefund request and approval workflow
@arki/payments/repositoriesAggregate repository factory

Deeper paths such as @arki/payments/core/tables resolve to the compiled file of the same name.

User ids

Every owner column is a UserId, the string type `usr_${string}` exported from @arki/payments/core, with userIdSchema to validate one and userIdFactory to build foreign-key columns. It has the same shape as the user id of @arki/auth, so an app built on that package passes its ids through unchanged. An app with its own user table only needs ids of that shape.

Consuming app integration

Every consuming app must:

  1. Call the table factories with its own pgSchema and a reference to its user id column (see createCoreTables in @arki/payments/core/tables).
  2. Register the resulting Drizzle relations in its relations.ts.
  3. Build its own RPC router from the package's services and the app's protected and public procedures.
  4. Inject env-driven config (STRIPE_SECRET_KEY, notification settings) at app boot, not per request.

License

MIT — see LICENSE.

Public imports

This version has no API index.