Skip to content
X9’s Specifications for ICL (Image Cash Letter) to provide Check 21 services
Go Clean Shell Other
Branch: master
Clone or download
adamdecaf Merge pull request #75 from moov-io/renovate/major-all
chore(deps): update module antihax/optional to v1
Latest commit 1351e0b Oct 14, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Create ISSUE_TEMPLATE.md Sep 13, 2018
client build: update openapi-generator to v4.1.3 Oct 4, 2019
cmd cmd/server: files: test validating an invalid file Aug 19, 2019
examples return detail Jun 13, 2019
test test/fuzz: setup fuzzit for continuous fuzzing Aug 19, 2019
.gitignore test/fuzz: setup fuzzit for continuous fuzzing Aug 19, 2019
.travis.yml build: download tools used by TravisCI instead of installing them Aug 15, 2019
AUTHORS.md x9 Moov Authors Oct 2, 2018
CHANGELOG.md release v0.2.0 Aug 20, 2019
CODE_OF_CONDUCT.md x9 code coverage Oct 1, 2018
CONTRIBUTING.md Update CONTRIBUTING.md Jun 6, 2019
CheckDetailAddendumC.go all: check record lengths before parsing them Jun 27, 2019
Dockerfile build: upgrade to Go 1.13 and Debian 10 Sep 5, 2019
Dockerfile-fuzz build: upgrade to Go 1.13 and Debian 10 Sep 5, 2019
LICENSE Initial commit Aug 15, 2018
README.md
bundle.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
bundleControl.go Updates for RuneCountInString Jul 16, 2019
bundleControl_test.go Updates for RuneCountInString Jul 16, 2019
bundleHeader.go Updates for RuneCountInString Jul 16, 2019
bundleHeader_test.go Updates for RuneCountInString Jul 16, 2019
bundle_test.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
cashLetter.go RuneCountInString Jul 15, 2019
cashLetterControl.go RuneCountInString Jul 15, 2019
cashLetterControl_test.go Updates for RuneCountInString Jul 16, 2019
cashLetterHeader.go RuneCountInString Jul 15, 2019
cashLetterHeader_test.go Updates for RuneCountInString Jul 16, 2019
cashLetter_test.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
checkDetail.go all: check record lengths before parsing them Jun 27, 2019
checkDetailAddendumA.go all: check record lengths before parsing them Jun 27, 2019
checkDetailAddendumA_test.go all: check record lengths before parsing them Jun 27, 2019
checkDetailAddendumB.go all: fix range checks w.r.t added crasher files Aug 17, 2019
checkDetailAddendumB_test.go all: check record lengths before parsing them Jun 27, 2019
checkDetailAddendumC_test.go all: check record lengths before parsing them Jun 27, 2019
checkDetail_test.go all: check record lengths before parsing them Jun 27, 2019
codecov.yml RuneCountInString Jul 15, 2019
converters.go updates for image cash letter Jun 3, 2019
creditItem.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
creditItem_test.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
file.go updates for image cash letter Jun 3, 2019
fileControl.go Updates for RuneCountInString Jul 16, 2019
fileControl_test.go Updates for RuneCountInString Jul 16, 2019
fileHeader.go Updates for RuneCountInString Jul 16, 2019
fileHeader_test.go Updates for RuneCountInString Jul 16, 2019
file_test.go updates for image cash letter Jun 3, 2019
go.mod chore(deps): update module antihax/optional to v1 Oct 14, 2019
go.sum chore(deps): update module antihax/optional to v1 Oct 14, 2019
imageViewAnalysis.go RuneCountInString Jul 15, 2019
imageViewAnalysis_test.go Updates for RuneCountInString Jul 16, 2019
imageViewData.go all: fix range checks w.r.t added crasher files Aug 17, 2019
imageViewData_test.go all: fix range checks w.r.t added crasher files Aug 17, 2019
imageViewDetail.go RuneCountInString Jul 15, 2019
imageViewDetail_test.go Updates for RuneCountInString Jul 16, 2019
imagecashletter_test.go test: add several files which crash during parsing Aug 17, 2019
makefile build: update openapi-generator to v4.1.3 Oct 4, 2019
openapi-generator client: re-generate Go client Jun 17, 2019
openapi.yaml api,client: rename _id to ID Aug 13, 2019
reader.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
reader_test.go all: fixup panics found from first hour of fuzzing Jun 21, 2019
renovate.json renovate: only run on monday Feb 28, 2019
returnDetail.go go fmt Jul 15, 2019
returnDetailAddendumA.go all: check record lengths before parsing them Jun 27, 2019
returnDetailAddendumA_test.go all: check record lengths before parsing them Jun 27, 2019
returnDetailAddendumB.go all: check record lengths before parsing them Jun 27, 2019
returnDetailAddendumB_test.go all: check record lengths before parsing them Jun 27, 2019
returnDetailAddendumC.go all: fix range checks w.r.t added crasher files Aug 17, 2019
returnDetailAddendumC_test.go Updates for RuneCountInString Jul 16, 2019
returnDetailAddendumD.go RuneCountInString Jul 15, 2019
returnDetailAddendumD_test.go Updates for RuneCountInString Jul 16, 2019
returnDetail_test.go all: check record lengths before parsing them Jun 27, 2019
routingNumberSummary.go all: check record lengths before parsing them Jun 27, 2019
routingNumberSummary_test.go all: check record lengths before parsing them Jun 27, 2019
userGeneral.go all: check record lengths before parsing them Jun 27, 2019
userGeneral_test.go all: check record lengths before parsing them Jun 27, 2019
userPayeeEndorsement.go RuneCountInString Jul 15, 2019
userPayeeEndorsement_test.go Updates for RuneCountInString Jul 16, 2019
validators.go updates for image cash letter Jun 3, 2019
version.go build: bump version for dev Aug 20, 2019
writer.go updates for image cash letter Jun 3, 2019
writer_test.go x9 to image cash letter changes Jun 4, 2019

README.md

moov-io/imagecashletter

GoDoc Build Status Coverage Status Go Report Card Apache 2 licensed

X9’s Specifications for ICL (Image Cash Letter) to provide Check 21 services

Package github.com/moov-io/imagecashletter implements a file reader and writer for parsing Image Cash Letter (ICL) files.

Docs: docs.moov.io | api docs

Project Status

Moov IMAGECASHLETTER is under active development and in production for multiple companies. Please star the project if you are interested in its progress.

Usage

Go library

github.com/moov-io/imagecashletter offers a Go based Image Cash Letter file reader and writer. To get started checkout a specific example:

ICL File
Example Read Write
Link Link Link

From Source

This project uses Go Modules and thus requires Go 1.11+. You can download the source code and we offer tagged and released versions as well. We highly recommend you use a tagged release for production.

$ git@github.com:moov-io/imagecashletter.git

# Pull down into the Go Module cache
$ go get -u github.com/moov-io/imagecashletter

$ go doc github.com/moov-io/imagecashletter CashLetter

Configuration

The following environmental variables can be set to configure behavior in paygate.

Environmental Variable Description Default
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

Supported and Tested Platforms

  • 64-bit Linux (Ubuntu, Debian), macOS, and Windows
  • Rasberry Pi

Note: 32-bit platforms have known issues and is not supported.

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.

Fuzzing

We currently run fuzzing over ACH in the form of a moov/imagecashletterfuzz Docker image. You can read more or run the image and report crasher examples to security@moov.io. Thanks!

License

Apache License 2.0 See LICENSE for details.

You can’t perform that action at this time.