
Mayarin
Programmable payments for humans, apps, and agents. Pay with anything, settle your way.
Demo
About
Mayarin is a programmable payment and clearing platform for internet commerce, built around a simple idea: pay with what you have, settle in what you need. Today, moving money across digital assets and blockchain networks still requires users and businesses to think about wallets, tokens, liquidity, swaps, networks, gas, and settlement paths. Mayarin abstracts that complexity behind a unified payment flow and simplify fragmented UI/UX for everyone. A payer whether a human, application, or autonomous AI agent creates a payment intent describing what needs to be paid. Mayarin handles the underlying process of discovering the payment context, determining an appropriate route, executing asset conversion when necessary, and settling the recipient in their preferred asset. For ETHOnline, we are extending Mayarin with agentic payments and intelligent payment routing. The Graph provides onchain data and context used by the payment flow, Uniswap provides liquidity and asset conversion for execution, and Arc provides stablecoin settlement infrastructure. Rather than treating these as separate integrations, Mayarin orchestrates them as parts of a single end-to-end payment lifecycle. We are also exploring how autonomous software can transact safely without simply giving an AI agent unrestricted control over a wallet. Mayarin introduces programmable payment authority, allowing applications and agents to operate within defined spending policies while the platform handles execution and settlement underneath. Our long-term goal is to make the underlying payment rail an implementation detail. Customers should be able to pay using the assets and networks available to them, merchants should be able to choose how they receive settlement, and software should be able to participate in commerce through the same programmable infrastructure. Mayarin is being developed as a real product beyond ETHOnline. The hackathon is being used to build and validate substantial new capabilities around agentic payments, routing, liquidity execution, and stablecoin settlement on top of the existing Mayarin foundation.
How it's made
Mayarin lets a payer pay with whatever supported asset they hold while the merchant receives the exact stablecoin amount they configured. The core abstraction is the PaymentIntent, which keeps four concerns separate that most payment systems collapse into one: the payer's asset, the payment network, the execution route, and the merchant's settlement asset. The engineering core is the exact-output cross-asset flow. The merchant's settlement amount is locked first, Uniswap derives the payer-side maximum backwards from that fixed output, and the payer signs a bounded input with any residue refunded. A payment only advances after the on-chain receipt is read back and matched against the expected token, recipient, and amount successful transaction submission is never treated as proof of payment. Partner integrations The Graph, the settlement indexer queries Subgraph Studio with typed GraphQL for PaymentCompleted, ResidueRefunded, and rail observations, tracking _meta.block.number as its cursor instead of relying on direct RPC log scans. This matters most on Arc Testnet, where fast block production and RPC log-range limits make naïve polling unreliable. Uniswap, the liquidity and execution layer. Both V3 and V2 venues implement one SwapVenue port: on V3, QuoterV2's quoteExactOutputSingle prices the leg and Mayarin encodes SwapRouter02.exactOutputSingle; on V2-style pools — including the Arc Testnet EURC/USDC pair — getAmountsIn prices it and swapTokensForExactTokens executes. Either way the merchant's settlement amount is the fixed side and the payer's spend is the bounded one. Arc, supported as a stablecoin payment and settlement rail: chain configuration, USDC decimal behavior, wallet balances, deposit monitoring, PaymentRouter execution, and settlement confirmation on Arc Testnet. x402 agent payments, an AI agent receives a machine-readable payment requirement, signs one EIP-3009 authorization, and Mayarin verifies, broadcasts, confirms, and settles it through the same clearing engine. No account creation, no gas management on the agent side. Architecture, ports and adapters. Domain packages own the payment-intent lifecycle, quote locking, routing, clearing, the double-entry ledger, idempotency, and the settlement state machine. RPC providers, wallets, subgraphs, liquidity venues, and databases plug in as replaceable adapters. Stack are Bun, Hono, Zod, PostgreSQL + Drizzle, viem. Solidity and Foundry for the PaymentRouter, deposit forwarders, and settlement flows. Astro and React for the merchant dashboard and checkout. The flow that happens in the behind : payer asset → quote and route → bounded execution → confirmed settlement → ledger and merchant receipt