Developer Hub
🔮 For applications
Guides & Tutorials
Distribute Freebets

Distribute Freebets

Read overview first to understand key features of freebet tool.


Request Freebet Contracts

Begin by making a request to the Azuro Protocol team (opens in a new tab) to create Freebet contracts for your use. Once approved, you will gain access to our Freebets admin panel, and your new contracts integrated into our subgraphs. As the contract owner, you have the flexibility to withdraw funds from the marketing budget at any time. Additionally, Freebet contracts will be deployed exclusively for your affiliate address, ensuring that your funds are allocated solely to your frontend.

Provide Liquidity

To check the liquidity balance, use the balanceOf(freebetAddress) function on the token contract. You can top up your contract by simply sending tokens to your freebets contract address, just as you would with a regular ERC-20 transfer.

Withdraw Liquidity

When you wish to withdraw liquidity from the contract, call the withdrawReserve(amount) function. Keep in mind that only tokens not reserved for Freebets can be withdrawn. To release reserved tokens, use the resolvePayout(freeBetIds[]) function, especially when customers have not resolved their Freebets (i.e., they haven't claimed their bets).


We recommend limiting the IDs provided to the resolvePayout function parameters to avoid errors during transaction execution.

Locked Reserve

You can check the amount of locked tokens that cannot be withdrawn by using the lockedReserve function on the Freebet contract.

Budget Limitation

Please note that we provide you with the flexibility to distribute Freebets without a budget limitation. However, if your customers claim Freebets for an amount exceeding what you've provided to the contract, they will encounter an error during the smart contract execution call.

Distribute Freebets with Azuro Admin Panel

Follow these steps to distribute Freebets using the Azuro Freebets Admin Panel:

1. Sign In to Admin Panel

Start by signing in to the Azuro Freebets Admin Panel using your credentials.

2. View Available Contracts

Upon logging in, you'll see a list of contracts that you can use to distribute Freebets to your customers. The list includes contract balance, locked reserve, issued Freebets, and the safe balance for your new campaign.

3. Create a New Freebets Campaign

To create a new Freebets campaign, provide the following details:

  • Campaign title
  • Network
  • Expiration date
  • List of freebets data: address, amount, min odds for each freebet.

You can provide freebet data by direct input, or by parsing a "csv" file (click button "Open CSV file" or just drag-n-drop it).

Please keep the format: address, amount, min.odds (the data for each address must start with a new line).


Please don't put more than 1000 addresses to a campaign.


Distribution of freebets doesn't lock any liquidity before claim. You can create as much freebets as you want (even if available balance doesn't cover total amount). But we do not recommend abusing this feature: when trying to use the freebet, the customer will receive an error if the available balance is not enough.

If you have duplicated addresses, all rows with duplicates will be highlighted as a warning (yellow). It's up to you whether to submit duplicates (in that case user will receive 2 freebets) or remove them.

If you have invalid rows, all of them will be highlighted in red. Fix them before submitting the form.

After submitting, you will see a success or error notification.

Check Active Campaigns

To review your active Freebets campaigns, click on the "Details" button.

By following these steps, you can efficiently distribute Freebets to your customers and manage your campaigns using the Azuro Freebets Admin Panel.

If you have any questions or require assistance, please don't hesitate to contact our support team.