Frag lets users pay with fragmented balances across chains while your app receives one clean settlement. Install the SDK. Create a payment intent. Receive exactly what you requested.
npm install @fragmentpay/react @fragmentpay/serverimport { FragmentPayProvider, FragmentPayCheckout } from "@fragmentpay/react";
export default function Checkout({ intentId }: { intentId: string }) {
return (
<FragmentPayProvider publicKey={import.meta.env.VITE_FRAG_PUBLIC_KEY}>
<FragmentPayCheckout
intentId={intentId}
onSettled={(p) => console.log("Paid:", p.id)}
onError={(err) => console.error(err)}
/>
</FragmentPayProvider>
);
}Specify amount, currency, settlement chain, token, and wallet. Frag returns a client secret.
User connects wallets. We scan balances, pick the cleanest combination, and sign one checkout.
Same-chain swap, cross-chain intent, or fallback session. Merchant receives the exact output.
Your users do not need the right token. They just need enough value. Turn ETH on Base, USDC on Solana, BONK, and forgotten Arbitrum USDT into one usable checkout.
Multiple tokens on one chain executed in a single real transaction.
One signed intent. A solver routes liquidity and lands the exact output.
Multi-route session with clear progress when solver liquidity is unavailable.
No subscriptions. No setup fees. You only pay when a payment lands.