Server And Remote URL Analysis

Focused report for the previously provided repositories: photon-android-wallet and photon-web-wallet.

This page answers one narrow question: which servers, remote URLs, explorers, proxies, and canister endpoints the wallets are using by default, and which of them are user-overridable.

Android wallet Web wallet Hardcoded defaults Runtime overrides

Executive Summary

Android Wallet

  • Primary Bitcoin server dependency is Electrum.
  • Primary RGB transport endpoint is Iris proxy.
  • Defaults are hardcoded to iriswallet.com infrastructure.
  • Electrum URL and RGB proxy endpoint are user-overridable in settings.
  • Testnet faucet support points to coinfaucet.eu.

Web Wallet

  • Uses a mix of local wallet logic, public blockchain APIs, RGB proxy JSON-RPC, and ICP canisters.
  • Public Bitcoin data comes mainly from mempool.space and sometimes blockstream.info.
  • RGB proxy default is a hardcoded raw IP: http://89.117.52.115:3000/json-rpc.
  • ICP calls go to https://ic0.app with network-specific canister IDs.
  • Electrum server is stored in settings/UI, but core Bitcoin reads are not actually driven by Electrum in the code shown.

Android Wallet Servers

Purpose Default / Hardcoded Value Where Used Override?
Signet Electrum ssl://electrum.iriswallet.com:50033 BTC + RGB online wallet connection Yes, via settings
Testnet Electrum ssl://electrum.iriswallet.com:50013 BTC + RGB online wallet connection Yes, via settings
Mainnet Electrum ssl://electrum.iriswallet.com:50003 BTC + RGB online wallet connection Yes, via settings
RGB transport endpoint rpcs://proxy.iriswallet.com/0.2/json-rpc RGB receive/send transport endpoints Yes, via settings
Asset certification server https://photonlabs.com Asset certification API No in code shown
Testnet faucet https://coinfaucet.eu/en/ Bitcoin faucet API base URL for testnet builds No in code shown
Signet help faucets https://signetfaucet.com/, https://alt.signetfaucet.com/ Help links only No
Testnet help faucet list https://faucet-list.com/testnet-faucets/bitcoin Help link only No
Signet explorer https://mempool.space/signet/tx/ Explorer tx links No
Testnet explorer https://mempool.space/testnet/tx/ Explorer tx links No
Mainnet explorer https://mempool.space/tx/ Explorer tx links No
Privacy policy https://photonlabs.com/privacy_policy.html Static legal URL No
Terms URL https://photonlabs.com/testnet/terms_of_service.html, https://photonlabs.com/mainnet/terms_of_service.html Static legal URL No
Android implementation detail: the actual wallet online session is created by RgbRepository.goOnline(electrumURL). That means Electrum is the critical network dependency for wallet sync, balance, transfers, and RGB operations. The proxy transport endpoint is separately attached to RGB receive/send flows.

Android Wallet Notes

Web Wallet Servers

Purpose Default / Hardcoded Value Where Used Override?
Electrum server UI default ssl://electrum.iriswallet.com:50013 App settings state in UI Yes, user-editable
RGB proxy default http://89.117.52.115:3000/json-rpc RGB JSON-RPC fetches Yes, from storage/UI
Mainnet mempool API https://mempool.space/api Fees, address history, UTXOs, broadcast No in code shown
Testnet3 mempool API https://mempool.space/testnet/api Fees, address history, UTXOs, broadcast No in code shown
Testnet4 mempool API https://mempool.space/testnet4/api Fees, address history, UTXOs, broadcast No in code shown
Regtest fallback API https://blockstream.info/testnet/api Address history, UTXOs, broadcast when network is labeled regtest No in code shown
ICP gateway https://ic0.app All Dfinity actor/canister calls No in code shown
Mainnet wallet canister oazba-2qaaa-aaaau-ac66a-cai Storage fallback for wallet canister Yes, via storage
Testnet wallet canister ja2nc-uiaaa-aaaaf-qc4la-cai Storage fallback for testnet wallet canister Yes, via storage
Mainnet ckBTC ledger mxzaz-hqaaa-aaaar-qaada-cai ckBTC approval flow No
Testnet ckTESTBTC ledger mc6ru-gyaaa-aaaar-qaaaq-cai ckBTC approval flow No
Regtest ckTESTBTC ledger mc6ru-gyaaa-aaaar-qaaaq-cai ckBTC approval flow No
Mainnet ckBTC minter mqygn-kiaaa-aaaar-qaadq-cai Lightning/ckBTC address + withdrawal flow No
Testnet ckTESTBTC minter ml52i-qqaaa-aaaar-qaaba-cai Lightning/ckBTC address + withdrawal flow No
Regtest ckTESTBTC minter ml52i-qqaaa-aaaar-qaaba-cai Lightning/ckBTC address + withdrawal flow No

Web Wallet Notes

Direct Answer

Android wallet server defaults: electrum.iriswallet.com for Electrum and proxy.iriswallet.com/0.2/json-rpc for RGB transport. It also uses photonlabs.com for certification/legal URLs and coinfaucet.eu for testnet faucet requests.
Web wallet server defaults: 89.117.52.115:3000/json-rpc for RGB proxy, mempool.space and blockstream.info for blockchain HTTP APIs, and ic0.app for Dfinity/ICP canister access. The wallet canister and ckBTC-related remotes are identified by canister IDs rather than normal hostnames.

Important Inconsistencies

Repository Issue Impact
Android wallet No regtest network variant is defined. It cannot natively match a regtest backend without code changes and library support.
Web wallet electrumServer exists in UI/storage, but main chain interactions do not primarily use Electrum in the current code. The UI suggests one network path, while actual reads/writes use other remotes.
Web wallet App.tsx canister fallback IDs differ from storage.ts canister fallback IDs. There is ambiguity about which canister is the intended default.
Web wallet regtest routes to public testnet APIs in some code paths. That is not a true regtest deployment model.