Skip to content
This repository was archived by the owner on Apr 22, 2026. It is now read-only.
This repository was archived by the owner on Apr 22, 2026. It is now read-only.

stx_callContract fee parameter ignored — wallet overrides with own estimate #6404

@Rapha-btc

Description

@Rapha-btc

Description

When calling request("stx_callContract", { ..., fee: 50000 }) via @stacks/connect, Leather still shows 0.01 STX (10,000 uSTX) in the confirmation dialog. The fee parameter appears to be ignored.

Why this matters

We run a blind batch auction settlement contract (JingSwap) that calls into Pyth oracle + Wormhole + settlement logic in a single transaction. At 0.01 STX the tx hangs for minutes and often fails to confirm within our 60-second oracle price freshness window — causing the entire settlement to fail.

We need to set the fee to 0.05 STX (50,000 uSTX) to land reliably.

Steps to reproduce

  1. Call request("stx_callContract", { contract: "SPV9K21TBFAK4KNRJXF5DFP8N7W46G4V9RCJDC22.sbtc-stx-jing-v2", functionName: "settle-with-refresh", functionArgs: [...], fee: 50000 })
  2. Leather confirmation dialog shows 0.01 STX fee
  3. Expected: 0.05 STX fee (or at minimum, use the passed fee as default in the fee selector)

Expected behavior

The wallet should respect the fee parameter from stx_callContract, or use it as the pre-selected default in the custom fee UI.

Environment

  • @stacks/connect (latest, wallet standard API)
  • Leather browser extension (latest)
  • TypeScript confirms fee: Integer (number | bigint | string) is a valid param on stx_callContract in @stacks/connect types

Workaround

Currently telling users to manually set custom fee to 0.05 STX in the wallet UI, but this is not viable for programmatic/agent callers.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions