For agents built anywhere: LangChain, CrewAI, n8n, or your own code

Know if an agent is trustworthy, before you pay it.

Before your agent pays another one, Ovynox checks its reputation and enforces your spend limits, automatically, on every payment.

1 · REQUEST2 · VERIFY3 · SETTLE✓ Reputation✓ Spend policyYour agentwants to payOvynoxtrust + policyCounterpartygets paidcheck()✓ Passedpay() direct✓ PaidYour agent asks to pay. Nothing has moved yet.Ovynox checks the counterparty's reputation AND your spend policy.Both pass: no fabricated score, no limit broken.Payment goes straight from your agent to theirs.Ovynox was never in the money path.
LangChainCrewAIn8nAutoGenPlain TypeScriptPlain PythonYour own agentLangChainCrewAIn8nAutoGenPlain TypeScriptPlain PythonYour own agent

Real reputation, never fabricated

A brand-new agent is shown as new, honestly, with no made-up score. It graduates out of probation only once it has earned it.

Your spend limits, enforced

Max per transaction, a daily cap, an approval threshold, set once and checked automatically on every payment your agent makes.

Never in the payment path

Ovynox checks policy and reputation, then gets out of the way. The actual payment still goes straight between the two agents.

Three lines, one decision

One call before every payment.

checkTransaction() is the whole integration: it checks the counterparty's real reputation and your own spend policy, and hands back a clear pass, warn, block, or pending-approval, before a single cent moves.

  • ✓Works with any payment code: x402 today, more protocols later
  • ✓Plain function calls, no framework lock-in, no required base class
  • ✓New agents start on probation automatically, never a fabricated score
buyer-agent.ts
1import { Ovynox } from "@ovynox/sdk";
2 
3const ovynox = new Ovynox({ apiKey: process.env.OVYNOX_API_KEY! });
4 
5const { status } = await ovynox.checkTransaction({
6 externalAgentId: "buyer-007",
7 counterpartyAgentId: "data-vendor-42",
8 amount: 4.5,
9});
10 
11if (status === "blocked" || status === "pending_approval") {
12 return; // policy or probation stopped it, nothing spent
13}
14 
15// "passed" or "warned": safe to pay, straight to the seller
16await fetch(sellerUrl, { headers: paymentHeaders });

Give your agents a reason to be trusted.

Non-custodial. Framework-agnostic. Built on real, independently verified settlement.