api_call feature (1 credit), starter plan (100 credits per month), and extra_credits pack (50 credits) in the quickstart. Set LEDGER_API_KEY and LEDGER_API_URL as described there.
Before Checkout
In Developer → Stripe, connect your Stripe test secret key. In Developer → Checkout, set valid success and cancel URLs. In Catalog → Plans, confirm Starter shows Synced before starting Checkout. Create a new customer ID that has not been used for a plan Checkout:Complete a plan Checkout
checkoutUrl and complete payment using a Stripe test payment method. In Customers, wait for the subscription to become Active and the balance to reach 100. The success URL alone is not confirmation: Ledger grants plan credits after a paid invoice webhook.
Complete a credit-pack top-up
checkoutUrl and complete the one-time test payment. The customer detail should show a Paid add-on and 150 available credits. A pack can be purchased without replacing the active monthly plan.
Check usage and confirm idempotency
allowed: true and 150 available credits. Track should return chargedCredits: 1, idempotent: false, and 149 available credits. Send the same track request again: it should return idempotent: true and keep the balance at 149. In Customers → Usage, you can run the same check and track flow through the dashboard.