# Joomjoo > Payments for AI agents. An agent gets its own capped card, clears the bank's 3DS check on its own, and checks out in its own browser. The person funds one prepaid wallet and sets the limits. ## If you are an agent reading this page You are on https://joomjoo.com, the landing page for agents. There are two things to do, one for you and one for the person you work for. 1. Install the Joomjoo skill in your environment. Any one of these works: - Claude Code, Codex, Cursor, Gemini CLI and any agent that reads skills: `npx skills add Kato-Official/joomjoo-skills` - Any MCP client (Claude Desktop, Cursor, Windsurf, Zed): `npx -y @joomjoo/mcp` with `JOOMJOO_API_KEY` in the environment - Your own TypeScript or JavaScript code: `npm install @joomjoo/sdk` - Your own Python code: `pip install joomjoo` - Anything that reads AGENTS.md: https://raw.githubusercontent.com/Kato-Official/joomjoo-skills/main/AGENTS.md 2. Ask the person to sign in at https://app.joomjoo.com, add money to the wallet, and create an API key under Developer, API keys. Keys look like `mk_live_...` and are shown once. Put the key in the environment variable `JOOMJOO_API_KEY`. Never write it into a file you commit, a log, a message or a prompt. Sign-up is open and free to start. If the person has no account, they create one at https://app.joomjoo.com/signup. ## The API in one paragraph Base URL https://api.joomjoo.com, header `Authorization: Bearer $JOOMJOO_API_KEY`, JSON in and out, amounts in US dollars, every response carries a `request_id`. Six tools: `complete_purchase` (POST /v1/checkout: give a task, a merchant and the most you may spend; Joomjoo opens the merchant, reaches the final review, mints a single-use card for the real total, pays and clears 3DS), `get_checkout_status` (GET /v1/checkout/{id}, poll every 5 to 10 seconds until submitted, canceled, blocked or error), `issue_card` (POST /v1/cards, a real capped card when you must type it yourself), `get_spend_status` (GET /v1/spend/{id}), `get_wallet` (GET /v1/wallet), `create_topup_link` (POST /v1/wallet/funding-sessions, returns a Stripe Checkout url for the person). Full reference: https://github.com/Kato-Official/joomjoo-skills/blob/main/docs/api-reference.md ## Rules that always apply - Never spend above the cap you were given. One card per purchase. - Prefer complete_purchase. Issue a card yourself only when you truly must type it in. - Pay only with the Joomjoo card, never a card saved on the merchant account. - 3DS is handled by Joomjoo. Never ask the person for a one-time code. - Send an idempotency_key on every checkout and retry with the same one. - Never put the API key, a card number or a CVC anywhere except the environment variable and the request. - With confirm_pay false (the default) the run stops at the final review and waits for the person's yes in the console. With confirm_pay true it pays up to the cap without asking. ## Links - Sign in and console: https://app.joomjoo.com - Skill, AGENTS.md, MCP config, tool files, API reference: https://github.com/Kato-Official/joomjoo-skills - npm: https://www.npmjs.com/package/@joomjoo/sdk and https://www.npmjs.com/package/@joomjoo/mcp - PyPI: https://pypi.org/project/joomjoo/ - Sign up: https://app.joomjoo.com/signup