/paystring

Reference implementation of the PayString Protocol.

Primary LanguageTypeScriptApache License 2.0Apache-2.0

PayString

License: Apache 2 Public API Version: 1.1 Admin API Version: 2020-08-28

Welcome to PayString, the universal payment identifier.

This project is not associated with PayID operated by NPP Australia Ltd. People in Australia are prohibited from using this project. See below for more details.

This is the reference implementation server for PayString, serving the PayString API. It uses TypeScript, a Node.js HTTP server, and a PostgreSQL database.

By default, the server hosts the Public API, which conforms to the PayString Protocol, on port 8080. The server also hosts a second RESTful API on port 8081 for CRUD (Create/Read/Update/Delete) operations to manage PayStrings and associated addresses.

To experiment with PayString, you can start a local server by running npm run devEnvUp, which uses our local docker-compose.yml file, which implicitly starts both a database and a PayString server inside Docker containers. To work on the PayString server source code itself, you can start a PostgreSQL database to develop against by running npm run devDbUp, which starts a database in a Docker container, and a local PayString server.

To clean up the associated Docker containers after you create a local server or database container, run npm run devDown.

Further Reading

Legal

By using, reproducing, or distributing this code, you agree to the terms and conditions for use (including the Limitation of Liability) in the Apache License 2.0. If you do not agree, you may not use, reproduce, or distribute the code. This code is not authorised for download in Australia. Any persons located in Australia are expressly prohibited from downloading, using, reproducing or distributing the code. This code is not owned by, or associated with, NPP Australia Limited, and has no sponsorship, affiliation or other connection with the “Pay ID” service operated by NPP Australia Limited in Australia.