timerise-ai

Ledger Wallet — Development skill for Claude Code

Development community

Agent Skill: build a customer wallet as an append-only ledger with a balance per currency: Stripe Checkout top-ups, orders paid from the wallet, by card or split between them, holds captured when the.

How to install Ledger Wallet

This entry records only its repository, not the path inside it, so there is no exact command to give. Open timerise-ai/ledger-wallet and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Ledger Wallet does

Agent Skill: build a customer wallet as an append-only ledger with a balance per currency: Stripe Checkout top-ups, orders paid from the wallet, by card or split between them, holds captured when the card pays, refunds to source, staff adjustments, idempotent webhooks, in Next.js App Router on Firestore or Postgres

Alternatives in Development

  • Stripe — Payments Stripe integration with best-practices skill 14k ★
  • Bypass 403 — Probe a 403/401 endpoint with the most-paid bypass tricks (header injection, path encoding, method swap, WAF f 4.5k ★
  • Cashclaw — An autonomous agent that takes work, does work, gets paid, and gets better at it 973 ★

README

ledger-wallet

[![Agent Skills](https://img.shields.io/badge/Agent_Skills-open_format-059669)](https://agentskills.io) [![skills.sh](https://img.shields.io/badge/skills.sh-npx_skills_add-059669)](https://www.skills.sh) [![Claude Code](https://img.shields.io/badge/Claude_Code-compatible-059669)](https://docs.claude.com/en/docs/claude-code/skills) [![Codex CLI](https://img.shields.io/badge/Codex_CLI-compatible-059669)](https://developers.openai.com/codex/skills) [![Gemini CLI](https://img.shields.io/badge/Gemini_CLI-compatible-059669)](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/skills.md)

An [Agent Skill](https://agentskills.io) that teaches an agent to build a **customer wallet with a balance per currency** in a **Next.js App Router** app: stored credit topped up through Stripe Checkout, orders paid from the wallet, by card, or split between the two, refunds that return each part to where it came from, staff adjustments with a required reason, and a history that explains every balance. Firestore or Postgres; any ISO currency, with the list passed as the skill argument and USD by default.

Storing a number is the easy half. The hard half is keeping it right while requests retry, webhooks arrive twice or never, and a card and a balance pay for the same order. The skill keeps **every balance as the sum of an append-only ledger, with every movement keyed by a ref derived from what caused it**, so any repeat replays the first result; and it **holds a mixed payment's balance part until the card pays**, so no money leaves the wallet for an order that never happens.

This skill was written by the engineer who has shipped this module. The earlier implementation it was audited against was the stored-credit balance of a multi-location venue-booking system. The templates hold the properties a wallet has to hold: a top-up is credited once, for what Stripe collected, however often the event arrives; a wallet payment commits with its order or not at all; a ba