Checkout the project and copy example configuration files
git clone https://github.com/apay-io/stellar-anchor cd stellar-anchor npm i cp .env.example .env cp assets.json.example assets.json
Run bootstrap to generate test Stellar accounts, setup trustlines, etc
node bootstrap
It takes some time, generates 3 stellar accounts for each asset in assets.json (if not already populated), funds them and adds required trustlines
- stellar.issuer
- distributor
- channels
Also saves secrets into .env file as STELLAR_SECRET_G...PUBLIC...KEY=S...SECRET...KEY
Now your assets.json should look like this
[ { "code": "TBTC", "driver": { "code": "tbtc", "env": "test", "accessToken": "BITGO_TEST_ACCESS_TOKEN", "walletId": "BITGO_TBTC_WALLET_ID", "walletPassphrase": "BITGO_TBTC_WALLET_PASS" }, "totalSupply": "1000", "stellar": { "issuer": "GCUADJ7KND6LK6ZZHS42DA3FMYR7EWVHDNKZN4NTO2MMINOEVXDAPWVI", "name": "", "desc": "", "image": "", "status": "live" }, "distributor": "GA5BN6MQCOOU2MFKFSIPI2ZU7VJOHVOZVWBM33WQPBN63DCWUEY3HHTT", "channels": [ "GAUATMQIQVTBONSEAMJXCMCIVJAUD527V5FJQ23JAATFXIAB4B4I2JZ6" ], "deposit": { "eta": 1200, "min": 0.0001, "fee_create": 0.0001, "fee_fixed": 0.0, "fee_percent": 0.0 }, "horizonUrl": "https://horizon-testnet.stellar.org", "networkPassphrase": "Test SDF Network ; September 2015", "withdrawal": { "eta": 1200, "min": 0.0001, "fee_fixed": 0.0001, "fee_percent": 0.001 }, "withdrawalBatching": 60000 } ]
And .env like this
DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/postgres BITGO_TEST_ACCESS_TOKEN= BITGO_TBTC_WALLET_ID= BITGO_TBTC_WALLET_PASS= NOTIFICATION_SECRET=secret STELLAR_SECRET_GCUADJ7KND6LK6ZZHS42DA3FMYR7EWVHDNKZN4NTO2MMINOEVXDAPWVI=SB2PLO7T7V5LFHOFHEDQXTD6BMKMGAFWFFIGTQKWQ25NLYVBHZEKFE3V STELLAR_SECRET_GA5BN6MQCOOU2MFKFSIPI2ZU7VJOHVOZVWBM33WQPBN63DCWUEY3HHTT=SAH4DKM6PYKZKD25XBQOXVYCZCXJ7FZROWZSBGUTYUGK663R54ZLS6SQ STELLAR_SECRET_GAUATMQIQVTBONSEAMJXCMCIVJAUD527V5FJQ23JAATFXIAB4B4I2JZ6=SB7A3KY5YSLWUNSY4RAO3CSZEZUXSIRTSNVT7KM6JYQ3RCNCLRBLSMPG
Go to test.bitgo.com and create an account (2FA code is always 000000)
Create new Bitcoin wallet,
put wallet passphrase into BITGO_TBTC_WALLET_PASS field in .env
Go into that wallet -> settings
put wallet ID into BITGO_TBTC_WALLET_ID field in .env
Scroll down on the same page "Add webhook". Put URL of your test setup, where last part "secret" should be the same as NOTIFICATION_SECRET parameter in .env
If you don't have public URL yet for your test setup - you can skip this part and trigger webhooks manually using postman or something.
In the top right corner go into "User settings" -> "Developer options" -> "Add access token"
Save this access token into BITGO_TEST_ACCESS_TOKEN field in .env