1.1.0 • Published 6 months ago

investec-card-cli v1.1.0

Weekly downloads
-
License
MIT
Repository
-
Last release
6 months ago

CLI Programmable Card Code Emulator

Write and test programmable card code in a safe environment.

License: MIT

Table of Contents

About

While exploring Programmable Banking Cards, I found it difficult to test my code. I wanted to be able to write code and test it in a safe environment. I also wanted to be able to share my code with others. This project is an attempt to solve these problems.

Templates

Templates are the code that is run by the emulator. They are written in JavaScript and can be found in the templates directory. The template that is run by default is empty. This template does nothing and is a good starting point for writing your own templates.

Current Templates:

  • empty - Does nothing
  • petrol_card - A template for a petrol card
  • rooty - A template for a sending a slack message after a transaction
  • telegram - A template for sending a telegram message after a transaction
  • postman-echo - A template for sending a transaction to Postman Echo

Installation

Before installing, download and install Node.js.

git clone https://github.com/devinpearson/programmable-banking-card-issuer.git
cd programmable-banking-card-issuer
npm install

DevContainer (VSCode)

VS Code will automatically detect the .devcontainer folder and prompt you to open the project in a container. This will set up the environment for you to run the server in a Docker container.

docker-compose -f .devcontainer/docker-compose.yml up

Docker

docker build -t card-emu .
docker run card-emu -t petrol_card

npm.io

Usage

Commands: run filename run your code locally fetch-cards list cards fetch cardkey fetches your saved code fetch-published cardkey fetches your published code fetch-env cardkey fetches your environmental variables upload cardkey uploads your code to saved code publish cardkey filename publishes your saved code upload-env cardkey publishes your environmental variables toggle cardkey enable/disable card code executions cardkey card execution logs

Options: -h, --help Show help boolean -v, --version Show version number boolean

npm.io

Options:

-e, --environment [environment] The environment to use

-a, --amount [amount] The amount of the transaction

-c, --currency [currency] The currency of the transaction

--mcc [mcc] The merchant category code of the transaction

-m, --merchant [merchant] The merchant name of the transaction

-i, --city [city] The city of the transaction

-o, --country [country] The country of the transaction

-h, --help Display help for command

-v, --version Display the current version

To run a transaction against a template, run the following command:

node . main.js -e env.json --amount 60000 --currency ZAR --mcc 0000 --merchant "Test Merchant" --city "Test City" --country ZA

Testing

To run the tests, use the following command:

npm test

Contributing

Contributions are welcome! Please submit a pull request or open an issue for any suggestions or improvements.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Contact

For inquiries, please open an issue.

Acknowledgments

Other Projects

1.1.0

6 months ago

1.0.6

6 months ago

1.0.5

6 months ago

1.0.3

7 months ago

1.0.2

7 months ago

1.0.1

7 months ago

1.0.0

7 months ago