# flutterwave-transfer-micro A microservice to handle flitterware payment services # Installation * `git clone` this repository * `cd` into the repository * Build the docker image by `docker build -t flutterwave-transfer-micro .` # Run * Set environment variables like `PORT` and `POSTGRE_URL`. Full list in the wiki. * `docker run -p -e PORT= -e POSTGRE_URL= -e FLUTTERWAVE_API= -i -t flutterwave-transfer-micro` ## Example configurations * binding: 127.0.0.1:3000:3000/tcp * app_port: 3000 * postgre_url: postgresql://wrenchboard:wrenchboard@10.10.10.23:5432/wrenchboard * flutterwave_config: eyJCYXNlQXBpVXJsIjoiaHR0cHM6Ly9hcGkuZmx1dHRlcndhdmUuY29tIiwiUHVibGljS2V5IjoiRkxXUFVCS19URVNULTU0YzkwMTQxYjAyODc4OWQ2NzEwNjdiZDcyZjc4MWE5LVgiLCJTZWNyZXRLZXkiOiJGTFdTRUNLX1RFU1QtYzdiYmM4NmQ3ZTcxMDAyNTRjNWU1YmJmMTYyYmYyYjItWCIsIkVuY3J5cHRpb25LZXkiOiJGTFdTRUNLX1RFU1RlOTQ3NGQ0ZTJjZTYifQ== ## Example command ``` docker run -p 127.0.0.1:3000:3000/tcp \ -e PORT=3000 \ -e POSTGRE_URL='postgresql://wrenchboard:wrenchboard@10.10.10.23:5432/wrenchboard' \ -e FLUTTERWAVE_API='eyJCYXNlQXBpVXJsIjoiaHR0cHM6Ly9hcGkuZmx1dHRlcndhdmUuY29tIiwiUHVibGljS2V5IjoiRkxXUFVCS19URVNULTU0YzkwMTQxYjAyODc4OWQ2NzEwNjdiZDcyZjc4MWE5LVgiLCJTZWNyZXRLZXkiOiJGTFdTRUNLX1RFU1QtYzdiYmM4NmQ3ZTcxMDAyNTRjNWU1YmJmMTYyYmYyYjItWCIsIkVuY3J5cHRpb25LZXkiOiJGTFdTRUNLX1RFU1RlOTQ3NGQ0ZTJjZTYifQ==' \ -i -t flutterwave-transfer-micro ``` ## Flutterwave config Either use a converniece script base64encoder.js or base64 CLI to encode the config: ``` echo '{ "BaseApiUrl":"https://api.flutterwave.com", "PublicKey":"FLWPUBK_TEST-54c90141b028789d671067bd72f781a9-X", "SecretKey":"FLWSECK_TEST-c7bbc86d7e7100254c5e5bbf162bf2b2-X", "EncryptionKey":"FLWSECK_TESTe9474d4e2ce6" }' | base64 ``` # Test `npm test` ---