# Taler sanity checks (koopa) Run **on koopa as root** (reads `/root/*-password.txt`, may use `podman` as `hernani`). | Script | What it checks | |--------|----------------| | `check_helpers-running.sh` | **No systemd:** starts missing exchange/merchant helpers (`ensure_*`), then requires transfer/aggregator/wirewatch/… | | `check_stack-health.sh` | Public + local `/config` and exchange `/keys` HTTP 200; merchant has CHF+GOA | | `check_merchant-delays.sh` | Global + instance delays are short (pay/refund/wire ≤ 120s) | | `check_exchange-wirewatch.sh` | Wire gateway reachable with **bearer**; auth method; hosts pin | | `check_settlement.sh` | Paid orders: `wired`, deposit_total, bank balances/transfers | | `run_all.sh` | Runs all of the above | Helper ensure scripts (in containers, no systemd): | Script | Role | |--------|------| | `../taler-exchange/ensure_exchange_helpers.sh` | `nohup` aggregator, closer, wirewatch, **transfer** | | `../taler-merchant/ensure_merchant_helpers.sh` | `nohup` wirewatch, depositcheck, kyccheck, webhook, … | | Health: `check_*-health.sh` | Calls ensure (unless `SKIP_ENSURE=1`), then **FAIL** if still missing | ```bash # on koopa cd /path/to/koopa-admin-log/scripts/taler-sanity ./run_all.sh ./check_settlement.sh 2026.190-03V36SPAZ8CK6 ``` Env overrides: `BANK_URL`, `MERCHANT_URL`, `EXCHANGE_PUBLIC`, `BANK_PUBLIC`, `MERCHANT_PUBLIC`, `MERCHANT_INSTANCE`. See also: `../taler-wallet-cli/` for end-to-end withdraw → pay → settlement.