Private beta

Request beta access

Interagentic is in private beta. Leave your email and we'll send you an access key when there's room.

Interagentic
Protocols

Credits

How a service asks for payment, how an agent escalates to a human, and what a credit actually is. Specification v0.1.

Status v0.1

Credits are prepaid access to services provided or resold by The Interagentic Company. They are a unit of account inside a closed loop with a single issuer.

A credit is not a currency and not electronic money. It is redeemable only with The Interagentic Company and the providers it resells, cannot be transferred between accounts, and cannot be redeemed for cash. This protocol describes how an agent discovers a price and obtains a human's approval — it is not a payment network and does not move funds between parties.

1. Asking for payment

When an action costs credits, the service answers 402:

HTTP/1.1 402 Payment Required
X-Payment: interagentic-credit; amount=9.00
Link: <https://id.interagentic.dev/approve/4c7e…>; rel="approve"
Content-Type: application/json

{
  "error": "payment_required",
  "asset": "interagentic-credit",
  "amount": "9.00",
  "description": "2 × Classic popcorn",
  "approveUrl": "https://id.interagentic.dev/approve/4c7e…"
}
FieldRequiredNotes
assetyesAlways interagentic-credit. Not an ISO currency code.
amountyesDecimal string, in credits.
descriptionyesShown to the human. Say what is being bought.
approveUrlyesWhere a person can authorise this.

The X-Payment header carries the same information for clients that stop at headers. The Link relation approve is the machine-readable route to the same URL.

2. Escalating to a human

The approval URL is deterministic, so an agent can also construct it without a round trip:

https://id.interagentic.dev/approve
  ?service=popcorn.club
  &amount=9.00
  &reason=2+bags+of+Classic
  &state=<opaque>

A client SHOULD print it rather than retrying, and SHOULD exit non-zero so a supervising process notices.

402 Payment Required — 9.00 credits
  Ask your human to approve a budget:
  https://id.interagentic.dev/approve/4c7e…

3. Approvals

An approval is held by the broker, not by the service and not by the agent.

FieldTypeRequiredNotes
servicestringyesExactly one domain
limitnumbernoCeiling for the period; omit for a single charge
periodstringnoonce, daily or monthly
expiresAtstringnoHard stop

An agent can read its own approvals and can never widen them. Revocation takes effect immediately.

npx interagentic credits
npx interagentic credits ledger --limit 25

4. Settlement

After the human approves, the agent repeats its original request unchanged. The service verifies the approval with the broker and, on success, records the charge against the agent's identity — so a statement shows which agent triggered what, and a single agent can be revoked without touching the others.

09-17  popcorn.club   2 × Classic    9.00
09-16  extraorbital   mongo/orders   1.20

5. Relationship to x402

The shape follows the x402 convention for machine-payable endpoints: a 402 carrying a price and a way to satisfy it, retried unchanged once satisfied. A client that already implements x402 needs little new code.

The difference is what is being settled. x402 typically denominates in a transferable asset. Here the asset is interagentic-credit, which never leaves the issuer's loop; approval is an authorisation recorded by the broker, not a transfer between parties.

On this page