AbsoluteJS

@absolutejs/commerce-wishes

@absolutejs/commerce-wishesv0.2.0-beta.1betaCommerce & Growth

Tokenized Wishes/NMI payments, refunds and verified reconciliation for AbsoluteJS commerce

#Installation

BASH
bun add @absolutejs/commerce-wishes

#Capabilities

Overview

Wishes/NMI tokenized checkout and refund adapter. createWishesPayment accepts private/public keys and optional transaction/query URLs. Raw card details must be collected by the provider; pass only the resulting payment token to the sale operation.

verifySale({ orderId, amountCents }) queries the merchant report and requires one matching USD sale for the exact amount, with no successful refund/void action. Unknown or ambiguous results remain unresolved and must not be retried as new charges. Applications own durable payment-attempt IDs, access control, settlement ledgers, and webhook replay handling. An order reference alone is not a guarantee of gateway idempotency.

Query contract: https://docs.nmi.com/reference/query. Validate the merchant account’s Wishes endpoints and complete its approved sandbox procedure before enabling live payments. Never ship a private key to the browser.

Outcomes

What you can build

Build on the supported package contract

Use @absolutejs/commerce-wishes through its supported public entry points.

Hardening checklist

Production guidance

Make every external boundary explicitPin the deployed @absolutejs/commerce-wishes 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/commerce-wishes 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.

@absolutejs/commerce-wishesPackage entry point declared in package.json.

#Package commands

Scripts declared by this package manifest.

bun run buildbun build src/index.ts --outdir dist --target bun --external @absolutejs/commerce && tsc --emitDeclarationOnly
bun run check:packagebun run typecheck && bun run test && bun run build
bun run testbun test
bun run typechecktsc --noEmit