Skip to main content

Recipes

Quick, self-contained solutions for specific tasks. Each recipe assumes you have an active agent with an SDK key. For initial setup, see Quickstart.

Agent Frameworks

Both skill flavors below rely on conto-check.sh, which in turn requires curl, jq, and python3 on PATH. curl and python3 ship with macOS and most Linux distros; install jq via your package manager. python3 powers the temporary browser callback used by conto-check.sh setup.

Install the OpenClaw Skill

Use this when your OpenClaw agent already has wallet tools and you want Conto to become the policy gate. Review a payment that is waiting for the assigned human owner:
Use the listed approvalRequestId. The OpenClaw skill shows the payment details and requires the human user’s explicit decision before submitting it. A final managed-wallet approval returns the receipt directly. If the response contains nextAction.type: "EXECUTE_EXTERNALLY", execute those exact transfer fields with the OpenClaw wallet and confirm the returned hash:

Install the Hermes Skill

Use this when you want Hermes-native skill installation with the same Conto policy and approval controls. Use --force only after reviewing the install scan.

Setup

Connect an Agent via API

First fetch a membership id for the human or service account that should own the agent:
Then create the active agent with that members[].id:
Returns the agent ID. Use an organization API key (conto_...) for this call and include the intended owner’s ownerMembershipId.

Generate an SDK Key via API

Copy the key from the response. It’s only shown once.

Create a Managed Wallet

The response includes the wallet ID and onchain address. Use the wallet ID when linking it to an agent.
If you omit allowedDays, the wallet link is active every day. Send a narrower list, such as ["Mon", "Tue", "Wed", "Thu", "Fri"], only when you intentionally want weekend payments denied.

Check Agent Setup

Verify the agent is correctly configured with wallets and policies:

Payments

Request and Execute a Payment

Two calls: request (policy check) → execute (onchain transfer).

Handle a Required Payment Action

Some merchant payments require the user to complete an additional step before settlement. In that case, the payment request returns HTTP 402 with status and code set to ACTION_REQUIRED and a single actionUrl.
Open actionUrl for the user. After they finish, check the original requestId; do not submit a new payment or execute the original request until its status allows it.

Accept Agent Payments Through a Merchant Gate

Create a hosted gate for your merchant organization:
Then let a buyer agent hit the public gate URL with the merchant:purchase scope:
The gate returns a settlement result; a deny or approval result with stable reasonCodes, readable reasons, and nextAction; or ACTION_REQUIRED with an actionUrl. An idempotent retry while settlement is still in flight returns HTTP 202 with status: "PROCESSING" and can include the transaction explorer link when it is available.

Check Transaction Status

Returns one of approved, declined, review_required, action_required, processing, completed, failed, or expired.

List Recent Transactions


x402 and MPP Endpoint Calls

The pre-authorize → record → budget/services flows are documented once, with full request and response shapes, in the SDK reference:
  • x402 Payments: pre-authorize, record (including batch), budget, services
  • MPP Payments: pre-authorize, record settlements, budget, services
For both protocols, record endpoints use flat top-level settlement fields and optional batchItems for per-call detail. Do not send a top-level payments array. The policy recipes below show how to set the guardrails those endpoints enforce.

Approve and Confirm an External Wallet Payment

Use this flow when your agent holds its own keys and Conto should only authorize the spend.

Policies

Limit Agent to $50/Day

Then assign to agent:

Require Approval Above $100


Block Payments Outside Business Hours


Allowlist Specific Recipients


Cap x402 API Spending


Restrict to Allowed x402 Services


Cap MPP Session Deposits


Restrict MPP to Allowed Services


Approvals & Trust

Look Up Trust for a Counterparty Address

Requires the network:read scope. Returns normalized trust information, a relationship summary, aggregate transaction history, and an active risk-signal count.

Require Approval for Large Payments and Use Slack for Review

The fastest production pattern is:
  1. Create an approval threshold rule:
  1. Configure a Slack approval channel:
See /guides/external-approvals for the full Slack setup and approval action flow.

Monitoring

Get Agent Spending Summary


Get Wallet Balance

Returns all linked wallets with current balances.

List Active Alerts


TypeScript SDK Equivalents

The recipes above use curl. Here are the payment operations in TypeScript using the SDK:
The Conto class provides conto.payments for agent payment operations. For admin operations (agents, wallets, policies) use ContoAdmin, see the Admin SDK. For x402 and MPP, use the REST endpoints in the x402 and MPP SDK references; for transaction listing and wallet queries, use the curl recipes above.

Choose Integration

SDK vs Agent Skills vs x402 vs MPP

Quickstart

Full setup walkthrough

x402 Payments

Pay for APIs with x402

MPP Sessions

Session-based micropayments

Approval Workflows

Add review and escalation controls

Trust Scoring

Use counterparty trust as a control surface