Skip to content

Commit

Permalink
docs: update twitter and switch titles to sentence case (#954)
Browse files Browse the repository at this point in the history
* switch twitter and sentence case

* make docs site toc sentence case
  • Loading branch information
nlakritz committed Jul 7, 2021
1 parent 5166cac commit 5ce71f8
Show file tree
Hide file tree
Showing 18 changed files with 94 additions and 94 deletions.
48 changes: 24 additions & 24 deletions README.md
Expand Up @@ -21,7 +21,7 @@
[![Slack Channel](https://slack.moov.io/badge.svg?bg=e01563&fgColor=fffff)](https://slack.moov.io/)
[![Docker Pulls](https://img.shields.io/docker/pulls/moov/ach)](https://hub.docker.com/r/moov/ach)
[![GitHub Stars](https://img.shields.io/github/stars/moov-io/ach)](https://github.com/moov-io/ach)
[![Twitter](https://img.shields.io/twitter/follow/moov_io?style=social)](https://twitter.com/moov_io?lang=en)
[![Twitter](https://img.shields.io/twitter/follow/moov?style=social)](https://twitter.com/moov?lang=en)

# moov-io/ach
Moov's mission is to give developers an easy way to create and integrate bank processing into their own software products. Our open source projects are each focused on solving a single responsibility in financial services and designed around performance, scalability, and ease of use.
Expand All @@ -30,27 +30,27 @@ ACH implements a reader, writer, and validator for Automated Clearing House ([AC

If you're looking for a complete implementation of ACH origination (file creation), OFAC checks, micro-deposits, SFTP uploading, and other features, the [moov-io/paygate](https://github.com/moov-io/paygate) project aims to be a full system for ACH transfers. Otherwise, check out our article on [How and When to use the Moov ACH Library](https://moov.io/blog/education/how-and-when-to-use-the-moov-ach-library/).

## Table of Contents
## Table of contents

- [Project Status](#project-status)
- [Project status](#project-status)
- [Usage](#usage)
- As an API
- [Docker](#docker) ([Config](#configuration-settings))
- [Google Cloud](#google-cloud-run-button) ([Config](#configuration-settings))
- [HTTP API](#http-api) ([Config](#configuration-settings))
- [Data Persistence](#data-persistence)
- [As a Go Module](#go-library)
- [As a Command Line Tool](#command-line)
- [As an In-Browser Parser](##in-browser-ach-file-parser)
- [SDKs (OpenAPI)](#sdks)
- [Learn About ACH](#learn-about-ach)
- [Data persistence](#data-persistence)
- [As a Go module](#go-library)
- [As a command line tool](#command-line)
- [As an in-browser parser](##in-browser-ach-file-parser)
- [OpenAPI SDKs](#sdks)
- [Learn about ACH](#learn-about-ach)
- [FAQ](#faq)
- [Getting Help](#getting-help)
- [Supported and Tested Platforms](#supported-and-tested-platforms)
- [Getting help](#getting-help)
- [Supported and tested platforms](#supported-and-tested-platforms)
- [Contributing](#contributing)
- [Related Projects](#related-projects)
- [Related projects](#related-projects)

## Project Status
## Project status

Moov ACH is actively used in multiple production environments. Please star the project if you are interested in its progress. The project supports generating and parsing all Standard Entry Class (SEC) codes. If you have layers above ACH to simplify tasks, perform business operations, or found bugs we would appreciate an issue or pull request. Thanks!

Expand Down Expand Up @@ -92,7 +92,7 @@ curl http://localhost:8080/files/<YOUR-UNIQUE-FILE-ID>
{"file":{"id":"<YOUR-UNIQUE-FILE-ID>","fileHeader":{"id":"","immediateDestination":"231380104","immediateOrigin":"121042882", ...
```

### Google Cloud Run Button
### Google Cloud Run button

To get started in a hosted environment you can deploy this project to the Google Cloud Platform.

Expand Down Expand Up @@ -212,7 +212,7 @@ Examples: [Go](examples/http/main.go) | [Ruby](https://github.com/moov-io/ruby-a
- [Create an ACH file for a payment and get the raw file](https://github.com/moov-io/ruby-ach-demo)


### Configuration Settings
### Configuration settings

| Environmental Variable | Description | Default |
|-----|-----|-----|
Expand All @@ -223,11 +223,11 @@ Examples: [Go](examples/http/main.go) | [Ruby](https://github.com/moov-io/ruby-a
| `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 |

### Data Persistence
### Data persistence
By design ACH **does not persist** (save) any data about the files, batches, or entry details created. The only storage occurs in memory of the process and upon restart ACH will have no files, batches, or data saved. Also, no in memory encryption of the data is performed.


### Go Library
### Go library

This project uses [Go Modules](https://github.com/golang/go/wiki/Modules) and Go v1.14 or higher. See [Golang's install instructions](https://golang.org/doc/install) for help in setting up Go. You can download the source code and we offer [tagged and released versions](https://github.com/moov-io/ach/releases/latest) as well. We highly recommend you use a tagged release for production.

Expand Down Expand Up @@ -283,7 +283,7 @@ The package [`github.com/moov-io/ach`](https://pkg.go.dev/github.com/moov-io/ach

</details>

### Command Line
### Command line

On each release there's an `achcli` utility released. This tool can display ACH files in a human-readable format which is easier to read than their plaintext format. It also allows masking `DFIAccountNumber` values with the `-mask` flag.

Expand All @@ -309,7 +309,7 @@ Describing ACH file 'test/testdata/ppd-debit.ach'
1 1 1 100000000 0
```

### In-Browser ACH File Parser
### In-browser ACH file parser
Using our [in-browser utility](http://oss.moov.io/ach/), you can instantly convert ACH files into JSON. Either paste in ACH file content directly or choose a file from your local machine. This tool is particulary useful if you're handling sensitive PII or want perform some quick tests, as operations are fully client-side with nothing stored in memory.

### SDKs
Expand All @@ -320,7 +320,7 @@ Below are some SDKs generated from the API documentation:

- TODO - OpenAPI Guide

## Learn About ACH
## Learn about ACH

- [Official Nacha ACH Guide for Developers](https://dev-ach-guide.pantheonsite.io/)
- [Intro to ACH](https://moov-io.github.io/ach/intro/)
Expand All @@ -347,18 +347,18 @@ We support generating and parsing all Standard Entry Class (SEC) codes.
You can purchase the most recent Nacha Operating Rules and Guidelines resource directly from their <a href="https://www.nacha.org/store">webstore</a>. Additionally, Nacha has published a <a href="https://dev-ach-guide.pantheonsite.io/">free ACH guide for developers</a>.
</details>

## Getting Help
## Getting help

If you have ACH-specific questions, NACHA (National Automated Clearing House Association) has their [complete specification](docs/2013-Corporate-Rules-and-Guidelines.pdf) for all file formats and message types.

channel | info
------- | -------
[Project Documentation](https://moov-io.github.io/ach/) | Our project documentation available online.
Twitter [@moov_io](https://twitter.com/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.
Twitter [@moov](https://twitter.com/moov) | 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](https://github.com/moov-io/ach/issues/new) | If you are able to reproduce a problem please open a GitHub Issue under the specific project that caused the error.
[moov-io slack](https://slack.moov.io/) | Join our slack channel to have an interactive discussion about the development of the project.

## Supported and Tested Platforms
## Supported and tested platforms

- 64-bit Linux (Ubuntu, Debian), macOS, and Windows
- Raspberry Pi
Expand All @@ -384,7 +384,7 @@ We maintain a comprehensive suite of unit tests and recommend table-driven testi
We currently run fuzzing over ACH in the form of a [`moov/achfuzz`](https://hub.docker.com/r/moov/achfuzz) Docker image. You can [read more](./test/fuzz-reader/README.md) or run the image and report crasher examples to [`security@moov.io`](mailto:security@moov.io). Thanks!


## Related Projects
## Related projects
As part of Moov's initiative to offer open source fintech infrastructure, we have a large collection of active projects you may find useful:

- [Moov Watchman](https://github.com/moov-io/watchman) offers search functions over numerous trade sanction lists from the United States and European Union.
Expand Down
2 changes: 1 addition & 1 deletion docs/README.md
Expand Up @@ -13,6 +13,6 @@ If you have ACH-specific questions, NACHA (National Automated Clearing House Ass
channel | info
------- | -------
[Project Documentation](https://moov-io.github.io/ach/) | Our project documentation available online.
Twitter [@moov_io](https://twitter.com/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.
Twitter [@moov](https://twitter.com/moov) | 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](https://github.com/moov-io/ach/issues/new) | If you are able to reproduce a problem please open a GitHub Issue under the specific project that caused the error.
[moov-io slack](https://slack.moov.io/) | Join our slack channel to have an interactive discussion about the development of the project.
36 changes: 18 additions & 18 deletions docs/_data/docs-menu.yml
@@ -1,4 +1,4 @@
- label: Getting Started
- label: Getting started
items:
- name: Overview
link: /
Expand All @@ -11,44 +11,44 @@
link: /usage-docker/
- name: Google Cloud Run
link: /usage-google-cloud/
- name: API Configuration
- name: API configuration
link: /usage-configuration/
- name: Go Library
- name: Go library
link: /usage-go/
- name: Command Line
- name: Command line
link: /usage-command-line/

- label: ACH File Setup
- label: ACH file setup
items:
- name: Create File
- name: Create file
link: /create-file/
- name: File Structure
- name: File structure
link: /file-structure/
- name: SEC Codes Table
- name: SEC codes table
link: /sec-codes-table/

- label: File Operations
- label: File operations
items:
- name: Custom Validation
- name: Custom validation
link: /custom-validation/
- name: Balanced Offset
- name: Balanced offset
link: /balanced-offset/
- name: Flatten Batches
- name: Flatten batches
link: /flatten-batches/
- name: Merging Files
- name: Merging files
link: /merging-files/
- name: Segmenting Files
- name: Segmenting files
link: /segment-file/
- name: Return Files
- name: Return files
link: /returns/
- name: Change Files
- name: Change files
link: /changes/

- label: Production and Monitoring
- label: Production and monitoring
items:
- name: Kubernetes
link: /deployment/
- name: Prometheus Metrics
- name: Prometheus metrics
link: /metrics/
- name: Building for AWS Lambda
link: /aws/lambda/building-go-for-lambda/
Expand Down
6 changes: 3 additions & 3 deletions docs/balanced-offset.md
@@ -1,20 +1,20 @@
---
layout: page
title: Balanced Offset
title: Balanced offset
hide_hero: true
show_sidebar: false
menubar: docs-menu
---

# Balanced Offsets
# Balanced offsets

ACH files can have "offset records" which are [EntryDetail](https://godoc.org/github.com/moov-io/ach#EntryDetail) records that balance a file's debits and credits. This means if there are debits, there is a credit offset matching the sum of the debits. If there are credits, there is a debit offset matching the sum of the credits. They are mutually exclusive.

Offset files are used to offset transactions from a single account inside of the ODFI. The Offset is the last record which settles the funds into a single ODFI account.

Note: Balanced offset files (via `WithOffset`) are only in ACH v1.1.0 and later.

## Setting Offset Metadata
## Setting offset metadata

An ACH [Batch](https://godoc.org/github.com/moov-io/ach#Batch) supports calling [WithOffset](https://godoc.org/github.com/moov-io/ach#Batch.WithOffset) to set offset information such as routing number, account number, account type, and a description.

Expand Down
6 changes: 3 additions & 3 deletions docs/changes.md
@@ -1,12 +1,12 @@
---
layout: page
title: Change Files
title: Change files
hide_hero: true
show_sidebar: false
menubar: docs-menu
---

# Change Files
# Change files

A Notification of Change (NOC) is a non-dollar entry transmitted from a receiving depository financial institution (RDFI) to the originating depository financial institution (ODFI). These are sent in response to outdated or erroneous information in an initial entry. An NOC often occurs due to bank mergers or acquisitions that change account and/or routing numbers. If an RDFI sends an NOC, the ODFI will need to inform their originator promptly.

Expand Down Expand Up @@ -50,7 +50,7 @@ addenda98.TraceNumber = "91012980000088"
//entry.Addenda98 = addenda98
```

### Change Codes
### Change codes

| Code | Reason | Description |
|----|-----|------|
Expand Down
8 changes: 4 additions & 4 deletions docs/create-file.md
@@ -1,20 +1,20 @@
---
layout: page
title: ACH File Setup
title: ACH file setup
hide_hero: true
show_sidebar: false
menubar: docs-menu
---

# Create a File
# Create a file

Creating an Automated Clearing House (ACH) file can be done several ways:

- [Using Go and our generated client](#go-client)
- [Uploading a JSON representation](#upload-a-json-representation)
- [Uploading a raw ACH file](#upload-a-json-representation)

## Go Client
## Go client

We have an example of [using our Go client and uploading the JSON representation](https://github.com/moov-io/ach/blob/master/examples/http/main.go). The basic idea follows this structure:

Expand All @@ -36,7 +36,7 @@ We have [example ACH files](https://github.com/moov-io/ach/blob/master/test/test

Note: The header `Content-Type: application/json` must be set to parse the file as JSON, otherwise Nacha's format will be assumed.

### Validate Options
### Validate options

When creating a file the server supports query parameters for setting `ValidateOpts` values.

Expand Down
12 changes: 6 additions & 6 deletions docs/custom-validation.md
@@ -1,18 +1,18 @@
---
layout: page
title: Custom Validation
title: Custom validation
hide_hero: true
show_sidebar: false
menubar: docs-menu
---

# Custom Validation
# Custom validation

ACH files can vary sometimes from the official NACHA guidelines due to vendor changes. Moov ACH defaults to NACHA guidelines, so to handle this there's an exported `ValidateWith(opts)` method on some structures (`File`, `FileHeader`, etc).

The [`ValidateOpts`](https://godoc.org/github.com/moov-io/ach#ValidateOpts) struct can have fields added in minor releases without breaking API compatibility with callers. The default values in this struct match with NACHA's guidelines.

## Validation Options
## Validation options

The following options can be used with `File.ValidateWith` and `File.SetValidation` to alter the default NACHA validation rules.

Expand Down Expand Up @@ -59,19 +59,19 @@ if err != nil {
}
```

## HTTP Server
## HTTP server

The ACH HTTP server can accept `ValidateOpts` when [Validating a file](https://moov-io.github.io/ach/api/#get-/files/{fileID}/validate). This will leverage the above one-off validation methods and return any errors.

**Create a File**
**Create a file**
```
curl -X POST --data-binary @test/testdata/ppd-debit.ach http://localhost:8080/files/create
```
```
{"id":"b1910446fd904abc8b2cee358ffb3673c2cb8a62","error":null}
```

**Apply Custom Validation Rules**
**Apply custom validation rules**

```
curl -X POST --data-binary '{"requireABAOrigin": true}' http://localhost:8080/files/b1910446fd904abc8b2cee358ffb3673c2cb8a62/validate
Expand Down
6 changes: 3 additions & 3 deletions docs/file-structure.md
@@ -1,12 +1,12 @@
---
layout: page
title: File Structure
title: File structure
hide_hero: true
show_sidebar: false
menubar: docs-menu
---

## Sequence of Records and Description
## Sequence of records and description

Each NACHA formatted file you originate consists of the following records:

Expand All @@ -20,7 +20,7 @@ Each NACHA formatted file you originate consists of the following records:
Each file begins with a File Header record. Following the File Header Record may be any number of batches. Each batch is identified by a Batch Header Record and contains one or more Entry Detail Records. At the end of each batch is a Batch Control Record. Each file is ended with a File Control Record.
This [diagram](https://raw.githubusercontent.com/moov-io/ach/master/docs/ach_file_structure_shg.gif) illustrates the Sequence of Records for ACH entries. The sequence of records will always be the same, regardless of SEC code. Out-of-sequence records or lack of a mandatory record will cause all or portions of the file to reject. Padding with “9” records at the end of the file is optional.

## Input File Descriptions
## Input file descriptions

### File Header

Expand Down
6 changes: 3 additions & 3 deletions docs/flatten-batches.md
@@ -1,20 +1,20 @@
---
layout: page
title: Flatten Batches
title: Flatten batches
hide_hero: true
show_sidebar: false
menubar: docs-menu
---

# Flatten Batches
# Flatten batches

File creation honors the order and number of Batch's that are created by the client. This is not optimized for the smallest file size and cost, that could be sent to the Federal Reserve for processing.

Flattening batches is a post file creation process that takes an input of an ACH.File and returns an ACH.File which has been optimized by flattening (merging) Batch Headers that have the same information and appending all Entries into a single Batch.

Note: FlattenBatches (via `FlattenBatches()`) is only in ACH v1.2.0 and later.

## Creating Flattened Batches
## Creating flattened batches

An ACH [File](https://godoc.org/github.com/moov-io/ach#File) supports calling [FlattenBatches](https://godoc.org/github.com/moov-io/ach#File.FlattenBatches):

Expand Down
2 changes: 1 addition & 1 deletion docs/intro.md
Expand Up @@ -26,7 +26,7 @@ NACHA includes Members in the process of establishing Rules for the ACH Network,

[Source: ACH Network: How it Works](https://www.nacha.org/ach-network)

## Developer Overview
## Developer overview

Nacha has published an [ACH Guide for Developers](https://dev-ach-guide.pantheonsite.io/) that covers the basics of ACH payment flow, entry types, and file structure.

Expand Down

0 comments on commit 5ce71f8

Please sign in to comment.