Joint

Enabling Lightning network
for traders and exchanges

Eclair integration manual
Lightning risks and mitigations
Arbitrage API

back to wallet

Channel balance invisibility

Real time information about what can be sent and received through each channel of the Lightning network is not available by default so when sending a multi-hop payment wallets blindly try one route after another in hope it will work out eventually.

While this approach just works more often than not it can be annoying for end users since it sometimes results in failed payments because a payer may attempt an amount which can’t be delivered under current network conditions but there is no way to know that beforehand.

Arbitrage API

Joint node improves on this by providing a special Arbitrage API, essentially this is a websocket endpoint which broadcasts real time send/receive balances for each public peer a Joint node currently has.

Once this API is integrated traders at each of the connected exchanges would know exactly how much can be transferred off-chain at any given time. Bitcoin Lightning Wallet also uses Arbitrage API which simplifies an off-chain deposit task, here is how it works:

  1. First, a trader opens a payment channel with a Joint node to leverage the power of Arbitrage API.

  2. Once a channel gets established it’s possible to check how much off-chain funds can be sent through Joint node to each of connected exchanges right now.

  3. Before attempting to send a payment wallet reassures user about guaranteed delivery if a payment of given amount can be sent through a phone -> Joint -> Exchange channel.