Skip to content

[Senior] Remove IBEX API dependency for basic app functionality #302

@islandbitcoin

Description

@islandbitcoin

Summary

Flash currently requires a working connection to IBEX APIs (sandbox and production) for basic app functionality. If IBEX APIs are unreachable, users experience degraded or broken flows that should otherwise work independently.

Goal

The app should function with BTC-only wallet capabilities when IBEX APIs are unavailable. USD wallet features can gracefully degrade, but core BTC functionality must not depend on IBEX.

Requirements

  • App startup must succeed without IBEX API connectivity
  • BTC wallet (balance, send, receive) must work independently of IBEX
  • USD wallet features should gracefully degrade (show unavailable state, not crash/error)
  • Transaction history should display BTC transactions regardless of IBEX status
  • Error handling should clearly distinguish between Flash-native failures and IBEX dependency failures
  • No hardcoded assumptions that IBEX is always reachable

Context

  • Related Linear issues: ENG-223, ENG-236
  • IBEX auth deprecation deadline: May 31, 2026 (ENG-38)
  • This is a risk mitigation issue — Flash should not have a single point of failure on a third-party API for basic functionality

Acceptance Criteria

  1. Start the app with IBEX APIs completely unreachable → user sees BTC wallet, can send/receive BTC
  2. USD wallet shows a clear "unavailable" state instead of errors or crashes
  3. No regression in normal operation when IBEX is available

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions