Digital Assets address validator for Bitcoin and other Altcoins.
npm install da-address-validatorSimple wallet address validator for validating Bitcoin and other altcoins addresses in Node.js and browser.
Forked from christsim/multicoin-address-validator 0.5.10.
File size is ~17 kB (minifed and gzipped).
```
npm install da-address-validator
`html`
##### validate (address [, currency = 'bitcoin'[, networkType = 'prod']])
###### Parameters
- address - Wallet address to validate.
- currency - Optional. Currency name or symbol, e.g. 'bitcoin' (default), 'litecoin' or 'LTC''prod'
- networkType - Optional. Use (default) to enforce standard address, 'testnet' to enforce testnet address and 'both' to enforce nothing.
> Returns true if the address (string) is a valid wallet address for the crypto currency specified, see below for supported currencies.
- 0x/zrx '0x' or 'zrx''Aave Coin'
- Aave Coin/aave or 'aave''Algorand'
- Algorand/algo or 'algo''Alpha Venture DAO'
- Alpha Venture DAO/alpha or 'alpha''ApeCoin'
- ApeCoin/ape or 'ape''Aragon'
- Aragon/ant or 'ant''Arcblock'
- Arcblock/abt or 'abt''Augur'
- Augur/rep or 'rep''AugurV2'
- AugurV2/repv2 or 'repv2''AuroraCoin'
- AuroraCoin/aur or 'aur''Avalanche'
- Avalanche/avax or 'avax''Axie Infinity'
- Axie Infinity/axs or 'axs''Balancer'
- Balancer/bal or 'bal''Bancor'
- Bancor/bnt or 'bnt''Band Protocol'
- Band Protocol/band or 'band''Bankex'
- Bankex/bkx or 'bkx''Basic Attention Token'
- Basic Attention Token/bat or 'bat''BeaverCoin'
- BeaverCoin/bvc or 'bvc''Binance'
- Binance/bnb or 'bnb''Binance USD'
- Binance USD/busd or 'busd''BioCoin'
- BioCoin/bio or 'bio''Bitcoin'
- Bitcoin/btc or 'btc''Bitcoin SV'
- Bitcoin SV/bsv or 'bsv''BitcoinCash'
- BitcoinCash/bch or 'bch''BitcoinGold'
- BitcoinGold/btg or 'btg''BitcoinPrivate'
- BitcoinPrivate/btcp or 'btcp''BitcoinZ'
- BitcoinZ/btcz or 'btcz''Bitkub'
- Bitkub/kub or 'kub''BlockTrade'
- BlockTrade/btt or 'btt''Boba Token'
- Boba Token/boba or 'boba''BTU Protocol'
- BTU Protocol/btu or 'btu''Callisto'
- Callisto/clo or 'clo''Cardano'
- Cardano/ada or 'ada''Celo'
- Celo/celo or 'celo''Chainlink'
- Chainlink/link or 'link''Chillz'
- Chillz/chz or 'chz''Civic'
- Civic/cvc or 'cvc''Compound'
- Compound/comp or 'comp''Cortex Coin'
- Cortex Coin/ctxc or 'ctxc''Cred'
- Cred/lba or 'lba''Crypto.com Coin'
- Crypto.com Coin/cro or 'cro''Curve DAO Token'
- Curve DAO Token/crv or 'crv''CUSD'
- CUSD/cusd or 'cusd''Dash'
- Dash/dash or 'dash''Decentraland'
- Decentraland/mana or 'mana''Decred'
- Decred/dcr or 'dcr''DigiByte'
- DigiByte/dgb or 'dgb''District0x'
- District0x/dnt or 'dnt''DogeCoin'
- DogeCoin/doge or 'doge''dYdX'
- dYdX/dydx or 'dydx''Enjin Coin'
- Enjin Coin/enj or 'enj''EOS'
- EOS/eos or 'eos''Ethereum'
- Ethereum/eth or 'eth''Ethereum Name Service'
- Ethereum Name Service/ens or 'ens''EthereumClassic'
- EthereumClassic/etc or 'etc''EtherZero'
- EtherZero/etz or 'etz''Expanse'
- Expanse/exp or 'exp''Fantom'
- Fantom/ftm or 'ftm''FirmaChain'
- FirmaChain/fct or 'fct''FreiCoin'
- FreiCoin/frc or 'frc''FTX Token'
- FTX Token/ftt or 'ftt''Gala'
- Gala/gala or 'gala''GameCredits'
- GameCredits/game or 'game''GarliCoin'
- GarliCoin/grlc or 'grlc''Gate Token'
- Gate Token/gt or 'gt''Gnosis'
- Gnosis/gno or 'gno''Golem'
- Golem/glm or 'glm''Golem (GNT)'
- Golem (GNT)/gnt or 'gnt''GuildFi'
- GuildFi/gf or 'gf''Hedera Hashgraph'
- Hedera Hashgraph/hbar or 'hbar''HedgeTrade'
- HedgeTrade/hedg or 'hedg''Hush'
- Hush/hush or 'hush''HyperSpace'
- HyperSpace/xsc or 'xsc''iExec RLC'
- iExec RLC/rlc or 'rlc''Illuvium'
- Illuvium/ilv or 'ilv''Immutable X'
- Immutable X/imx or 'imx''IOSToken'
- IOSToken/iost or 'iost''JFIN Coin'
- JFIN Coin/jfin or 'jfin''Komodo'
- Komodo/kmd or 'kmd''Kusama'
- Kusama/ksm or 'ksm''Kyber Network Crystal'
- Kyber Network Crystal/knc or 'knc''LBRY Credits'
- LBRY Credits/lbc or 'lbc''Lisk'
- Lisk/lsk or 'lsk''LiteCoin'
- LiteCoin/ltc or 'ltc''loki'
- loki/loki or 'loki''Loom Network'
- Loom Network/loom or 'loom''Loopring'
- Loopring/lrc or 'lrc''Lukso'
- Lukso/lyxe or 'lyxe''Maker'
- Maker/mkr or 'mkr''Matchpool'
- Matchpool/gup or 'gup''Matic'
- Matic/matic or 'matic''MegaCoin'
- MegaCoin/mec or 'mec''Melon'
- Melon/mln or 'mln''Metal'
- Metal/mtl or 'mtl''MonaCoin'
- MonaCoin/mona or 'mona''Monero'
- Monero/xmr or 'xmr''Multi-collateral DAI'
- Multi-collateral DAI/dai or 'dai''NameCoin'
- NameCoin/nmc or 'nmc''Nano'
- Nano/nano or 'nano''NEAR'
- NEAR/near or 'near''Nem'
- Nem/xem or 'xem''Neo'
- Neo/neo or 'neo''NeoGas'
- NeoGas/gas or 'gas''Numeraire'
- Numeraire/nmr or 'nmr''Ocean Protocol'
- Ocean Protocol/ocean or 'ocean''Odyssey'
- Odyssey/ocn or 'ocn''OmiseGO'
- OmiseGO/omg or 'omg''Optimisn'
- Optimisn/op or 'op''Paxos'
- Paxos/pax or 'pax''PeerCoin'
- PeerCoin/ppc or 'ppc''PIVX'
- PIVX/pivx or 'pivx''Polkadot'
- Polkadot/dot or 'dot''Polymath'
- Polymath/poly or 'poly''Power Ledger'
- Power Ledger/pow or 'pow''PrimeCoin'
- PrimeCoin/xpm or 'xpm''Project Galaxy'
- Project Galaxy/gal or 'gal''ProtoShares'
- ProtoShares/pts or 'pts''Qtum'
- Qtum/qtum or 'qtum''Quant'
- Quant/qnt or 'qnt''Quantum Resistant Ledger'
- Quantum Resistant Ledger/qrl or 'qrl''RaiBlocks'
- RaiBlocks/xrb or 'xrb''Ripio Credit Network'
- Ripio Credit Network/rcn or 'rcn''Ripple'
- Ripple/xrp or 'xrp''Salt'
- Salt/salt or 'salt''Secret Network'
- Secret Network/scrt or 'scrt''Serve'
- Serve/serv or 'serv''Siacoin'
- Siacoin/sc or 'sc''SIX'
- SIX/six or 'six''SnowGem'
- SnowGem/sng or 'sng''Solana'
- Solana/sol or 'sol''SolarCoin'
- SolarCoin/slr or 'slr''SOLVE'
- SOLVE/solve or 'solve''Spendcoin'
- Spendcoin/spnd or 'spnd''Status'
- Status/snt or 'snt''Stellar'
- Stellar/xlm or 'xlm''Storj'
- Storj/storj or 'storj''Storm'
- Storm/storm or 'storm''StormX'
- StormX/stmx or 'stmx''SushiSwap'
- SushiSwap/sushi or 'sushi''Swarm City'
- Swarm City/swt or 'swt''Synthetix Network'
- Synthetix Network/snx or 'snx''Tap'
- Tap/xtp or 'xtp''TEMCO'
- TEMCO/temco or 'temco''TenX'
- TenX/pay or 'pay''Terra'
- Terra/luna or 'luna''Tether'
- Tether/usdt or 'usdt''Tezos'
- Tezos/xtz or 'xtz''The Graph'
- The Graph/grt or 'grt''The Sandbox'
- The Sandbox/sand or 'sand''Tron'
- Tron/trx or 'trx''TrueUSD'
- TrueUSD/tusd or 'tusd''Uniswap Coin'
- Uniswap Coin/uni or 'uni''USD Coin'
- USD Coin/usdc or 'usdc''VeChain'
- VeChain/vet or 'vet''VertCoin'
- VertCoin/vtc or 'vtc''Viberate'
- Viberate/vib or 'vib''VoteCoin'
- VoteCoin/vot or 'vot''Wancoin'
- Wancoin/wan or 'wan''Waves'
- Waves/waves or 'waves''Wings'
- Wings/wings or 'wings''Yearn Finance'
- Yearn Finance/yfi or 'yfi''ZCash'
- ZCash/zec or 'zec''ZClassic'
- ZClassic/zcl or 'zcl''ZenCash'
- ZenCash/zen or 'zen''Zilliqa'
- Zilliqa/zil or 'zil'
#### Node
`javascript
var WAValidator = require("da-address-validator");
var valid = WAValidator.validate("1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck", "BTC");
if (valid) console.log("This is a valid address");
else console.log("Address INVALID");
// This will log 'This is a valid address' to the console.
`
`javascript
var WAValidator = require("da-address-validator");
var valid = WAValidator.validate(
"1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck",
"litecoin",
"testnet"
);
if (valid) console.log("This is a valid address");
else console.log("Address INVALID");
// As this is a invalid litecoin address 'Address INVALID' will be logged to console.
`
`javascript
var WAValidator = require("da-address-validator");
var currency = WAValidator.findCurrency("xrp");
if (currency) console.log("This currency exists");
else console.log("Currency INVALID");
// As this is a valid currency symbol 'This currency exists' will be logged to console.
`
`javascript
var WAValidator = require("da-address-validator");
var currency = WAValidator.findCurrency("random");
if (currency) console.log("This currency exists");
else console.log("Currency INVALID");
// As this is not a valid currency symbol 'Currency INVALID' will be logged to console.
`
#### Browser
`html`
`javascript
// WAValidator is exposed as a global (window.WAValidator)
var valid = WAValidator.validate(
"1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck",
"bitcoin"
);
if (valid) alert("This is a valid address");
else alert("Address INVALID");
// This should show a pop up with text 'This is a valid address'.
``