um nome, vários tokens
a Circle, emissora do USDC, publica um contrato diferente em cada blockchain que suporta: Ethereum, Solana, Base, Arbitrum, Avalanche, Polygon e outras, cada um nativo, cada um lastreado pelas mesmas reservas, nenhum sabendo do outro. a dolaramp lê três deles: Solana, Base e Arbitrum, só pelos contratos oficiais listados em contratos.
além dos tokens da própria Circle, várias redes carregam cópias bridged: tokens criados por uma ponte, não pela Circle, que representam USDC travado em outro lugar. na Arbitrum o antigo se chama USDC.e; na Base, USDbC. negociam perto de um dólar, mas não são o token do emissor, e a dolaramp não os lê.
por isso "mandei USDC" é meia frase. a outra metade é a rede. quando a rede de quem envia e a de quem recebe não batem, a transferência não se perde no caminho: ela é confirmada normalmente, na rede escolhida, para aquele endereço naquela rede. a questão é se alguém consegue movimentar dali.
o formato do endereço já barra alguns erros
| rede | como é o endereço |
|---|---|
| Solana | base58, 32 a 44 caracteres, sem 0x |
| EVM (Base, Arbitrum, Ethereum e outras) | 0x + 40 caracteres hexadecimais. o mesmo endereço vale em todas as redes EVM |
| TRON | começa com T, 34 caracteres |
um endereço da Solana colado com a Base selecionada nem valida, e quase toda carteira recusa. o caso perigoso é o de formato idêntico: entre redes EVM. um 0x… vale na Base, na Arbitrum, na Ethereum, na Polygon. a carteira aceita, a rede confirma, e o USDC fica na rede que você escolheu, que pode não ser a que o destinatário está olhando.
o que dá para recuperar
1. seu próprio 0x, Base no lugar de Arbitrum (ou o contrário). é o erro mais comum com USDC e, na dolaramp, o que tem a correção mais barata. seu 0x sai das 12 palavras e é idêntico nas duas redes. o app mostra os saldos de Base e Arbitrum separados, então o dinheiro aparece onde caiu. se precisa dele na outra rede, use a ponte na tela inicial: ela move USDC entre Solana, Base e Arbitrum pelo CCTP da Circle, queima de um lado e emissão do outro, em cerca de 8 a 20 segundos. custa US$ 2 + 0,3% do valor (mínimo US$ 10) mais a taxa rápida da Circle, de 1 a 1,4 ponto-base, e você nunca precisa de ETH ou SOL. não há campo de destinatário: o USDC sempre cai no seu próprio endereço na outra rede.
2. seu próprio 0x, mas pela Ethereum. o dinheiro está no seu endereço, na Ethereum. a dolaramp não lê a Ethereum, então o saldo não aparece, mas a chave é a mesma. importe as 12 palavras numa carteira EVM (passo a passo em restaurar as 12 palavras em outra carteira), confira que o 0x bate, troque a carteira para a Ethereum e mova. vai precisar de ETH para a taxa, e ali a dolaramp não paga por você. o mesmo vale para Polygon, Avalanche ou qualquer outra rede EVM em que a Circle emite USDC.
3. uma cópia bridged no lugar do USDC nativo. alguém te mandou USDC.e na Arbitrum, ou USDbC na Base. o app ignora contratos que não usa, mas os tokens estão sob as suas palavras: importe numa carteira EVM e o saldo aparece. para virar USDC nativo, troca numa exchange descentralizada, com o token de gás daquela rede. da próxima vez peça USDC nativo; na Arbitrum e na Base o contrato nativo é o da nossa página de contratos.
4. um "USDC" que o app não conhece, na Solana. na Solana cada token tem o seu endereço de mint. só o mint da Circle é USDC; qualquer outro chamado "USDC" é outro token, e a dolaramp não mostra. se foi para o seu endereço da Solana, está sob as suas palavras: importe numa carteira Solana para ver. se vale alguma coisa é outra história; confira o mint no verificador antes de acreditar no nome.
5. endereço de exchange. a exchange tem a chave. algumas têm processo para depósito em rede não suportada, às vezes com taxa e espera; outras não fazem. abra um chamado com o hash da transação, a rede usada e o endereço. só ela pode dizer.
6. endereço de outra pessoa. se ela controla a chave naquela rede, pode importar, trocar a rede e devolver. depende dela.
o que não dá para recuperar
- conta de token ou programa na Solana. na Solana, um endereço válido nem sempre é uma carteira. contas de token e endereços de programa recebem transferência, mas ninguém tem uma chave que consiga mandar de volta. é o jeito específico da Solana de perder USDC para sempre.
- endereço de contrato. mandar USDC para o próprio contrato do USDC, ou para qualquer contrato sem função de saque, trava o dinheiro. contrato não tem chave privada.
- um 0x sem dono naquela rede. uma carteira de contrato (multisig, smart account) existe na rede em que foi criada. o mesmo
0xem outra rede pode não ter ninguém que assine. às vezes o criador consegue publicar o contrato lá também; muitas vezes não. - "USDC na TRON". a Circle parou de emitir USDC na TRON em fevereiro de 2024 e encerrou as transferências para clientes empresariais em fevereiro de 2025. o token antigo ainda existe na rede, mas o emissor não está mais por trás dele ali, exchanges vêm retirando da lista, e a dolaramp não o lê. se chegou ao seu endereço TRON comum, você precisaria de uma carteira TRON e de TRX para mover, e depois de algum lugar que ainda aceite. se alguém oferecer USDC na TRON, peça Solana, Base ou Arbitrum.
cuidado com os "serviços de recuperação" que aparecem depois do erro. ninguém desfaz uma transferência confirmada. se pedirem as suas 12 palavras ou um pagamento adiantado para "liberar" o dinheiro, é golpe.
o que a dolaramp faz para evitar
- valida o endereço para a rede escolhida, com a checagem de cada rede: o formato da Solana, o checksum da TRON, o checksum de maiúsculas e minúsculas (EIP-55) nos endereços
0x. endereço inválido não envia. - reconhece endereço de outra rede. colou um endereço da Solana com a Base selecionada? o app avisa e o botão de enviar fica travado.
- avisa na Solana quando o endereço é conta de token ou programa, não carteira.
- só usa os contratos do emissor. o app assina a transferência só se destinatário, valor e contrato do token forem exatamente o que você digitou, e o contrato é sempre o USDC nativo da Circle naquela rede.
- a ponte não tem campo de destinatário. mover USDC entre Solana, Base e Arbitrum cai sempre no seu próprio endereço, então a troca de rede não tem como ir para um endereço errado.
o limite honesto: um 0x válido na Base também é válido na Arbitrum e na Ethereum. nenhum app consegue saber, só pelo endereço, em qual rede EVM o destinatário espera receber. isso você confirma com a pessoa.
para empresas, a API tem duas rotas para isso, documentadas em docs: POST /address/validate checa o formato de um endereço para uma rede e POST /address/detect diz a qual família de rede um endereço pertence. um 0x volta como base, mas vale em qualquer rede EVM; quem chama escolhe a rede.
antes de enviar
- pergunte a rede, não só o endereço. "USDC" sozinho não diz nada.
- entre Base e Arbitrum, se os dois usam dolaramp, o erro custa uma ponte, não o dinheiro.
- em exchange, escolha a mesma rede no saque e no depósito.
- confira os primeiros e os últimos caracteres do endereço colado.
- para valor alto a um destinatário novo, mande um teste pequeno antes.
- cole o endereço no nosso verificador para ver a rede e o saldo nos tokens oficiais.
perguntas frequentes
Mandei USDC pela Arbitrum, mas a pessoa queria na Base. Perdi?
Não, se o endereço é uma carteira dolaramp ou qualquer carteira cujo dono tem a chave. Um endereço 0x é o mesmo na Base e na Arbitrum. Na dolaramp as duas redes aparecem, e a ponte move USDC entre elas em segundos, sem token de gás.
Mandei USDC pela Ethereum para um endereço da dolaramp. E agora?
O dinheiro está nesse endereço, na Ethereum. A dolaramp não lê a Ethereum, então não aparece no app, mas a chave são as mesmas 12 palavras. Importe numa carteira EVM, troque para a Ethereum e mova. Vai precisar de ETH para a taxa.
Dá para mandar USDC pela TRON?
A Circle parou de emitir USDC na TRON em fevereiro de 2024 e encerrou as transferências para clientes empresariais em fevereiro de 2025. O token antigo ainda existe na rede, mas a dolaramp não o suporta. Se alguém oferecer "USDC TRC20", peça Solana, Base ou Arbitrum.
O que nunca tem recuperação?
USDC enviado para um contrato sem função de saque, para uma conta de token ou programa na Solana, ou para um 0x numa rede em que ninguém consegue assinar. Nenhuma blockchain reverte uma transferência confirmada, e nenhum "serviço de recuperação" também.