Code Monkey home page Code Monkey logo

pay-selfservice's Introduction

pay-selfservice

GOV.UK Pay Self Service portal (Node.js)

We use Architecure Decision Records to keep track of the history of software design decisions on this application. Please see docs/arch.

Key environment variables

if you wish to override any variables, please do the following:

setup

cd $WORKSPACE/pay-selfservice/config
cp dev-env.json.example dev-env.json

to edit

cd ~/workspace/pay-selfservice/config
vi dev-env.json

to test

npm run compile && npm test

to run

LOCAL_ENV=true msl run

Variable required default value Description
PORT X 9200 The port number for the express server to be bound at runtime
SESSION_ENCRYPTION_KEY X key to be used by the cookie encryption algorithm. Should be a large unguessable string (More Info).
PUBLIC_AUTH_URL X The publicauth endpoint to use when API Tokens.
PUBLIC_AUTH_URL X The endpoint to connector base URL.
SECURE_COOKIE_OFF false/undefined To switch off generating secure cookies. Set this to true only if you are running self service in a non HTTPS environment.
HTTP_PROXY_ENABLED false/undefined To enable proxying outbound traffic of HTTP(S) requests. If set to true make sure to set the following 3 variables
HTTP_PROXY HTTP proxy url
HTTPS_PROXY HTTPS proxy url
NO_PROXY host:port(s) that need to be by passed by the proxy. Supports comma separated list
NODE_WORKER_COUNT 1 The number of worker threads started by node cluster when run in production mode

#set this to 'true' only if you are running self service in a non HTTPS environment. SECURE_COOKIE_OFF=true

Transaction list

View the transaction list for a given account id.

    GET /transactions

Transaction Search

Search transactions by reference, status and from and to date

    POST /transactions
Form param always present Description
reference X The service reference for a given payment
email X The user email address used for the given payment
status X The payment status
fromDate X A starting date to search for payments
toDate X An ending date to search for payments

Transaction Events list

View the transaction events list for a given account id.

    GET /transactions/{chargeId}
Path param always present Description
chargeId X The charge Id for which the transaction events should be retrieved

Developer tokens

Generate, edit and revoke tokens for a given account id.

    /tokens

Licence

MIT License

Responsible Disclosure

GOV.UK Pay aims to stay secure for everyone. If you are a security researcher and have discovered a security vulnerability in this code, we appreciate your help in disclosing it to us in a responsible manner. We will give appropriate credit to those reporting confirmed issues. Please e-mail [email protected] with details of any issue you find, we aim to reply quickly.

pay-selfservice's People

Contributors

kakumara avatar danailminchev avatar ijmad avatar pauloportugal avatar jonheslop avatar rauligs avatar maxcbc avatar tombye avatar ckalista avatar fofr avatar heathd avatar zadsas avatar mcgoooo avatar simad avatar sandorarpa avatar imranbohoran avatar alexbishop1 avatar rahul-vinayak avatar markyjones avatar bazbremner avatar brid avatar whpearson avatar daniele-occhipinti avatar mikemey avatar ebiere avatar davidillsley avatar acceleanu avatar mahmudh avatar siliconmeeple avatar joshmyers avatar

Watchers

James Cloos avatar M McNicol avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.