node package manager


Travis CI Build Status Coverage Status


Gatewayd (pronounced "gateway-dee") connects payments between Ripple and other Ledgers according to pre-set and dynamic rules, and maintains a historical database of payments through the gateway.


npm install -g gatewayd@4.0.0-beta-1


gatewayd --help
gatewayd start


  1. Node.js
  • The express web module is used to serve HTTP/JSON endpoints
  • A Basic Auth strategy is used for authentication of users, admin.
  • Several NPM modules must be globally installed: db-migrate, pg, forever, and mocha
  1. Postgres
  • The easiest way to get started with Postgres is by launching a free database hosted by Heroku
  • For local development on Mac the simplest installation is via the Postgres App by Heroku.
  • On Linux, you can generally install Postgres from your distro's package manager
  1. Ripple REST API
  • The Ripple REST API provides a simplified HTTP/JSON interface to all the Ripple protocol network operations, such as payments and other transactions.



The update process for gatewayd may change in the future, but for now, updating to a new version follows this process:

  1. Install any new npm modules needed by the new version
    npm install -g gatewayd
  2. Apply schema changes to the database, if the new version includes any.
    gatewayd migrate
  3. Restart the gatewayd processes. (This ends downtime)
    gatewayd start


Gatewayd uses the $HOME/.gatewayd directory for configuration.

To specify a different directory, use the $GATEWAYD_PATH environment variable


Initializers are functions that configure Gatewayd once each upon startup. Initializers are loaded from the directory at ~/.gatewayd/initializers