# How Base Pay Delivers 1-Step Crypto Payments **Published by:** [Base Engineering Blog](https://blog.base.dev/) **Published on:** 2025-12-09 **URL:** https://blog.base.dev/1-step-crypto-payments ## Content TL;DR: Introducing a new standard for one-step crypto payments. Try it on Shopify today using Base Pay here, and start building with it here.Payments are one of the most exciting areas in crypto today, but the actual experience of paying with crypto leaves a lot to be desired. Generally, it is a two to three step process, requiring a user to switch context between their wallet and the app where they are paying multiple times:Connect walletSwitch network (if needed)Sign Crypto payments are constrained by wallet APIs and UX patterns that were built for a different era: one in which users were connecting a wallet to an app for a long lived session. For onchain payments to succeed at scale, we must provide something far simpler. Today, we're excited to introduce a new standard for one-step crypto payments. It's built on open standards that are available to anyone, ready to be adopted industry-wide. Try it on Shopify today using Base Pay here, and start building with it here. There are three innovations powering this experience:ProlinksStateless InteractionsCallbacksLet's dive into each.1. ProlinksProlinks are a new standard (ERC-8050) for representing JSON-RPC requests in a highly compressed URI. There have been several previous attempts to standardize a URI format for wallet requests. However, past ERCs have been too opinionated, e.g. assuming that the URI represents a transaction. Prolinks are generic: allowing communication about any existing or future wallet APIs. They are also size efficient, leveraging protocol buffers and Brotli compression. 2. Stateless InteractionsThis simplified payments flow also requires wallet APIs that can function without an existing app connection. Historically, wallets will reject API calls like eth_sendTransaction if the user does not have an existing connection to the app. For one-time interactions like payments, this leads to a very cumbersome experience of having to connect and pay as separate steps. EIP-5792’s wallet_sendCalls dropped the requirement of a from address, allowing apps to make transaction requests without knowing anything about the user. This leads to better experiences and is also more privacy friendly. wallet_sign (ERC-7871), used by Base Pay on Shopify, works the same way; users can skip the unnecessary setup and pay immediately3. CallbacksFinally, the wallet needs a way to share info (e.g. status updates, transaction hash, signed data, etc.) back to the app. The web2 world has a time-tested solution: callbacks. We bring callbacks into the onchain world via a new EIP-5792-compliant capability: data callback. (This is the same capability powering our Profile feature for Base Account!) Start building with Base Pay Try the new Base Pay experience here, and start building with the developer playground here. We’re excited to collaborate with other wallets and payment providers to see these standards improved and adopted.Follow us on social to stay up to date with the latest: X (Base team on X) | Base App | Discord ## Publication Information - [Base Engineering Blog](https://blog.base.dev/): Publication homepage - [All Posts](https://blog.base.dev/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@base-engineering-blog): Subscribe to updates - [Twitter](https://twitter.com/base): Follow on Twitter