Documentation menu

TransactKit-Prov1.0.0

TransactKit-Pro one-time payments

Create Customers and one-time Stripe Checkout Sessions, track local payments, read catalogue data, and issue full or partial refunds.

Updated

Create one-time Checkout

POST /api/checkout/sessions accepts positive integer minor-unit money, a 3-letter currency, description, stable businessReference, unique attemptReference, optional Customer identity, metadata, and an optional Automatic Tax override.

  • customerEmail and stripeCustomerId are mutually exclusive.
  • The application creates one logical Payment per business reference and attaches the latest Checkout attempt.
  • An open attempt is retrieved and reused; an expired or failed attempt requires a new attempt reference.
  • The Stripe idempotency key is derived from the local Payment UUID and attempt reference.

Read the local payment projection

GET /api/payments/{id} reads the local Payment state synchronized by Checkout and refund webhooks. It includes the logical business reference, latest Stripe identifiers, Checkout state, amount, currency, payment status, and cumulative successful refund total.

Create and retrieve refunds

POST /api/payments/{id}/refund creates a full refund when amount is omitted or a partial refund when a positive remaining amount is supplied. The required reference forms a stable Stripe idempotency key with the Payment UUID.

  • Multiple partial refunds are supported up to the remaining paid amount.
  • Refund creation locks the Payment, upserts the local Refund record, and recomputes the cumulative successful total.
  • GET /api/refunds/{id} retrieves the authoritative Stripe Refund and includes a local Payment UUID when mapped.

Read Products and Prices

The Product and Price endpoints read Stripe-managed catalogue data and support cursor pagination. Price responses include recurring interval, interval count, usage type, and Meter ID where Stripe supplies them.