Portal

Portal

Portal Team

Share the love

Want to stay updated? Subscribe below to keep in touch.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="mask0_996_165" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="2" y="1" width="46" height="46"> <path d="M47.2941 1.41177H2.11768V46.5882H47.2941V1.41177Z" fill="white"/> </mask> <g mask="url(#mask0_996_165)"> <path fill-rule="evenodd" clip-rule="evenodd" d="M16.2353 4.2353C16.2353 2.67591 17.4995 1.41177 19.0589 1.41177H44.4706C46.0301 1.41177 47.2941 2.67591 47.2941 4.2353V29.6471C47.2941 31.2065 46.0301 32.4706 44.4706 32.4706H38.8236V12.7059C38.8236 11.1465 37.5595 9.88236 36 9.88236H16.2353V4.2353ZM4.94121 15.5294C3.3818 15.5294 2.11768 16.7935 2.11768 18.353V43.7647C2.11768 45.3242 3.3818 46.5882 4.94121 46.5882H30.353C31.9124 46.5882 33.1765 45.3242 33.1765 43.7647V18.353C33.1765 16.7936 31.9124 15.5294 30.353 15.5294H4.94121Z" fill="currentColor"/> </g> </svg>
Product Updates
4 min read

Introducing Batched Transactions on Portal

Users shouldn't have to sign three times to do one thing. Approve a token, then swap it, then send it, and every step is another popup, another wait, another chance to drop off. With batched transactions on Portal, you can bundle multiple onchain actions into a single transaction that a user signs once.

July 1, 2026

Introducing Batched Transactions on Portal

One signature, many actions

A batched transaction groups several calls together and executes them as one atomic unit. Either everything in the batch succeeds, or nothing does. That removes a whole class of half-finished states, like an approval that goes through while the swap behind it fails.

For your users, the experience is simple: one confirmation instead of a sequence of them. For your product, it means flows that used to take several screens can happen in a single step. Approve and swap. Claim and stake. Pay an invoice and settle a fee. The actions that naturally belong together now ship together.

Gas paid in stablecoins

Native gas tokens are one of the most persistent points of friction in onchain UX. A user holds USDC and wants to send USDC, but the transaction won't go through until they also hold the chain's gas token. That is a confusing detour, and for payments products it can be a dealbreaker.

Batched transactions on Portal let gas be paid in ERC20 stablecoins. Your application can sponsor gas for a user and be repaid in stablecoins as part of the same batch, so the cost is settled in the asset everyone is already using. Users transact with the token in their wallet. They never have to think about gas at all.

One-tap yield

Earning yield looks like one action to a user. Move idle balance into a position that earns. Under the hood, it rarely is that simple. The token they hold isn't always the token the protocol wants, so first there's a swap. Then the protocol needs an approval before it can touch those funds. Only then can the deposit go through. Three transactions, three confirmations, three moments where a user can hesitate, get confused, or walk away, all to do the one thing they actually asked for.

This is exactly the friction holding back the neobanks and fintechs racing to put yield in front of their users. An "earn 5%" button shouldn't open into a three-step gauntlet of wallet prompts.

With batched transactions on Portal, the swap, the approval, and the deposit collapse into a single signature. The user holds USDC, taps once, and lands in the position. The routing to the right token, the approval, and the entry all execute atomically. Either they're earning, or nothing happened and their balance is untouched. No half-finished state where the approval cleared but the deposit failed, and no native gas token to source along the way. What feels like one action to your user finally is one action.

Built on MPC and account abstraction

This is the combination Portal has been building toward. MPC gives every user a self custodial wallet with no seed phrase and no single point of compromise. Account abstraction gives that wallet the programmability to batch calls and abstract gas. Together they let you offer a wallet that is both genuinely user owned and genuinely easy to use.

Under the hood, the flow is straightforward to integrate. You build a user operation that describes the batch, sign it through Portal's MPC signer, and broadcast it onchain. The signing keys stay split across parties the entire time, so the security model is exactly the same as every other transaction on Portal.

What you can build

  • One-tap yield. Swap, approve, and enter a position in a single confirmation, so "earn" is one tap instead of three.
  • Payments that settle in one step. Pay a merchant and cover the network fee in stablecoins, all in a single confirmation.
  • Trading flows without the approval dance. Approve and execute a swap together so users aren't bounced between two prompts.
  • Sponsored onboarding. Let new users take their first onchain action immediately, with gas handled in the background and reconciled in stablecoins.
  • Any multi step action. Wherever your product chains calls together today, batch them into one transaction your user signs once.

Get started

Batched transactions are available through the Portal API, with SDK support rolling out. If you're building payments, trading, or any flow where users do more than one thing at a time, this is the cleanest way to ship it.

Reach out to the Portal team to get access, and check the docs for the build and broadcast user operation endpoints.