Payments Engine is a simple toy payments engine that reads a series of transactions from a CSV, updates client accounts, handles disputes and chargebacks, and then outputs the state of clients accounts as a CSV.
Installation
git clone [email protected]:barabadzhi/payments-engine.git
Usage
cargo run -- transactions.csv > accounts.csv
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
Roadmap
- Read a series of transactions from a file
- Update client accounts
- Handle disputes
- Handle resolutions
- Handle chargebacks
- Output the state of accounts
- Implement meaningful error handling
- Add integration tests
- Add CI
- Implement test data generator