AbsoluteJS

@absolutejs/wallet-stripe

@absolutejs/wallet-stripev0.4.4betaCommerce & Growth

Stripe Checkout funding, verified webhook normalization, refunds, and dispute actions for @absolutejs/wallet.

#Installation

BASH
bun add @absolutejs/wallet-stripe

#Capabilities

Overview

Stripe Checkout funding and webhook normalization for @absolutejs/wallet.

Wallet is a required host peer (>=0.9.1 <0.10.0) and is externalized from the adapter build. The host therefore owns one Wallet and transitive Agency runtime; this adapter tests against exactly Wallet 0.9.1.

The package publishes an AbsoluteJS Manifest contract 2 implementation of wallet/funding-adapter, including its Stripe SDK and secret requirements, so hosts can discover and wire it without maintaining a provider-specific registry.

Show 3 more

toWalletFundingEvent() bridges a verified normalized action into Wallet 0.7's atomic provider-event contract. The wallet store owns idempotency, double-entry application, liability balances, dispute freezing, and reviewed reactivation; the Stripe adapter never mutates host state itself. verifyAndNormalizeWebhook() keeps the provider event type inside the adapter, and Checkout returns only the stable hosted-session ID and URL rather than a Stripe SDK object.

The adapter creates closed-loop funding Checkout sessions, verifies Stripe signatures, and converts paid sessions, final refunds, disputes, and won disputes into stable, idempotent wallet actions. It never mutates an application database: the host applies the action through its wallet store in the same transaction and validates that the provider identity belongs to the local owner.

Live marketplace funding should remain disabled until the payment provider has approved the application model. A successful client redirect is never proof of payment; only a verified webhook action may credit a wallet.

Outcomes

What you can build

Build on the supported package contract

Use @absolutejs/wallet-stripe through its supported public entry points.

Hardening checklist

Production guidance

Make every external boundary explicitPin the deployed @absolutejs/wallet-stripe version, replace example or memory-backed dependencies with durable implementations, bound external calls, protect credentials, and emit enough evidence to retry or recover safely.

Follow in order

Troubleshooting path

1
Trace from the first failed boundary
Reproduce the smallest canonical @absolutejs/wallet-stripe example, confirm the supported entry point and version in the API explorer, then inspect the first boundary that did not produce its documented result.

#Public entry points

Supported entry points declared by this package manifest.

Package entry point declared in package.json.

@absolutejs/wallet-stripe@absolutejs/wallet-stripe/manifest@absolutejs/wallet-stripe/manifest.json

#Package commands

Scripts declared by this package manifest.

bun run buildrm -rf dist && bun build src/index.ts src/manifest.ts --root ./src --outdir dist --sourcemap --target=bun --external @absolutejs/wallet --external '@absolutejs/wallet/*' --external stripe && tsc --project tsconfig.build.json && absolute-manifest emit
bun run check:packagebun run typecheck && bun run test && bun run build
bun run testbun test
bun run typechecktsc --noEmit

#API reference

Search the declarations exported by the current package type files. Expand a symbol to inspect its source-backed signature.

7 symbols
StripeWalletMetadatatypePermalinkSource
TS
type StripeWalletMetadata = {
    userSub: string;
    ownerId: string;
};
Exported from @absolutejs/wallet-stripe