The Customers project focuses on solving authentic identification of humans who are legally able to hold and transfer currency within the US. Primarily this project solves Know Your Customer (KYC), Customer Identification Program (CIP), Office of Foreign Asset Control (OFAC) checks and verification workflows to comply with US federal law and ensure authentic transfers. Also, Customers has an objective to be a service for detailed due diligence on individuals and companies for Financial Institutions and services in a modernized and extensible way.
Running Moov Customers Server¶
- The quickest way to try Customers is with our Docker compose setup.
- Binary Distributions are released with every versioned release. Frequently added to the VM/AMI build script for the application needing Moov Customers.
- A Docker container is built and added to Docker Hub with every versioned released.
- Our hosted api.moov.io is updated with every versioned release. Our Kubernetes example is what Moov utilizes in our production environment.
Customers has a Docker Compose setup which you can run locally. This uses the latest releases of Customers and Watchman.
$ docker-compose up Creating customers_watchman_1 ... done Creating customers_customers_1 ... done ... customers_1 | ts=2020-03-06T22:56:24.2184402Z caller=main.go:50 startup="Starting moov-io/customers server version v0.4.0-rc1" customers_1 | ts=2020-03-06T22:56:24.393462Z caller=watchman.go:102 watchman="using http://watchman:8084 for Watchman address" customers_1 | ts=2020-03-06T22:56:24.3951132Z caller=main.go:171 startup="binding to :8087 for HTTP server"
Once the systems start you can access Customers via
http://localhost:8087 and Watchman's web interface or api.
Download the latest Moov Customers server release for your operating system and run it from a terminal.
$ ./customers-darwin-amd64 ts=2020-02-25T19:30:58.193727Z caller=main.go:50 startup="Starting moov-io/customers server version v0.4.0-rc1" ts=2020-02-25T19:30:58.193846Z caller=main.go:63 main="sqlite version 3.30.1" ts=2020-02-25T19:30:58.193863Z caller=sqlite.go:93 main="sqlite version 3.30.1" ts=2020-02-25T19:30:58.196666Z caller=main.go:207 main="WARNING!!!! USING INSECURE DEFAULT FILE STORAGE, set FILEBLOB_HMAC_SECRET for ANY production usage" ts=2020-02-25T19:30:58.196709Z caller=main.go:90 admin="listening on [::]:9097" ts=2020-02-25T19:30:58.196747Z caller=watchman.go:102 watchman="using http://localhost:8084 for Watchman address" ts=2020-02-25T19:30:58.19709Z caller=main.go:171 startup="binding to :8087 for HTTP server"
Moov Customers is dependent on Docker being properly installed and running on your machine. Ensure that Docker is running. If your Docker client has issues connecting to the service review the Docker getting started guide if you have any issues.
Execute the Docker run command
$ docker run -p 8087:8087 -p 9097:9097 moov/customers:latest ts=2020-02-25T19:30:58.193727Z caller=main.go:50 startup="Starting moov-io/customers server version v0.4.0-rc1" ...
We also offer a Helm Chart for deployment.
View our section on environmental variables for options that Customers accepts.
Customers Admin Port¶
:9097 is bound by Customers for our admin service. This HTTP server has endpoints for Prometheus metrics (
GET /metrics), readiness (
GET /ready) and liveness checks (
See our API documentation for Moov Customers endpoints.