You initiate a batch transaction containing multiple calls, and your wallet only asks for one confirmation. You might wonder: if one of the calls in the middle fails, will the rest still execute?

A leading global cryptocurrency platform,suitable for both beginners and experienced traders.
New user benefit: 20% off trading fees upon registration!!
The answer is: it depends on how the transaction is packaged. If the transaction is atomic, one failure rolls back everything; if not, the remaining calls may still execute after a partial failure, and you might not notice anything wrong.
First, Understand: Two Modes of Batch Transactions
The mainstream batch transactions today have two implementations: ERC-5792 (wallet-level) and EIP-7702 (account-level).
Atomic Execution: All calls either succeed together or fail together. If any step reverts, the entire transaction rolls back, and no partially executed state remains on-chain. The delegate contract of EIP-7702 executes batch calls through the execute function atomically—if any sub-call reverts, the entire batch rolls back. Base documentation also confirms this atomicity guarantee: all transactions must succeed together, or they fail together.
Non-Atomic Execution: Each call executes independently, and a previous failure does not affect the following ones. In the latest revision, ERC-5792 supports the wallet returning an atomic field to clarify the execution mode: "strict" means atomic execution; "loose" means atomic execution via multiple transactions; "none" means non-atomic execution.
Risk Warning: If the wallet uses non-atomic mode, the later calls may still execute even if the earlier ones fail. Since you only signed once, you might assume the whole transaction has "failed," but in reality some operations have already been recorded on-chain.
Error Result Display: The "Half-Finished" State of Partial Success
Many people encounter this situation:
The wallet shows one batch transaction confirmation, and you click confirm.
The block explorer shows the transaction status as "Success."
But the actual result is: the first two calls succeeded, and the third reverted due to insufficient gas or a parameter error.
The chain is left with a "partially successful" state: you authorized a token or spent gas, but the final operation you wanted was not completed.
Because you only signed once, your intuition tells you "this transaction either fully succeeds or fully fails." But in non-atomic mode, "partial success" really means "partial success."
Tracing the Error Path: How Users Fall Into This Trap
Step 1: The wallet does not clearly state the execution mode Some wallets do not clearly label "atomic" or "non-atomic" on the signing screen when handling batch transactions. Users only see "one transaction, one confirmation" and think it is a traditional transaction.
Step 2: One link in the call chain fails For example, a batch transaction includes: ① Approve USDT → ② Swap → ③ Withdraw. Step ① succeeds, and step ② reverts because the slippage exceeds expectations. EIP-7702's atomic mode will roll back all operations; but in non-atomic mode, step ③ may still continue to execute.
Step 3: Users only check transaction status, not internal calls Most users only look at the top-level "Success" or "Fail" when checking a transaction. If the top-level status is Success but an internal call failed, the block explorer's "Internal Transactions" or "Calls" tab will actually show the failed record, but many people never look there.
Comparison of Correct and Incorrect Approaches
| Approach | Explanation |
|---|---|
| Incorrect approach | Only look at the top-level transaction status and assume "Success = everything succeeded." |
| Correct approach | 1. Confirm whether the wallet supports atomic execution (check the atomic field of wallet_getCapabilities). 2. If the wallet does not support atomic execution, avoid using batch processing for related operations (such as Swap combinations) and use separate transactions instead. 3. After the transaction, check "Internal Transactions" in the block explorer to confirm the status of all sub-calls. |

A leading global cryptocurrency platform,suitable for both beginners and experienced traders.
New user benefit: 20% off trading fees upon registration!!
A Checklist for Further Investigation
| Checklist Item | Safe Status | Danger Signal |
|---|---|---|
| Wallet's atomic support | Clearly supports atomic execution | Not supported or status unknown |
| Signing screen prompt | Clearly labels the execution mode | Only shows "Confirm" without explaining whether it is atomic |
| Post-transaction check | View Internal Transactions | Only look at the top-level status |
| Call order | Understand the dependencies of each call | Calls have order dependencies but you are not aware of them |
How to verify operation completion: Open the batch transaction hash you just executed in a block explorer, expand the "Internal Transactions" or "Calls" tab, and confirm that the status of every sub-call is "Success." If you find any sub-call reverted while the top-level transaction status is Success, it means you are operating in a non-atomic environment and need to retry the failed step separately.


