Open source

Contributing

@localpay/verification-engine is open source. Contributions are welcome — parser additions, test coverage, bug fixes, and documentation improvements. Follow the workflow below to keep the codebase stable.

Branch model

cont

All contributor PRs target this branch. Active development lives here.

publish

Stable releases only. Merges from cont are performed exclusively by the package owner.

Workflow

1

Fork and set up your branch

git checkout cont git pull origin cont git checkout -b feature/add-new-bank-parser npm install npm test
2

Make your changes

For new bank parsers, implement ParserAndExtractor and pass it through the parsers option. Include fixture tests for both extract() and receiptParser(). Anonymize any real receipt data.

3

Run checks before opening your PR

npm run lint npm test npm --cache /tmp/localpackage-npm-cache pack --dry-run
4

Open a pull request into cont

Include a clear description: what changed, why, and how to test it. Link any related issues.

Rules

Do

Open PRs against the cont branch only.
Include a clear description of the change in your PR.
Parser changes must include fixture tests for extract() and receiptParser().
New banks must implement the ParserAndExtractor interface.
Anonymize all real receipt samples before adding as fixtures.
Discuss breaking API changes before implementation.

Don't

Do not open PRs directly into publish — only the package owner merges cont → publish.
Do not commit secrets, API keys, or auth tokens.
Do not add real customer receipts or private account numbers.
Do not add NestJS, Prisma, Express, or any frontend framework to the core package.
Do not merge your own PR without review.