Skip to main content
1

Create your account

Sign up at app.reinx.ai and create your organization. You can explore the dashboard and configure projects, teams, and policies right away — financial operations unlock once identity verification (KYC) completes.
2

Fund your treasury

Add funds from Funding in the dashboard. Bank transfers (ACH/wire) are free; balances are held as USD-pegged stablecoins and displayed in dollars.
3

Create an agent

From the dashboard, create an agent: give it a name, pick a team, set its budget and approval threshold. The agent gets its own non-custodial crypto wallet automatically.When it’s created, copy the agent’s API key — it starts with sk_reinx_live_ and is shown once. This is the only credential your agent needs; it never touches wallet keys.One key = one agent. Bots sharing a key share that agent’s payment history (which affects network selection) and budget. Use separate agents and keys for independent histories and budgets.
4

Connect your agent via MCP

Add the Reinx MCP server to your agent’s configuration:
Or with Claude Code:
5

Make the first payment

Your agent can now check its spending capacity and use request_wallet_payment, the default way to pay within the rules you set:
amount_cents and idempotency_key are required. All MCP input and output fields use snake_case.For your first payment to a new EVM address, caip2 is required. It accepts a CAIP-2 id or case-insensitive network name such as base. Do not guess the network: ask your human or the recipient, and check allowed_networks from get_spending_rules or get_agent_status. Later omission uses this agent’s settled history only if that address has exactly one network; a Solana-format address can infer Solana. An explicit network always wins. A new EVM recipient or ambiguous history returns CHAIN_REQUIRED with allowed networks; ask, then retry with caip2 and the same idempotency_key. Do not use a new key after a timeout or UPSTREAM_ERROR either.Use spendable_now_cents and limited_by from check_balance or get_agent_status for the enforced budget and limit gates. Both fields are nullable: if capacity cannot be read, both are null and the optional boolean capacity_unavailable is true. The flag is omitted after a successful capacity read. Wallet holdings and account data are read separately from capacity. Null capacity is unknown; retry the capacity read later. The wallet normally holds little or no balance because payments are funded just in time; its live balance is not the affordability gate. Funding can still be refused when the payment runs.A $0 agent wallet does not block payments. Supplying amount_cents to check_balance adds funding_check: { amount_cents, org_can_fund, reason, checked_at }, a coarse yes/no/unknown treasury signal with no treasury balance. It does not reserve funds; funding is re-checked at execution and ORG_TREASURY_INSUFFICIENT remains possible.Payments within the auto-approve threshold normally start executing. Other policy rules can still route them to review or deny them. An over-threshold payment normally returns status: pending with a request_id and appears in the human’s Approvals queue.Poll get_payment_status with that request_id, honoring retry_after_seconds while pending or executing. Approval runs the payment automatically; do not submit another payment. Stop polling on settled, failed, denied, or expired. The poll tool can also return not_found; check the id in that case. A settled payment is confirmed final on chain and normally includes on_chain_tx_hash. If the provider’s hash could not be captured, the hash is null and the payment is still final; stop polling.Executing is still in flight, not settled. The delay is about 10 seconds for a new executing payment, then 30 seconds; pending starts at 30 seconds and backs off to 300 seconds as it waits. For an agent-side long-poll, add wait_seconds (integer 0–60, default 0); it returns early on a status or step change or a terminal result.Use submit_approval_request only when you deliberately want a human to review before any spend, including below the threshold. It uses the same payment fields and network rules, needs only approval:request, and still enforces budget and policy limits.
TypeScript and Python SDKs are coming soon. Today, agents connect through the MCP server and humans/automations use the REST API.

What’s next

  • Payment Workflow — the request → poll → learn loop your agent should implement
  • Developer Webhooks — today’s push option for your backend, including approval.completed; MCP resource subscriptions are a later design path with no promised date
  • Spending Policies — every control you can set
  • Approvals — how the human-in-the-loop works