moov-io/accounts
Moov Accounts is a general ledger accounting system designed to support the handling of Customer funds deposited at a bank or credit union. Implemented as an RESTful API and Moov Accounts can be leveraged by a financial institution to provide modern banking services to its customers. Moov Accounts can be utilized by a technology company to manage Customer assets that are in a single For Benefit of Account at a financial institution. Moov's primary use is with paygate. (A full implementation of ACH origination)
This implementation is currently not complete for use in production, but any advice or feedback would be greatly appreciated!
Docs: docs.moov.io | api docs
Reading
Accounting for Developers Part 1, Part 2, Part 3.
Deployment
You can download our docker image moov/accounts
from Docker Hub or use this repository. No configuration is required to serve on :8085
and metrics at :9095/metrics
in Prometheus format.
Configuration
The following environmental variables can be set to configure behavior in Accounts.
Environmental Variable |
Description |
Default |
DEFAULT_ROUTING_NUMBER |
ABA routing number used when accounts are created. |
Required |
SQLITE_DB_PATH |
Local filepath location for the paygate SQLite database. |
accounts.db |
ACCOUNT_STORAGE_TYPE |
Storage engine for account data. |
Default: sqlite |
TRANSACTION_STORAGE_TYPE |
Storage engine for transaction data. |
Default: sqlite |
LOG_FORMAT |
Format for logging lines to be written as. |
Options: json , plain - Default: plain |
HTTP_BIND_ADDRESS |
Address for paygate to bind its HTTP server on. This overrides the command-line flag -http.addr . |
Default: :8085 |
HTTP_ADMIN_BIND_ADDRESS |
Address for paygate to bind its admin HTTP server on. This overrides the command-line flag -admin.addr . |
Default: :9095 |
HTTPS_CERT_FILE |
Filepath containing a certificate (or intermediate chain) to be served by the HTTP server. Requires all traffic be over secure HTTP. |
Empty |
HTTPS_KEY_FILE |
Filepath of a private key matching the leaf certificate from HTTPS_CERT_FILE . |
Empty |
Getting Help
channel |
info |
Project Documentation |
Our project documentation available online. |
Google Group moov-users |
The Moov users Google group is for contributors other people contributing to the Moov project. You can join them without a google account by sending an email to moov-users+subscribe@googlegroups.com. After receiving the join-request message, you can simply reply to that to confirm the subscription. |
Twitter @moov_io |
You can follow Moov.IO's Twitter feed to get updates on our project(s). You can also tweet us questions or just share blogs or stories. |
GitHub Issue |
If you are able to reproduce an problem please open a GitHub Issue under the specific project that caused the error. |
moov-io slack |
Join our slack channel to have an interactive discussion about the development of the project. Request an invite to the slack channel |
Contributing
Yes please! Please review our Contributing guide and Code of Conduct to get started!
Note: This project uses Go Modules, which requires Go 1.11 or higher, but we ship the vendor directory in our repository.
License
Apache License 2.0 See LICENSE for details.