A simple and private bitcoin exchange
Go to file
2022-01-30 07:50:22 -08:00
.github/ISSUE_TEMPLATE Add concept for BTC <> Fiat p2p swap using Lightning. 2022-01-01 07:28:49 -08:00
api Fix irresponsive taker invoice when a maker/seller is not active 2022-01-30 07:50:22 -08:00
chat Add expiration logics. Add dispute statements. 2022-01-16 13:54:42 -08:00
dev_utils Work on update order endpoint and taker requests 2022-01-04 16:13:08 -08:00
frontend Add setup background threads. Minor fixes and cosmetic. 2022-01-30 07:18:03 -08:00
robosats Logics update: escrow settles exactly at buyer payout time. 2022-01-19 11:37:10 -08:00
.editorconfig Initialize the Django project and write setup guide 2022-01-01 10:53:17 -08:00
.env-sample Remodel usergen form. Add fee limit hparams. 2022-01-30 05:18:32 -08:00
.gitignore Add celery background and scheduled tasks. Add user cleansing task 2022-01-16 04:31:25 -08:00
concept_v0.0.1.pdf Add concept for BTC <> Fiat p2p swap using Lightning. 2022-01-01 07:28:49 -08:00
CONTRIBUTING.md Add concept for BTC <> Fiat p2p swap using Lightning. 2022-01-01 07:28:49 -08:00
faq.md Add concept for BTC <> Fiat p2p swap using Lightning. 2022-01-01 07:28:49 -08:00
LICENSE Add concept for BTC <> Fiat p2p swap using Lightning. 2022-01-01 07:28:49 -08:00
manage.py Initialize the Django project and write setup guide 2022-01-01 10:53:17 -08:00
README.md Add penalty live countdown. Fix unilateral cancellation after escrow 2022-01-26 03:44:45 -08:00
requirements.txt Add celery background and scheduled tasks. Add user cleansing task 2022-01-16 04:31:25 -08:00
setup.md Add setup background threads. Minor fixes and cosmetic. 2022-01-30 07:18:03 -08:00

RoboSats - Buy and sell Satoshis Privately

release AGPL-3.0 license Telegram

RoboSats is a simple and private way to exchange bitcoin for national currencies. Robosats simplifies the peer-to-peer user experience and uses lightning hold invoices to minimize custody and trust requirements. The deterministically generated avatars help users stick to best privacy practices.

Try it out

Bitcoin mainnet:

  • Tor: robosats6tkf3eva7x2voqso3a5wcorsnw34jveyxfqi2fu7oyheasid.onion (Coming soon)
  • Url: robosats.com (Coming soon)
  • Version: v0.0.0 (Last stable)

Bitcoin testnet:

  • Tor: robotestagw3dcxmd66r4rgksb4nmmr43fh77bzn2ia2eucduyeafnyd.onion (Active - On Dev Node)
  • Url: testnet.robosats.com (Coming soon)
  • Latest commit.

Always use Tor Browser and .onion for best anonymity.

How it works

Alice wants to buy satoshis privately:

  1. Alice generates an avatar (AdequateAlice01) using her private random token.
  2. Alice stores safely the token in case she needs to recover AdequateAlice01 in the future.
  3. Alice makes a new order and locks a small hold invoice to publish it (maker bond).
  4. Bob wants to sell satoshis, sees Alice's order in the book and takes it.
  5. Bob scans a small hold invoice as his taker bond. The contract is final.
  6. Bob posts the traded satoshis with a hold invoice. While Alice submits her payout invoice.
  7. On a private chat, Bob tells Alice how to send him fiat.
  8. Alice pays Bob, then they confirm the fiat has been sent and received.
  9. Bob's trade hold invoice is charged and the satoshis are sent to Alice.
  10. Bob and Alice's bonds return automatically, since they complied by the rules.
  11. The bonds would be charged (lost) in case of unilateral cancellation or cheating (lost dispute).

Contribute to the Robotic Satoshis Open Source Project

See CONTRIBUTING.md

Original idea

The concept of a simple custody-minimized lightning exchange using hold invoices is heavily inspired in P2PLNBOT by @grunch

License

The Robotic Satoshis Open Source Project is released under the terms of the AGPL3.0 license. See LICENSE for more details.