Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion content/wallets/pages/bundler-api/bundler-faqs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,12 @@ To do so, follow the next steps:

1. Use [`eth_maxPriorityFeePerGas`](/docs/chains/ethereum/ethereum-api-endpoints/eth-max-priority-fee-per-gas) to obtain `maxPriorityFeePerGas`. This method is also available on web3 libraries like `ethers.js` and can be accessed through the provider as `provider.getFeeData()`.

2. **Choose the suitable increase values**: Once you have the re-estimated gas fees, choose the maximum of a 10% increase or the re-estimated values. This ensures that your new gas fee is competitively priced to be included in a block.
2. **Choose the suitable increase values**: Once you have the re-estimated gas fees, choose the maximum of a 10% increase or the re-estimated values. This ensures that your new gas fee is competitively priced to be included in a block. Apply this comparison separately to each field:

* `maxFeePerGas`: `max(current maxFeePerGas * 1.1, re-estimated maxFeePerGas)`
* `maxPriorityFeePerGas`: `max(current maxPriorityFeePerGas * 1.1, re-estimated maxPriorityFeePerGas)`

For example, if your stuck userOp was sent with `maxFeePerGas: 2 gwei` and `maxPriorityFeePerGas: 0.1 gwei`, and re-estimating returns `maxFeePerGas: 1.8 gwei` and `maxPriorityFeePerGas: 0.12 gwei` (fees eased since your last submission), a straight 10% bump beats the re-estimate for `maxFeePerGas` but not for `maxPriorityFeePerGas`. You'd resend with `maxFeePerGas: 2.2 gwei` (2 × 1.1) and `maxPriorityFeePerGas: 0.12 gwei` (the higher re-estimated value).

3. **Account for Rundler's service tip**: Rundler requires a small tip for its services via `maxPriorityFeePerGas`. Detailed information about this can be found [below](/docs/reference/bundler-faqs#fees).

Expand Down
7 changes: 7 additions & 0 deletions content/wallets/pages/transactions/retry-transactions/api.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,13 @@ If `status` remains 100 (Pending) for too long, proceed to retry.

To replace the stuck transaction, re-prepare the same call. This will automatically use the same nonce as the pending transaction as long as you don't override the nonce!

<Info>
You don't need to set higher gas fees yourself. When re-preparing a stuck
call, the Wallet APIs automatically bump the gas fees by 10% over the pending
transaction (or to the current network minimum, whichever is higher) so the
replacement is priced high enough to evict the original from the mempool.
</Info>

```bash
curl -X POST https://api.g.alchemy.com/v2/{API_KEY} \
-H "Content-Type: application/json" \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
When re-sending calls without a `nonceOverride`, the client automatically uses the same nonce as the pending transaction, replacing it. See the [`sendCalls` SDK reference](/docs/wallets/reference/wallet-apis/functions/sendCalls) for full parameter descriptions.
When re-sending calls without a `nonceOverride`, the client automatically uses the same nonce as the pending transaction, replacing it. The gas fees are also bumped automatically by Wallet APIs — by 10% over the pending transaction, or to the current network minimum, whichever is higher — so you don't need to calculate replacement fees yourself. See the [`sendCalls` SDK reference](/docs/wallets/reference/wallet-apis/functions/sendCalls) for full parameter descriptions.

You'll need the following env variables:

Expand Down
10 changes: 9 additions & 1 deletion content/wallets/pages/transactions/retry-transactions/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,17 @@ Key use cases:
1. Send the initial transaction
2. Monitor the transaction status
3. If the transaction is stuck/pending too long, re-prepare the same call
4. Send the transaction with higher gas to replace the stuck transaction
4. Send the replacement transaction. When you re-prepare a call, the Wallet APIs automatically bump the gas fees for you — you don't need to calculate new values yourself
5. The original transaction gets dropped from mempool

<Info>
When you re-prepare a stuck call, the Wallet APIs automatically increase the
gas fees by 10% over the pending transaction (or to the current network
minimum, whichever is higher). This ensures the replacement is priced high
enough to evict the original from the mempool, so you don't need to set fee
values manually.
</Info>

## Prerequisites

* An [Alchemy API key](https://dashboard.alchemy.com/apps)
Expand Down
Loading