No merchant KYC · Customers pay fiat, you get stablecoins · Onboarding is openApply now →

Docs / SmartSweep

SmartSweep explained: triggers, thresholds and common questions

A customer's payment lands in a dedicated deposit address first, then SmartSweep moves it to your cold wallet automatically. No private key is involved, but a few rules are worth knowing in advance.

The short version: SmartSweep automatically moves funds from customer deposit addresses into your cold wallet through an on-chain contract, with no manual transfers and no exposed private keys. It fires on any one of three conditions: amount, number of deposit addresses or time. A deposit address must also first reach a one-time minimum balance (by default roughly the equivalent of 5 US dollars) before it is swept.

1. What SmartSweep is

When a customer pays, they pay a dedicated deposit address the system generated for them. The money lands there first, and SmartSweep then gathers it into the cold wallet you designated. The official documentation calls this feature Smart Consolidation, also known as a fund sweep.

  • Saves effort: no transferring from address to address by hand.
  • Safer: sweeping is done by a smart contract, so no private key is needed to sign it and none has to sit on the server.
  • Traceable: every sweep is logged and can be viewed in the SmartSweep panel of the dashboard.
  • Lower cost: many small deposits are merged into fewer transactions, which cuts on-chain fees.

On PayRamHost the service fee is split in the same on-chain transaction, so there is nothing to settle separately.

2. The three triggers

Once a wallet is activated, the system decides when to sweep based on any one of three conditions you configure:

ConditionWhen it fires
AmountAn individual deposit address reaches the set amount, or the total across a batch of deposit addresses reaches the set amount
Address countThe number of deposit addresses that have received funds reaches the set number
TimeThe set period has passed since the last sweep

These thresholds can be adjusted. The higher the amount, the fewer the sweeps and the less gas you spend, but the longer funds sit in deposit addresses. A lower amount does the opposite. Most merchants start with the defaults and tune them to their real volume after a while.

3. Why a small test payment is not swept

A deposit address must first reach a one-time minimum balance (by default roughly the equivalent of 5 US dollars) before the system deploys its smart wallet contract. Below that, the address stays dormant and is not swept.

So a first test of 1 US dollar proves that the payment page and payment detection work, but you will not immediately see the money in your cold wallet. To test sweeping itself, let the same deposit address receive more than the minimum balance. That minimum can also be adjusted.

4. Who pays the sweep gas

A sweep is an on-chain transaction and costs gas. It is paid from the hot wallet, which means the merchant bears it and it is not part of the service fee. When the hot wallet runs out, the system cannot pay sweep gas and funds stay in the deposit addresses until you top it up. See wallet roles.

5. Why Bitcoin is different

On the Ethereum family (Ethereum, Base, Polygon) and on Tron, sweeping happens automatically through the sweep contract you already deployed. Bitcoin has no equivalent smart contracts, so the official Bitcoin sweep uses the PayRam Bitcoin mobile app and a separate process to move funds from the Bitcoin deposit wallets to your wallet.

PayRamHost currently offers Ethereum, Base and Polygon, with Tron and Bitcoin planned, so you will not meet the Bitcoin sweep process for now.

6. Checklist when funds are not swept

  1. Is the amount enough? Has the deposit address's cumulative balance reached the minimum balance? If not, it is dormant.
  2. Is a trigger met? Has at least one of amount, address count or time been reached?
  3. Does the hot wallet have coin? It needs enough native coin to pay gas: ETH on Ethereum and Base, POL on Polygon.
  4. Is the contract deployed? Has "Deploy contract" been completed on the chain you are receiving on? 1/3 ready in the dashboard means only one of the three EVM chains is done.
  5. Did the customer bypass the payment page? The payment page only offers the coins and networks you have enabled and deployed wallets for. If a customer sends to an address directly on the wrong chain or with the wrong coin, the funds may not be recognised or swept.

If you still cannot find the cause, contact us and include the payment's reference_id.

7. FAQ

Do I have to trigger sweeps manually?

No. The system starts them automatically once the conditions are met. You only need to make sure the hot wallet has enough gas.

Does a sweep use my private key?

No. Sweeping is done by a smart contract and does not use a private key to sign. The only private key on the server is the hot wallet's, which pays gas and sends payouts.

Does every payment trigger a sweep?

No. Sweeps are triggered by thresholds, and several small payments can be merged into one sweep to save fees.

Is it safe for funds to sit in a deposit address?

The deposit address's key is not on the server, the funds are on-chain, and only the sweep contract can move them to the cold wallet you set in advance. The cold wallet address is the most critical item, so check it again and again.

  • Wallet roles: What each of the four wallets in PayRam does: the master account deploys contracts, deposit wallets receive customer payments, the cold wallet holds the final funds and the hot wallet only pays gas and sends payouts, plus how much to keep in each and where the keys live.
  • Payment statuses: What PayRam's five payment statuses mean, how to handle underpaid (PARTIALLY_FILLED), overpaid (OVER_FILLED) and expired (CANCELLED) payments, and how to keep your order status in sync using webhooks and the status endpoint.
  • PayRam tutorial: A PayRam tutorial for merchants: what PayRam is, self-hosting versus a hosted service, how a payment flows, choosing a chain and coin, five steps to your first USDT / USDC payment, and how to let customers pay by card.