Crypto Counsel’s DistributePro ← Back to the main page

Build a distribution.

Connect your wallet, bring your list, and see exactly what every recipient gets — read straight off the contract, before anything is sent.

Read this before sending anything

Send a small test amount first. Every figure on this page is read from the contract itself, but nothing replaces watching one real transaction land before you trust a page with a payroll. A blockchain payment cannot be reversed, and an address typed wrong is money gone.

Paying in the chain's own coin splits across as many transactions as your list needs. Paying in a token goes out in a single transaction, so a token list has to fit inside the contract's per-transaction limit — the page tells you if it does not.

1 Step 1 of 5

Connect your wallet

DistributePro never asks for your seed phrase and could not use it if you gave it. Connecting only lets the page read your address and ask your wallet to sign — you approve every single thing.

Wallet

Status

Not connected
Wallet detectedchecking…
Your addressnot connected
Chain your wallet is on
Your balance
What is BTC20?

Most wallets have never heard of BTC20. The button above adds it for you and your wallet will ask first — or add it by hand from the settings on its own page.

BTC20 is not in any wallet by default

Most wallets ship knowing Ethereum and a handful of big chains. BTC20 is not one of them, so the button above asks your wallet to add it — chain 963, the BTC20 RPC, and BTCC as the coin. Your wallet will show you those details and ask you to approve. Nothing is added behind your back.

2 Step 2 of 5

The contract, read off the chain

Not copied from this page's source — fetched live from BTC20 every time you load it. If any of this disagrees with what the main page says, believe the chain.

Live

DistributeProV3

Address
Accepting distributionsreading…
Recipients per transaction
Finest split it can hold
Fee goes to
Contract owner
Contract's own balance
View on the explorer

3 Step 3 of 5

What are you paying out?

The contract pays out the chain's own coin or any ERC-20 token, and the two work differently enough that they get their own page. Pick one — you can switch back at any time, and nothing you have entered is lost.

Mode

Coin or token

BTCC

4 Step 4 of 5

Your list, and what you are paying out

One recipient per line: the wallet address, a comma, then the percentage it should receive. The percentages must add up to exactly 100%.

List

Recipients

A CSV wants the address in the first column and the percentage in the second. A header row is fine — it is detected and skipped. Nothing is uploaded anywhere: the file is read inside your own browser.

Copying two columns straight out of Excel, Numbers or Google Sheets works too — paste into the box below and the tab between the columns, any % signs and a header row are tidied up for you. Nothing leaves your browser either way.

You can go to four decimal places — 33.3333% is as fine a split as the contract can hold, and the total must land on exactly 100%. Anything finer is refused by line number rather than quietly rounded.

This is what your recipients share between them. The fee is charged on top, so what leaves your wallet is a little more — the contract tells you exactly how much below.

Lines read0
Percentages total0.0000%
List statusempty

    5 Step 5 of 5 · paying in BTCC

    The chain's numbers, not this page's

    Every figure below comes back from the contract itself. This page does no arithmetic of its own — that is the whole point, because a page that calculates its own preview can disagree with what actually happens.

    Quote

    What it costs

    Your recipients get
    Fee rate
    Fee
    You send

    Measurement

    Instruments

    The readings the next stage is built on. Chunking a long list is decided by estimated gas, not by a guessed recipient count, so the estimate has to be trustworthy before anything is built on top of it.

    Chain

    What this chain reports

    Block gas limit
    Latest block
    Gas price the chain quotes
    EIP-1559 base fee
    Transaction type we will use
    Estimated gas for this list

    Why the transaction type matters here

    BTC20 predates the fee change most chains adopted in 2021, and it rejects the newer transaction format outright. Wallets reach for that newer format by default, so this page will pin every transaction to the older one with an explicit gas price. It is the single likeliest reason a dApp that looks right fails on this chain.

    5 Step 5 of 5 · paying in a token

    Paying in a token

    The contract can pay out an ERC-20 token — USDT, for instance — as well as the chain's own coin. Paste a token's address and this reads it off the chain, so you can see exactly what you would be paying in before anything is set up.

    Token

    Read a token

    ⛔ The address is the only thing that identifies a token. On this chain there are three different contracts all calling themselves USDT — so check what comes back below against where you actually hold your balance, every time.

    Name
    Symbol
    Decimal places
    Your balance
    Already allowed to this contract
    DistributePro's own balance of it
    Allow

    Allow the contract to take it

    The contract has to pull the tokens out of your wallet, so it needs your permission for an exact amount first. Nothing moves when you do this — you are only setting a limit.

    This is what your recipients share between them, counted in the token you read above. The fee is charged on top, so the amount leaving your wallet is a little more — the contract states it exactly, below.

    Paying out
    Fee, charged on top
    Total to allow
    Pay

    Pay the list in this token

    Uses the same list of recipients and percentages from step three. The amounts come from the contract, not from this page.

    Recipients
    Paying out
    Leaving your wallet
    Allowed, ready to use
    Network fee, estimated

    Paying in a token takes two transactions, not one

    For BTCC, your coin travels with the instruction — one signature, one transaction. A token cannot do that. The contract has to pull the tokens out of your wallet, and it can only do that once you have allowed it to. So you sign twice: once to allow, once to pay.

    The allowance has to cover the payout plus the fee, not just the payout. Allow only the payout and the payment fails at the pull — after you have already paid the gas for the allowance. This page will always show you the larger number.

    And an allowance should be for exactly the amount you are paying. An unlimited allowance is standing permission to move that token out of your wallet for as long as the contract exists. This page will never ask you for one.

    One transaction here, or as many as it takes below

    Token paying is switched on: read the token, allow the amount, then pay. The button on this card sends the whole list in a single transaction, so it only offers itself when the list actually fits — and whether it fits is decided by measuring the gas, not by counting lines, because paying a wallet the chain has never seen costs several times more than paying one that already exists.

    A list that does not fit is not refused. Work out the split below and send it from there: it pays the run in as many transactions as the chain will take, one per press, and keeps a record of which ones went out. One thing to know before you start a split token run: a single permission has to cover the whole run, because it is spent as each batch goes out. Allow the full amount, not the first batch's.

    Plan and send

    Working out the split, and running it

    This part works the same whichever you are paying — the chain's own coin or a token. Every figure here is measured against the chain, and quoted in the currency you are actually paying in.

    Plan

    How this run would be split

    A list too long for one transaction is split into as many as it needs. The split is decided by measuring the real gas each batch would use — not by guessing a number of recipients — because a payment to a brand-new wallet costs several times more than one to a wallet that already exists.

    Send

    Run the distribution

    Recipients
    They receive
    Fee
    Leaves your wallet