Introducing BeamFi API - Micropayments streaming in real-time

I would like to introduce to you BeamFi and its API. Recently, we have made it open source in MIT and created a developer portal with full API docs, architecture and getting started guide etc.

BeamFi API / Developer Documentation
https://developer.beamfi.app/

BeamFi Protocol
https://github.com/BeamFi/BeamFiProtocol

BeamFi App
https://beamfi.app/

Quick Intro to BeamFi
The idea of BeamFi is born from the development of Content Fly - a creators’ marketplace. We wanted to develop a new innovative payment solution that would allow creators to receive a continuous stream of payment in a trustless way without waiting for the job completion that could be weeks or months away. Learn More

Features
To make it easy for users to try out BeamFi, we have developed BeamFi App that can:

  • [New Beam] create Beam Link (your payment link to receive tokens) which you can send it to others who will deposit ICP or XTC tokens through streaming
  • [Beam Out] create Beam streaming payment to others using wallet principal ID with ICP or XTC tokens

BeamFi App supports Plug Wallet and NFID

BeamFi Meeting App in Zoom
We have also developed a BeamFi Meeting App with integration to Zoom.

BeamFi Meeting App in Zoom Marketplace

You can simply create a meeting link from New Meeting in the app. Send it to your friends to deposit ICP or XTC and start Zoom meeting from the webapp and watch payment streaming in My Beams

Note: Make sure you have added BeamFi Meeting App to your Zoom account first.

Watch Demo

Architecture
The core of BeamFi Protocol uses IC Timer API to drive streaming.

Learn More about Architecture

Learn More about Zoom Integration

Future / Vision
The future prospect of BeamFi is enormous:

  • Payment streaming with ckBTC or native Bitcoin
  • Client SDK (TypeScript)
  • Webapp connecting to different BeamFi Vaults, and switch between them
  • BeamFi Protocol 3.0 (Rate-based Continuous Streaming Beam)

Learn More about Vision

Getting Started!
We have created a developer Quick Start Guide to help you up to speed in using BeamFi API.

I hope you will find BeamFi useful and consider developing on BeamFi.

BeamFi is fully open source under MIT license including the backend protocol and webapp.

8 Likes

This looks awesome! Do yo send the trx every x seconds, or do you keep it in escrow and just pay it out upon withdrawal?

This looks really cool :smiley:

Hi @skilesare We keep it in escrow but we update the ownership of the tokens every x seconds so the recipient can claim the “prorated tokens” any time while streaming.

1 Like

So, this could be used also as a recurring daily/weekly/monthly subscription to paid site?
How would the receiver/seller engineer the payment process then unlock the paid content?
BeamFi costs to both parties, through “prorated tokens”, commission rate?
What is range of micropayments?

1 Like

Awesome work @kinwo!

Adding ckBTC would be cool! Hint hint: There’s an Internet Computer BUIDL Bitcoin Hackathon running :wink:

1 Like

Thanks @domwoe ! We will definitely consider adding ckBTC. :grinning:

1 Like

Hi @wwsteel Great question! At the moment, BeamFi payment is time-based with start and end date. Recurring subscription payment is absolutely an interesting idea. We were thinking about implementing something like Patreon for creators with paid content. It could be incrementally unlocking more content over time during the period of streaming payments.

Regarding the paid content, it could be a secret URL that would be stored as part of BeamOut when the seller creates a Beam. The content can only be unlocked by the receiver through NFID/Plug. We already have similar architecture to support Zoom Meeting integration

type BeamOutType = {
    #payment;
    #meeting : BeamOutMeetingModel
  };

We could add a new BeamOutType for simple URL or potentially full markdown text for article or URL to image stored in a separate Canister.

As for costs, BeamFi doesn’t charge a commission rate at the moment. The only fees sender or receiver pays is the native token transfer fees in ICP and XTC token during deposit and claim.