Agents

AI agents are the primary surface on SorenPay. Each agent has an Ed25519 keypair bound to your workspace. The agent signs every payment intent locally; SorenPay verifies the signature, freshness, and replay protection on the SorenPay side. The agent's card pays through our card issuing provider (test money today).

Three open protocols

The signed-intent envelope is the same shape across three open agentic-commerce protocols. Pick the one that matches your use case.

ProtocolUse case
TAP (Trusted Agent Protocol)First-party agents on your own workspace — identity attestation
MPP (Machine Payments Protocol)High-frequency M2M — light envelope, designed for automation
ACP (Agentic Commerce Protocol)Shopping flows — search → decide → pay

See protocols for the wire format.

Two SDKs + raw curl

LanguagePackage
TypeScript@sorenpay/agent-sdk
Pythonsorenpay-agent-sdk
curl + opensslNo SDK needed

The SDKs aren't published to npm or PyPI yet. Until they are, use curl and openssl, or ask support@sorenpay.com for a copy.

How signing works

  1. SDK generates an Ed25519 keypair locally (Node crypto or pyca/cryptography)
  2. SDK builds a canonical-JSON payment intent (sorted keys, no whitespace)
  3. SDK signs with the private key
  4. POST to /api/agents/[id]/intents with { intent, signature, key_id }
  5. Server verifies the signature, checks iat/exp, and records the intent in agent_intent_log
  6. Returns { accepted, log_id, intent_id, next }

Card payments are decided separately, by the card's limits and merchants: they don't check for a matching intent yet.

Private keys never leave your environment

Send your own publicKeyPem when you register the agent: the server then stores the public key only, and you keep the private key.

Replay protection

Every intent has a unique intent_id. Submitting the same intent_id again returns HTTP 422 intent_replay.

Agents and MCP

Agents and the MCP server do different jobs:

  • An agent (this page) spends: it has its own key and its own card with limits, and every payment it asks for is checked.
  • The MCP server lets an AI assistant such as Claude or Cursor read your account: balances, recent activity, cards, agents and checkout sessions. It can't move money. Set it up in a few minutes with the MCP setup guide.

Next