Interledger Pay is a simplified payments platform, where you can easily send or request money from anyone anywhere in the world, if you own a Wallet Address. A Wallet Address is a standardized identifier for a payment account. In the same way that an email address provides an identifier for a mailbox in the email ecosystem, a wallet address is used by an account holder to share the details of their account with a counter-party. If you don't already own one, you can create one at Interledger Test Wallet.
See Interledger Pay in action here.
Never heard of Interledger before, or you would like to learn more? Here are some good places to start:
Please read the contribution guidelines before submitting contributions. All contributions must adhere to our code of conduct.
# Install Node > 20
nvm install lts/iron
nvm use lts/iron
# Install pnpm using Corepack
corepack enable
If you do not have corepack
installed locally you can use npm
or yarn
to install pnpm
:
npm install pnpm -g
# or
yarn install pnpm -g
For alternative methods of installing pnpm
, you can refer to the official pnpm
documentation.
To install dependencies, execute:
pnpm i
In order for the Interledger Pay to function, it is necessary to configure the environment variables appropriately. You must duplicate the example environment file, .env.example
, into your local environment file, .env
.
Note The local environment file (
.env
) is NOT tracked in the version control system, and should NOT be included in any commits.
Navigate to the project's root directory and enter the following command:
cp ./docker/dev/.env.example ./docker/dev/.env
Using your preferred text editor, open the ./docker/dev/.env
file and configure the necessary environment variables.
You will need to create a USD wallet address in the Test Wallet application, then generate public and private key for the wallet address in the Developer Keys
found in the Settings
menu of Interledger Test Wallet. With the generated values you can proceed to update the following environment variables: PRIVATE_KEY
to the generated base64 encoded private key, KEY_ID
to the wallet address key id, and WALLET_ADDRESS
to the created wallet address.
REDIRECT_URL
variable is the url for the interaction with the Identity Provider Page, in our case, localy this would be http://localhost:3000/finish
. INTERLEDGER_PAY_HOST
is the url where Interledger Pay is hosted, localy the value is http://localhost:3000
. We are using cookies to store some data, so a cookie secret key needs to be set in SESSION_COOKIE_SECRET_KEY
.
Navigate to the project's root directory and execute:
pnpm dev
Upon executing the above command, the following will be available