Sviluppatori · Bot

Esegui l'automazione dei depositi senza inventare un rate manager.

Un'integrazione bot non è un flusso da browser con i pulsanti tolti. Richiede prevenzione dei duplicati, stato resistente ai riavvii, custodia esplicita del wallet, verifica dei webhook e una regola chiara su quando la liquidità debba essere privata.

01

Sequenza del bot

  1. 1Carica un wallet client di Base dalla tua infrastruttura di firma.
  2. 2Chiama deposits(walletAddress) prima di creare un nuovo deposito; riutilizza l'inventario attivo quando è adatto all'ordine.
  3. 3Chiama offramp(walletClient, params) con integratorId e referralId così l'automazione può essere identificata.
  4. 4Usa otcTaker quando l'acquirente è già noto; altrimenti il deposito è pubblicamente eseguibile.
  5. 5Salva depositId, txHash, platform, currency, amount e il contesto dell'acquirente previsto.
  6. 6Registra i webhook HMAC così fill e chiusure sopravvivono ai riavvii del processo.
02

Disciplina dei retry

  • L'SDK riprende i depositi non delegati delegandoli invece di creare un duplicato.
  • La cache di idempotencyKey del browser non protegge i worker Node. Il tuo worker dovrebbe controllare deposits(address) prima di creare nuova liquidità.
  • Se la delega fallisce dopo la creazione, riprova la stessa route del wallet; il percorso di ripresa è pensato per quello stato.
  • Non riprovare automaticamente USER_CANCELLED. Indica che un firmatario ha rifiutato un prompt.

Common questions

Un backend può creare depositi senza un wallet utente?

Sì, se ha un proprio firmatario di Base e un saldo USDC. L'SDK firma tramite il WalletClient di viem che fornisci; la custodia e la gestione delle chiavi sono tue.

idempotencyKey previene i depositi duplicati del bot?

No. idempotencyKey è basata sulla sessione del browser. In Node o nei worker, usa deposits(address) e il tuo database degli ordini per prevenire inventario duplicato.