Skip to main content

Overview

Gasless transactions let users pay network fees using ERC-20 tokens (USDC, USDT) instead of requiring native gas (ETH, MATIC). This eliminates a major friction point—users don’t need to hold the native token on every chain.

Basic Gasless Payment

When using the SDK, gasless fee options are automatically displayed if the user’s origin token supports permits:
When the user has USDC (a permit-compatible token), the SDK:
  1. Shows fee options including “Pay gas in USDC”
  2. Requests a permit signature (no approval transaction needed)
  3. Submits via relayer—user’s USDC covers the gas fee

USDC/USDT as Gas Fee Examples

Pay with USDC on Polygon

The user only needs USDC—no ETH required for gas.

Pay with USDT on Polygon

Cross-Chain Gasless

Even cross-chain payments can be gasless if the origin token supports permits:
User pays with USDC on Base → Trails bridges gaslessly → Merchant receives USDC on Polygon.

Permit-Compatible Tokens

Gasless transactions require tokens that implement EIP-2612 (permit):
Native tokens (ETH, MATIC, etc.) cannot be used for gasless since they don’t support permits. Users paying with native tokens will use standard gas.

How Fee Options Work

The SDK automatically fetches available fee options based on:
  • User’s token balances on the origin chain
  • Which tokens support permit signatures
  • Current gas prices and token exchange rates
Users see a “Gas Fee Options” dropdown with choices like:
  • ETH (native gas)
  • USDC ($0.12)
  • USDT ($0.12)
Selecting an ERC-20 option triggers the gasless flow.

Programmatic Fee Selection

You can listen to fee option events:

Gasless Flow Details

  1. Quote Intent — SDK fetches quote including gasFeeOptions with available fee tokens
  2. User Selects Fee — User picks USDC, USDT, or native gas from dropdown
  3. Permit Signature — If ERC-20 fee selected, user signs EIP-2612 permit (no on-chain tx)
  4. Intent Signature — User signs the intent data
  5. Relayer Submits — Trails relayer executes the transaction, deducting fee from user’s balance
  6. Completion — User receives confirmation once destination transaction confirms

Limitations

Smart Contract Wallets: Gasless deposits via permit signatures require EOA (externally owned account) wallets. Smart contract wallets produce non-standard signatures that the current relayer doesn’t support.
The SDK automatically detects smart contract wallets and falls back to native gas flow. Native Token Payments: Sending ETH, MATIC, or other native tokens cannot be gasless—you need native gas to send native gas.

Best Practices

Don’t force gasless. Some users prefer paying native gas (often cheaper at low congestion). The SDK shows both options by default.
Users might reject the permit signature. Handle this gracefully:
Not all ERC-20 tokens support permits. The SDK automatically filters to show only valid fee options, but for API integrations, check token contracts.

Troubleshooting

Next Steps

Pay Mode Reference

All Pay component options and examples

SDK Configuration

Full configuration reference

Supported Chains

Chains and token support