Skip to main content
You visit a “token claim” site. The transaction looks normal—just a contract interaction. You approve it without a second thought. 48 hours later, your entire wallet is drained through a permit signature you didn’t understand. Transaction simulation would have caught it. This guide shows you how to build that last line of defense.

Why Transaction Simulation Matters

Last Line of Defense

Users trust your app to protect them—make that trust count

Permit Protection

Catch EIP-712 signatures that can drain wallets without transactions

Approval Awareness

Show users their existing exposure before they add more
Why developers choose Webacy:
  • Pre-signing simulation — Show users exactly what will happen before they approve
  • EIP-712 signature analysis — Decode and risk-score permit/signature requests
  • Approval risk detection — Identify dangerous existing approvals
  • Recipient verification — Catch address poisoning before users confirm
  • Multi-chain support — Same APIs for ETH, Polygon, Arbitrum, Base, and more

Prerequisites

Before implementing transaction simulation, ensure you have:
  • A Webacy API key (sign up here)
  • Basic familiarity with REST APIs or the Webacy SDK
  • Your application’s transaction signing flow identified for integration

Pre-Signing Protection

The moment before a user signs a transaction is your last chance to protect them.

Transaction Simulation

Simulate every transaction before it gets signed.
What to show users:
Supported chain IDs: 1 (ETH), 56 (BSC), 137 (Polygon), 10 (Optimism), 42161 (Arbitrum), 8453 (Base)

EIP-712 Permit Signature Verification

Permit signatures are one of the most dangerous attack vectors. A single signature can authorize unlimited token spending without any on-chain transaction.
The Silent Drain: Unlike regular transactions, permit signatures don’t show up on block explorers until the attacker uses them. A user can sign a permit and see nothing happen—until days later when everything is gone.
Key red flags to surface:

Approval Risk Management

Users often have approvals they’ve forgotten about. Help them understand their exposure.

Current Approval Scanning

Show users their existing approvals before they add more.

Dangerous Approval Detection

Flag approvals that could be used to drain the wallet.

Recipient Verification

Before a user sends funds, verify the recipient address isn’t part of an attack.

Address Poisoning Check

Risk Profiling

Get a quick risk assessment of any recipient.

Complete Integration Workflow

Pre-Signing Check Flow

Approval Health Check Flow

Full TypeScript Implementation


Example Addresses for Testing

Permit Phishing

Address Poisoning

Known Drainers

Clean Addresses (for comparison)


API Quick Reference


Next Steps

Get Your API Key

Start protecting your users

API Reference

Complete endpoint documentation

Install the SDK

TypeScript SDK for integration

Address Poisoning

Learn more about this attack vector