BNFCR Balance Check Rejected? Fix the API Key
You paste your API key and secret, the page asks Binance for your BNFCR balance, and the answer comes back refused. Getting stuck here costs you nothing: the balance step only reads a number. No invoice exists yet, nothing has been converted and no fee is due. What a refusal tells you is that the key is not yet usable for the conversion — and the settings that decide it are few enough to check in a couple of minutes.
1. What step one actually does
One read, nothing else. You supply your own Binance Futures API key and secret over HTTPS, and the service asks Binance for the BNFCR balance on your own USDⓈ-M Futures account, so that you can enter an amount your balance covers. It places no order, creates no invoice and moves nothing. The secret is not stored on the server — you supply it again at convert time — and a hash of the key is kept for the conversion record.
When the credentials are refused, the documented behaviour of that step is to return HTTP 200 with success=false and a human-readable reason. That is worth knowing, because it means a page saying "failed" is passing on Binance's refusal of your key, not reporting a broken service. The fix is on the key, in your Binance account.
2. The three settings the key depends on
- Permission "Enable Futures" only — no withdrawals, no spot trading, no margin.
- IP access either Unrestricted, or restricted to our server IP
46.101.148.146. The swap is executed from that address, so a key restricted to your own IP will fail. - Delete the key immediately after the conversion.
- The API secret is never stored — it travels over HTTPS for the immediate operation and is then discarded, and you re-enter it at convert time. A hash of the key is kept for the conversion record.
The IP line is the one worth re-reading. Restricting a key to your own IP address is the natural thing to do and it cannot work here: the swap is not executed from your computer, it is executed from our server's address. So the two workable states are Unrestricted, or restricted to 46.101.148.146 — and nothing in between.
3. The list to work through when the key is refused
- Permission. Is Enable Futures actually on? The conversion is a Binance Futures operation, so a key that can only read, or one set up for spot trading, is not the key this needs.
- IP access. Unrestricted, or exactly
46.101.148.146. Never your own address. - Key and secret belong together. Both are from the same key, pasted whole, with no trailing space picked up on the way.
- The right account. The key belongs to the Binance account that actually holds the BNFCR.
- When in doubt, make a new key. A key created for this one conversion settles all four points at once — and you delete it the same day, which you should do anyway.
4. The other answers you can get
Not every refusal is about the key. These come from the service's own documented behaviour:
| What you get | What it means |
|---|---|
HTTP 200, success=false | Binance rejected the credentials. Section 3 is the list. |
| 429 | Rate limit. The balance step allows 10 calls per minute and 100 per hour, and the response carries a Retry-After header in seconds. Fix the key settings first and try once, rather than repeating the same call. |
| 502 | Binance returned an upstream error — the documented meaning of a 502 on the balance check, the quote or the accept step. |
| 400 | A validation error: malformed input, or an amount above your balance when the invoice is created. |
5. The balance answers, but reads 0
Then the key is working — Binance replied. BNFCR is a balance in the USDⓈ-M Futures wallet, and that is the wallet this step reads, so check that you are looking at the same account and the same wallet in Binance. For the step after it, the amount you enter has to be covered by that balance; an amount above it is refused as a validation error when the invoice is created.
6. Nothing is lost at a rejected balance check
Worth saying plainly, because a refusal at the first step can read like money already spent. It is not. The order is fixed: read the balance, create an invoice, pay the fee on-chain, then the conversion runs. The fee — 0.5% of the amount, minimum 5.00 and maximum 10.00 USDT or USDC — is paid only once an invoice exists, and the swap happens only after that payment is matched, which takes about 60 seconds from the on-chain confirmation. A rejected balance check is one failed read: fix the key or walk away, and you are out nothing either way.
One thing that is not negotiable in any direction: if anyone offering a BNFCR conversion asks for a key with withdrawal rights, that is the point to stop, whoever they are. The safety page sets out what the key can and cannot do and what is kept.
46.101.148.146 — never to your own IP — and delete it right after the conversion. Try Binance's own free swap first. bnfcrconvert.com performs one operation — BNFCR → BNB on your own Binance Futures account, non-custodial, with the BNB credited to your Futures wallet. It is operated by ESA DEVELOPMENT s.r.o. (Czech Republic); it is not an exchange, not regulated and not affiliated with Binance. Questions: support@bnfcrconvert.com. See also how the conversion works, the fee table, what to do when the Swap option is missing and where the BNB ends up.