https://github.com/nayibor/iso8583_monitor
payment card transaction monitoring system
https://github.com/nayibor/iso8583_monitor
elixir erlang fintech iso8583 lua payments phoenix-framework
Last synced: 8 months ago
JSON representation
payment card transaction monitoring system
- Host: GitHub
- URL: https://github.com/nayibor/iso8583_monitor
- Owner: nayibor
- Created: 2025-07-15T16:59:13.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2025-08-18T17:00:00.000Z (8 months ago)
- Last Synced: 2025-08-18T17:36:14.472Z (8 months ago)
- Topics: elixir, erlang, fintech, iso8583, lua, payments, phoenix-framework
- Language: Elixir
- Homepage:
- Size: 440 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Iso8583Monitor
This application is a system for montoring iso8583 transactions in real time,tagging them and viewing their status in real time on web browsers.
This system receives iso 8583 messages from diverse sources on a tcp-ip server which is also called an interface server in financial transaction processing.
it then passes the message through a filter using rules written in lua via the excellent [luerl](https://github.com/rvirding/luerl) erlang package
Filtered messages which are colour tagged are then sent through phoenix live view to the various user browsers where the transactions can be viewed.
The purpose of this application is to receive real time feedback on status of transactions so that quick actions can be taken as opposed to polling of the database or other non real time means of monitoring.
##Components##
Backend web application/mis system for:
* creating,reading,updating users
* for creating rules which represent a filter for messages
* for creating endpoints which receive transactions
Tcp Server for
* receiving and parsing iso messages
* pass message through rule system to find if message matches rule .eg. is it a decline,balance enquiry,etc..
* forwarding messages to outbound channel
Web application,rule engine and tcp server built using below:
* [phoenix](https://www.phoenixframework.org/) elixir web framework
* [ranch](https://github.com/ninenines/ranch) erlang socket library
* [luerl](https://github.com/rvirding/luerl) erlang lua library
* [iso8583_erl](https://github.com/nayibor/iso8583_erl.git) erlang iso8583 message parser
To start your Phoenix server:
* Make sure you have elixir and postgres installed
* do a git clone of project ``git clone https://github.com/nayibor/iso8583_monitor.git``
* change directory into iso8583_monitor project ``cd iso8583_monitor``
* edit database config details(host,username,password) in ``config/dev.exs``
* Run `mix setup` to install and setup dependencies
* Start Phoenix endpoint with `mix phx.server` or inside IEx with `iex -S mix phx.server`
* Now you can visit [`localhost:4000`](http://localhost:4000) from your browser.
* You can create interfaces for receiving transactions and rules for colour coding transactions received
* You can send sample financial transactions from your own interface to the created interfaces at the port specified
and they will be forwared to the frontend for quick view
Ready to run in production? Please [check our deployment guides](https://hexdocs.pm/phoenix/deployment.html).
## Learn more
* Official website: https://www.phoenixframework.org/
* Guides: https://hexdocs.pm/phoenix/overview.html
* Docs: https://hexdocs.pm/phoenix
* Forum: https://elixirforum.com/c/phoenix-forum
* Source: https://github.com/phoenixframework/phoenix