Search projects, hackathons, sponsors and tech

    ← All projects

    LINK - Checkout by LINK

    checkout with any, settle in one

    Demo

    About

    The problem it solves LINK is building programmable FX infrastructure for global businesses. While over $8 trillion has flowed through stablecoins, most institutions aren’t monetizing cross-border FX — leaving behind up to $16 billion in lost margin. Stablecoin payments today run through multiple ramps, each taking cuts — adding 6%+ in fees. We fix that. We help platforms convert into local stablecoins, swap FX onchain at better rates, and offramp in real time — cutting up to 10x in fees versus today’s multi-ramp stablecoin flows. Built on top of a $68T B2B FX market and a $1.2T stablecoin layer, LINK Business is already live across four continents, powering real-time FX and settlement for fintechs and platforms. For Base Batches, we launched Checkout by LINK — enabling merchants to accept stablecoins and settle locally via programmable swaps and abstraction. Backed by advisors from Visa, Circle, Coinbase, and the Ripple DIFC Accelerator, we’re the rails making stablecoin FX revenue-ready. LINK is how stablecoin FX becomes a business model — not just a feature. 👥 Team Members Emmanuel Evarist – CEO Tomisin Leshi – CTO Marvel Ekpo – COO Reks – Design & Product Strategy Tansi – Software Engineer Chris – UI/UX Designer 🔗 Project Links **Website**: [https://linkio.world](url) **Demo:** [https://base.linkio.world](url) **GitHub**: [https://github.com/linkioafrica/payment-widget/tree/checkout-v2.1](url) **Smart Contract**: [https://basescan.org/address/0x1fb93c553ac2b3b79fbafd9da04290b3339aeaef#code](url) **Twitter/X**: [https://x.com/link_io](url)

    How it's made

    Challenges we ran into Problem: Connecting a Base smart contract directly into the frontend checkout flow required syncing wallet state, confirmations, and user feedback. Solution: We abstracted the contract calls behind a simple API layer to improve user experience while transacting. Problem: Some deposits didn’t reflect instantly due to missed webhooks or network delays. Solution: We added retry logic and a manual refresh trigger using socket.io so the system could catch up gracefully without blocking users.