Verify before you apply

Run a real flash loan and watch it settle

No account, no wallet, no signature, no funds. This builds a genuine drawing — a real source, real liquidity, a real signed authorisation — and runs it against live mainnet state at the current block, through every guard in the contract. Then it hands you the exact eth_call so you can get the same answer from your own node without trusting us at all.

Or run it for real, from your own wallet

The simulation above is ours. This one is yours: we sign an authorisation bound to your address, and you broadcast it. What you get back is a transaction hash on a block explorer that we cannot fake and did not send. It costs you gas and nothing else — the drawing is the same break-even one, so no value moves.

The authorisation is signed to this address and no other can use it. Connect a wallet to fill it in, or paste any address — including one this browser cannot sign for, such as a Safe or a hardware wallet elsewhere. In that case you get the ready-to-send transaction instead.

Your wallet will warn you. That is the drawing working, not failing. It will estimate “No changes” to your balances and may show a risk alert, because a flash loan borrows and repays inside a single transaction — there is no net movement for a wallet to show, and there never will be on any network. Some wallets replace the confirm button with “Review alerts”: tap it, read what it says, and confirm underneath. Nothing about that screen means something is wrong.

What you should check on it: the network is the one you picked, the request is from atomicexchange.cloud, and the fee is a few cents. If it asks you to approve a token or shows a balance leaving your wallet, something is wrong — stop, and tell us.
What you are being handed, precisely. An authorisation whose digest covers your address, the asset, the amount, the fee, the actions and the position floor. It cannot be used by any other address, cannot be edited into a different drawing, and cannot be replayed — the contract records it as used. And if our simulation says it would revert, you are given no transaction at all, because charging you gas for a failure we could already see would be indefensible.

What this proves, and what it does not

It proves

That the desk can sign; that our authorisation digest and the deployed contract agree byte-for-byte; that a funding source can be found and priced against live liquidity at the size you asked for; that the callback fires; that the position check settles; and that the loan repays. If any one of those were broken you would see a revert naming which.

It does not prove

That any trade makes money. This drawing is break-even by construction — it borrows, does one read-only call, and repays. Profit comes from the actions you supply, and nothing here should be read as a forecast of them.

Why the test drawing has the shape it does. The contract refuses an empty action list, so the probe carries one read-only balance call. And a break-even drawing cannot settle as arbitrage — the contract reverts NotProfitable when the amount recovered does not exceed the amount owed, which is correct and is exactly what a "borrow it and give it straight back" test would trip on a perfectly healthy contract. So the test is shaped as a position build with a floor of zero, the smallest drawing the contract accepts. This is the real code path, not a mock.
A network whose cheapest source charges a premium cannot be tested this way. A break-even drawing holds nothing of its own, so it cannot cover a fee, and it will revert CannotRepay. That is a limit of the test, not a fault in the network — a real drawing pays the premium out of the trade. Where that applies, the result below says so rather than showing a failure.

Reproduce it without us

Every run returns the from, to and data of the call it just made. Send that to any archive node for the network and you get the same result from infrastructure we do not control. A test you can only run on our servers is not evidence.