Auto-withdrawals
GUIDES

Auto-withdrawals

A per-project, per-asset rule that automatically sweeps your settled balance to an external wallet on a recurring schedule — no manual action required.

01

What is an auto-withdrawal rule?

An auto-withdrawal rule tells Suward: "whenever my settled balance for this asset crosses a threshold, push it to this address." Each project can hold one rule per asset. The rule runs on a fixed interval and moves the available balance as long as it meets the minimum threshold.

Rule fields

  • assetId
    string

    The asset to sweep, e.g. "USDT_ETHEREUM". One rule per project per asset.

  • toAddress
    string

    The external wallet address that receives the swept funds on each run.

  • minThreshold
    string (decimal)

    Minimum settled balance required before a sweep fires. If the balance is below this value the run is skipped.

  • intervalSeconds
    number

    How often (in seconds) Suward checks and potentially sweeps. 86400 = once per day.

  • enabled
    boolean

    Set to false to pause the rule without deleting it. Runs resume immediately when re-enabled.

Rules operate on the settled (safe-finality) balance only. Pending or accepted funds are never swept — they must reach the safe checkpoint first.

02

Configure in the dashboard

Create or update a rule from your dashboard. Saving upserts the rule — if one already exists for this asset, it is replaced with the new values.

Go to Withdrawals → Auto-withdrawals. The form maps directly to the fields above and saves immediately.

Go to Withdrawals in the dashboard

Moving funds out is a sensitive operation, so withdrawals are managed from your authenticated dashboard session — there is no API-key endpoint for configuring or triggering them.

03

How runs work

Suward evaluates the rule on each interval. When the asset balance is at or above minThreshold, the full settled balance is transferred to toAddress in a single on-chain transaction.

  • nextRunAt — the ISO timestamp of the next scheduled evaluation. Updated automatically after each run.
  • lastRunAt — the ISO timestamp of the most recent run, whether it swept or was skipped due to insufficient balance.
  • Attempt history — every run (swept or skipped) is logged, so you can audit timing, amounts, and outcomes from the dashboard.
  • Manual withdrawals — you can also trigger a one-off transfer any time from the dashboard, independent of the auto-withdrawal rule.

A failed on-chain transaction (e.g. gas exhaustion) is retried on the next interval. Suward never double-sweeps: each run is idempotent.