#!/bin/bash set -eu # EBICS details EBICS_URL="http://localhost:5000/ebicsweb" HOST_ID="HOST01" PARTNER_ID="PARTNER1" USER_ID="USER1" # This is used _both_ at Sandbox and at Nexus. # Basically, Nexus imports the offered bank account # using the same name used by the Sandbox. BANK_ACCOUNT_LABEL="my-bank-account" BANK_CONNECTION_LABEL="my-bank-connection" FACADE_LABEL="my-facade" export LIBEUFIN_SANDBOX_USERNAME=exchange export LIBEUFIN_SANDBOX_PASSWORD=x export LIBEUFIN_SANDBOX_URL=http://localhost:5000/demobanks/default libeufin-cli sandbox demobank register --name "Exchange Company" export LIBEUFIN_SANDBOX_USERNAME=fortytwo export LIBEUFIN_SANDBOX_PASSWORD=x export LIBEUFIN_SANDBOX_URL=http://localhost:5000/demobanks/default libeufin-cli sandbox demobank register \ --name User42 --iban FR7630006000011234567890189 export LIBEUFIN_SANDBOX_USERNAME=fortythree export LIBEUFIN_SANDBOX_PASSWORD=x export LIBEUFIN_SANDBOX_URL=http://localhost:5000/demobanks/default libeufin-cli sandbox demobank register \ --name User43 --iban GB33BUKB20201555555555 export LIBEUFIN_SANDBOX_USERNAME=admin export LIBEUFIN_SANDBOX_PASSWORD=secret export LIBEUFIN_SANDBOX_URL=http://localhost:5000/demobanks/default echo -n "Create EBICS host at Sandbox..." libeufin-cli sandbox \ --sandbox-url "http://localhost:5000" \ ebicshost create --host-id $HOST_ID echo " OK" echo -n "Create exchange EBICS subscriber at Sandbox..." libeufin-cli sandbox \ demobank new-ebicssubscriber --host-id $HOST_ID \ --user-id $USER_ID --partner-id $PARTNER_ID \ --bank-account exchange # that's a username _and_ a bank account name echo " OK" unset LIBEUFIN_SANDBOX_USERNAME unset LIBEUFIN_SANDBOX_PASSWORD unset LIBEUFIN_SANDBOX_URL export LIBEUFIN_NEXUS_USERNAME=exchange export LIBEUFIN_NEXUS_PASSWORD=x export LIBEUFIN_NEXUS_URL=http://localhost:5001/ echo -n "Create the exchange (super)user at Nexus..." libeufin-nexus superuser exchange --password x echo " DONE" echo -n "Creating a EBICS connection at Nexus..." libeufin-cli connections new-ebics-connection \ --ebics-url $EBICS_URL \ --host-id $HOST_ID \ --partner-id $PARTNER_ID \ --ebics-user-id $USER_ID \ $BANK_CONNECTION_LABEL echo " OK" echo -n "Setup EBICS keying..." libeufin-cli connections connect $BANK_CONNECTION_LABEL > /dev/null echo " OK" echo -n "Download bank account name from Sandbox..." libeufin-cli connections download-bank-accounts $BANK_CONNECTION_LABEL echo " OK" echo -n "Importing bank account info into Nexus..." libeufin-cli connections import-bank-account \ --offered-account-id exchange \ --nexus-bank-account-id $BANK_ACCOUNT_LABEL \ $BANK_CONNECTION_LABEL echo " OK" echo -n "Create the Taler facade at Nexus..." libeufin-cli facades \ new-taler-wire-gateway-facade \ --currency KUDOS --facade-name $FACADE_LABEL \ $BANK_CONNECTION_LABEL $BANK_ACCOUNT_LABEL echo " DONE" echo -n Setup payments submission task.. # Tries every second. libeufin-cli accounts task-schedule \ --task-type submit \ --task-name exchange-payments \ --task-cronspec "* * *" \ $BANK_ACCOUNT_LABEL echo OK # Tries every second. Ask C52 echo -n Setup history fetch task.. libeufin-cli accounts task-schedule \ --task-type fetch \ --task-name exchange-history \ --task-cronspec "* * *" \ --task-param-level report \ --task-param-range-type latest \ $BANK_ACCOUNT_LABEL echo OK # unset, in case the script gets 'source'd. unset LIBEUFIN_NEXUS_USERNAME unset LIBEUFIN_NEXUS_PASSWORD unset LIBEUFIN_NEXUS_URL