Adding Crypto Top Ups

Add Channels to accept crypto deposits to reusable addresses.

To enable crypto top-ups for your users, you'll leverage the Channels feature of our API. A channel serves as a permanent, unique address for each of your end-users, allowing for the receipt of crypto without the necessity of generating a new payment for each transaction. This functionality enables your customers to send crypto to top up their accounts at their convenience. Transactions are detected by Beem, and your system is updated through webhook notifications.

This guide provides instructions on integrating crypto top-ups via channels into your Beem-embedded flow. It provides a single address per currency that can be developed into your own payments page based on the data returned in the channel API request response.

Channel Payment Sequence Diagram

The sequence diagram for channel payment and repeat payment followed in this guide.

The sequence diagram for channel payment and repeat payment followed in this guide.

Channel Payment Lifecycle

Channel payments undergo various statuses throughout the workflow, as outlined below:

StatusImmutable?Description
detectedNoIndicates a new crypto transaction detected at the channel address. BVNK creates a ChannelPayment transaction with the DETECTED status in the Merchant's wallet. The status updates to COMPLETE once the crypto transaction achieves the required confirmations on the network.
completeYesReflects that the crypto transaction has received the necessary confirmations on the network. BVNK then updates the ChannelPayment status from DETECTED to COMPLETE, crediting the Merchant's wallet balance. The payment is finalized, and the status will no longer change.

Steps to Follow

This guide outlines the process for integrating channel payments into your platform for accepting crypto payment top-ups:

  1. Creating a Channel: Instructions for generating a channel and managing the response.
  2. Guiding Users to the address to deposit crypto.
  3. Monitoring Channel Payment Webhooks: Setting up to listen for and process channel payment notifications.
❗️

Ensure each channel is unique to an individual end-user to facilitate accurate reconciliation of funds. Unlike fiat transactions, crypto transactions lack the capability to carry references across the blockchain. Assigning each customer a distinct channel enables precise tracking of their top-ups to their respective accounts on your platform.