Rode a automação de depósitos sem inventar um gerente de taxas.
Uma integração de bot não é um fluxo de navegador com os botões removidos. Ela precisa de prevenção de duplicatas, estado à prova de reinício, custódia de carteira explícita, verificação de webhook e uma regra clara de quando a liquidez deve ser privada.
Sequência do bot
- 1Carregue um wallet client da Base a partir da sua própria infraestrutura de signatário.
- 2Chame deposits(walletAddress) antes de criar um novo depósito; reutilize o inventário ativo quando ele couber na ordem.
- 3Chame offramp(walletClient, params) com integratorId e referralId para que a automação possa ser identificada.
- 4Use otcTaker quando o comprador já for conhecido; caso contrário, o depósito é preenchível publicamente.
- 5Persista depositId, txHash, platform, currency, amount e o contexto do comprador pretendido.
- 6Registre webhooks HMAC para que preenchimentos e encerramentos sobrevivam a reinícios de processo.
Disciplina de retentativa
- O SDK retoma depósitos não delegados delegando em vez de criar uma duplicata.
- O cache de idempotencyKey do navegador não protege workers Node. Seu worker deve verificar deposits(address) antes de criar nova liquidez.
- Se a delegação falhar após a criação, tente a mesma rota de carteira novamente; o caminho de retomada foi projetado para esse estado.
- Não tente novamente USER_CANCELLED automaticamente. Isso indica que um signatário rejeitou um prompt.
Padrões úteis de bot
Fila de folha de pagamento ou de pagamentos
Crie um depósito OTC privado por carteira de comprador conhecida, depois envie o link retornado.
Bot de liquidez de tesouraria
Mantenha um pequeno depósito delegado em uma rota preferida e reabasteça após preenchimentos confirmados por webhook.
Reconciliação de suporte
Use depositId e txHash como os handles de suporte, depois reconcilie com deposits(address).
Keep exploring
Common questions
Um backend pode criar depósitos sem uma carteira de usuário?
Sim, se ele tiver seu próprio signatário da Base e saldo de USDC. O SDK assina por meio do WalletClient da viem que você fornece; a custódia e o gerenciamento de chaves são seus.
O idempotencyKey evita depósitos duplicados de bot?
Não. O idempotencyKey é respaldado pela sessão do navegador. Em Node ou workers, use deposits(address) e o seu próprio banco de dados de ordens para evitar inventário duplicado.