Package github.com/moov-io/fed
implements utility services for searching the United States Federal Reserve System such as ABA routing numbers, Financial Institution name lookup and Fed Wire routing information. Moov's primary usage for this project is with ACH origination in our paygate project.
Docs: docs.moov.io | api docs
Moov FED is under active development and in production for multiple companies. Please star the project if you are interested in its progress.
Go library github.com/moov-io/fed offers a Go based search for FEDACH and FEDWIRE Participants.
To get started using Fed download the latest release or our Docker image.
Docs: docs.moov.io | api docs
Note: The Docker image ships with old data files (FedACHdir.txt
and fpddir.txt
) as example data. In a production deployment updated files should be obtained from your Financial Institution and provided to the server process.
Fed can be used to lookup a Financial Institutions for Automated Clearing House (ACH) transfers by their routing number (?routingNumber=...
) or name (?name=...
):
$ curl -s localhost:8086/fed/ach/search?routingNumber=273976369 | jq .
{
"achParticipants": [
{
"routingNumber": "273976369",
"officeCode": "O",
"servicingFRBNumber": "071000301",
"recordTypeCode": "1",
"revised": "041513",
"newRoutingNumber": "000000000",
"customerName": "VERIDIAN CREDIT UNION",
"achLocation": {
"address": "1827 ANSBOROUGH",
"city": "WATERLOO",
"state": "IA",
"postalCode": "50702",
"postalCodeExtension": "0000"
},
"phoneNumber": "3192878332",
"statusCode": "1",
"viewCode": "1"
}
],
"wireParticipants": null
}
Fed can be used to lookup a Financial Institutions for FED Wire Messages (FEDWire) by their routing number (?routingNumber=...
) or name (?name=...
):
$ curl -s localhost:8086/fed/wire/search?routingNumber=273976369 | jq .
{
"achParticipants": null,
"wireParticipants": [
{
"routingNumber": "273976369",
"telegraphicName": "VERIDIAN",
"customerName": "VERIDIAN CREDIT UNION",
"wireLocation": {
"city": "WATERLOO",
"state": "IA"
},
"fundsTransferStatus": "Y",
"fundsSettlementOnlyStatus": " ",
"bookEntrySecuritiesTransferStatus": "N",
"date": "20141107"
}
]
}
Fed ships a client library generated from an OpenAPI Specification (Go package github.com/moov-io/fed/client
). We generate a Go version as Moov's primary language is Go, but other languages can be generated. To make a change edit openapi.yaml
and run make generate
. Commit the changes and open a pull request.
Environmental Variable | Description | Default |
---|---|---|
FEDACH_DATA_PATH |
Filepath to FEDACH data file | ./data/FedACHdir.txt |
FEDWIRE_DATA_PATH |
Filepath to FedWIRE data file | ./data/fpddir.txt |
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: :8086 |
HTTP_ADMIN_BIND_ADDRESS |
Address for paygate to bind its admin HTTP server on. This overrides the command-line flag -admin.addr . |
Default: :9096 |
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 |
The data and formats in this repository represent a compilation of the FedWire and FedACH data from the Federal Reserve Bank Services site.
(c) Federal Reserve Banks
By accessing the data in this repository you agree to the Federal Reserve Banks' Terms of Use and the E-Payments Routing Directory Terms of Use Agreement.
THIS REPOSITORY IS NOT AFFILIATED WITH THE FEDERAL RESERVE BANKS AND IS NOT AN OFFICIAL SOURCE FOR THE FEDWIRE AND THE FEDACH DATA.