Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Accepting Bitcoin Payments

Avatar for Rali Rali
August 29, 2019

Accepting Bitcoin Payments

Avatar for Rali

Rali

August 29, 2019
Tweet

More Decks by Rali

Other Decks in Programming

Transcript

  1. HOW TO ACCEPT HOW TO ACCEPT BITCOIN - MY WAY

    BITCOIN - MY WAY Rali Ralev @ WeiDex
  2. AGENDA AGENDA Why Bitcoin is just a hipsters' tool Approaches

    to accept Bitcoin Common pitfalls Recommendations
  3. WHY BITCOIN IS JUST A WHY BITCOIN IS JUST A

    HIPSTERS' TOOL HIPSTERS' TOOL
  4. WHY BITCOIN IS JUST A WHY BITCOIN IS JUST A

    HIPSTERS' TOOL HIPSTERS' TOOL Mostly used for speculation
  5. WHY BITCOIN IS JUST A WHY BITCOIN IS JUST A

    HIPSTERS' TOOL HIPSTERS' TOOL Mostly used for speculation Most of the retailers have really bad rates
  6. WHY BITCOIN IS JUST A WHY BITCOIN IS JUST A

    HIPSTERS' TOOL HIPSTERS' TOOL Mostly used for speculation Most of the retailers have really bad rates People take photos
  7. WHY BITCOIN IS JUST A WHY BITCOIN IS JUST A

    HIPSTERS' TOOL HIPSTERS' TOOL Mostly used for speculation Most of the retailers have really bad rates People take photos Probably confirmation time
  8. THIRD-PARTY SERVICE THIRD-PARTY SERVICE Relatively easy to integrate Provides an

    easy way to convert BTC to your local currency No confirmation time
  9. THIRD-PARTY SERVICE THIRD-PARTY SERVICE Relatively easy to integrate Provides an

    easy way to convert BTC to your local currency No confirmation time You don't have to deal with wallets
  10. THIRD-PARTY SERVICE THIRD-PARTY SERVICE Relatively easy to integrate Provides an

    easy way to convert BTC to your local currency No confirmation time You don't have to deal with wallets High fees
  11. THIRD-PARTY SERVICE THIRD-PARTY SERVICE Relatively easy to integrate Provides an

    easy way to convert BTC to your local currency No confirmation time You don't have to deal with wallets High fees You can be tracked
  12. THIRD-PARTY SERVICE THIRD-PARTY SERVICE Relatively easy to integrate Provides an

    easy way to convert BTC to your local currency No confirmation time You don't have to deal with wallets High fees You can be tracked No control over your funds
  13. THIRD-PARTY SERVICE THIRD-PARTY SERVICE Relatively easy to integrate Provides an

    easy way to convert BTC to your local currency No confirmation time You don't have to deal with wallets High fees You can be tracked No control over your funds Gap limit
  14. IDEAL FOR IDEAL FOR Small businesses - less than 20

    customers per day Less technical teams
  15. PRE-GENERATED ADDRESSES PRE-GENERATED ADDRESSES Keep private key Keep public key

    App should track the addresses Many hard decisions to make
  16. PRE-GENERATED ADDRESSES PRE-GENERATED ADDRESSES Keep private key Keep public key

    App should track the addresses Many hard decisions to make Wallet becomes slower at some point
  17. PRE-GENERATED ADDRESSES PRE-GENERATED ADDRESSES Keep private key Keep public key

    App should track the addresses Many hard decisions to make Wallet becomes slower at some point No signed payment requests
  18. GENERATE ADDRESS ON DEMAND GENERATE ADDRESS ON DEMAND Keep private

    key Public key on the server! Many hard decisions to make
  19. EXPORT MASTER PUBLIC KEY EXPORT MASTER PUBLIC KEY (XPUB) (XPUB)

    electrum getmpk -w .electrum/wallets/your-wallet
  20. WALLET IS IN READ-ONLY MODE WALLET IS IN READ-ONLY MODE

    electrum daemon start electrum daemon load_wallet
  21. CREATE A SIGNED PAYMENT CREATE A SIGNED PAYMENT REQUEST REQUEST

    electrum addrequest 3.14 -m "this is a test" { "URI": "bitcoin:1MP49h5fbfLXiFpomsXeqJHGHUfNf3mCo4?amo "address": "1MP49h5fbfLXiFpomsXeqJHGHUfNf3mCo4", "amount": 314000000, "amount (BTC)": "3.14", "exp": 3600, "id": "7c2888541a", "index_url": "https://example.com/payment/index.html?i "memo": "this is a test", "request_url": "https://example.com/payment/7c2888541a "status": "Pending", "time": 1450175741 }