Skip to content
Specifications for Interledger and related protocols (see the table of contents in the README for which ones to read)
HTML JavaScript Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Update CircleCI config.yml (#490) Oct 30, 2018
.github chore: fix newlines in stale message May 10, 2018
0001-interledger-architecture docs(se): remove refunds, simplify, final edits Oct 19, 2019
0009-simple-payment-setup-protocol Fix typos (#560) Oct 23, 2019
0014-paid-http-apis Fixes #507 (#508) Feb 15, 2019
0015-ilp-addresses Amended ILP Address RFC, adding an explanation of a `segment` (#471) Oct 9, 2018
0018-connector-risk-mitigations docs(0018): add connector risk information Jan 30, 2019
0019-glossary Remove dead link & ledger layer requirements (#526) Apr 23, 2019
0022-hashed-timelock-agreements fix: mention that the preimage may be known to Alice (#344) Nov 27, 2017
0023-bilateral-transfer-protocol Rebuild templates - Skip Version Check Oct 9, 2019
0026-payment-pointers Link to (#556) Oct 14, 2019
0027-interledger-protocol-4 Remove reference to PSK2 (#543) Aug 21, 2019
0029-stream Merge branch 'master' of into df/add-stre… Oct 23, 2019
0030-notes-on-oer-encoding Fix negative integer examples (#528) May 13, 2019
0031-dynamic-configuration-protocol fix typo Jun 4, 2019
0035-ilp-over-http docs(0035): clarify host header Mar 6, 2019
0036-spsp-pull-payments Update 0036-spsp-pull-payments/ May 7, 2019
0037-spsp-invoices docs(0037): fix typo (#530) May 14, 2019
0038-settlement-engines Update Nov 8, 2019
asn1 First draft of ILDCP spec (#446) Aug 15, 2018
assets chore: add oss logo (#462) Aug 20, 2018
scripts Add CC-BY-SA badge to footer (#502) Jan 17, 2019
shared/graphs fix: minor diagram edits Aug 12, 2019
.editorconfig docs(0028): update spec with monetization tag observation changes Jul 11, 2019
.gitignore Update OER Encoding of Dates (#505) Feb 11, 2019 Update to clarify patent and copyright (#495) Nov 19, 2018
LICENSE Add CC-BY-SA 4.0 license (#492) Nov 8, 2018 docs(se): remove refunds, simplify, final edits Oct 19, 2019
package.json Add versioning to RFCs (#206) Jul 18, 2017

Interledger RFCs gitter

This repository contains a collection of various specifications and documentation related to the Interledger Protocol (ILP). These documents or requests-for-comment (RFCs) are published by various authors and publication here does not imply official status unless otherwise specified in the document.

The process for submitting an RFC is documented in the RFC Process.

For the main reference implementation of the ILP stack, see Interledger.js.

ASN.1 and OER

A number of the protocols define data structures in ASN.1 notation. The collection of definitions is in asn1.

Changes to these files are automatically checked and compiled during CI using online ASN.1 tools from OSS Nokalva. If you need ASN.1 tools for any work you're doing on Interledger please contact them for assistance.

OSS Nokalva

You can also check your ASN.1 definitions online using OSS Nokalva's ASN.1 Playground available at

The default encoding rules for Interledger protocols are the Canonical Octet Encoding Rules as described in Notes on OER encoding.

Interledger Overview and Explanatory Docs

Core Interledger Protocol Specs

  • 27: Interledger Protocol V4 (ILPv4)

    Specifies the Interledger Protocol and Interledger Packet, which are used for sending payment instructions across different ledgers and connectors. This is the core protocol in the Interledger stack.

  • 15: ILP Addresses

    Specifies the Interledger Address format for ledgers and accounts.

Protocols Built Upon ILP

  • 9: Simple Payment Setup Protocol (SPSP)

    A basic Application Layer protocol that uses HTTPS to exchange details needed to set up an Interledger payment.

  • 29: STREAM

    The recommended Transport Layer protocol for most use cases, which handles quoting, individual payments, chunked payments, and streaming payments using a shared secret between the sender and receiver.

Ledger Layer

  • 38: Settlement Engines

    Specifies an interface to send and receive payments across different settlement systems and ledgers.

You can’t perform that action at this time.