开发者 · 机器人

无需自造汇率管理器即可运行存款自动化。

机器人集成不是去掉按钮的浏览器流程。它需要防重复、重启安全的状态、明确的钱包托管、webhook 验证,以及一条何时让流动性私密化的清晰规则。

01

机器人流程

  1. 1从你自己的签名基础设施加载一个 Base 钱包客户端。
  2. 2在创建新存款前调用 deposits(walletAddress);当活跃库存适合该订单时复用它。
  3. 3用 integratorId 和 referralId 调用 offramp(walletClient, params),以便能够识别自动化行为。
  4. 4当买家已知时使用 otcTaker;否则该存款为公开可成交。
  5. 5持久化 depositId、txHash、platform、currency、amount 以及预期的买家上下文。
  6. 6注册 HMAC webhooks,使成交和关闭事件能在进程重启后保留。
02

重试纪律

  • SDK 通过委托而非新建重复项来恢复未委托的存款。
  • 浏览器的 idempotencyKey 缓存无法保护 Node worker。你的 worker 应在创建新流动性前检查 deposits(address)。
  • 如果在创建后委托失败,重试同一钱包路径;恢复路径正是为此状态设计的。
  • 不要自动重试 USER_CANCELLED。它表明某个签名方拒绝了一个提示。

Common questions

后端能在没有用户钱包的情况下创建存款吗?

可以,前提是它有自己的 Base 签名方和 USDC 余额。SDK 通过你提供的 viem WalletClient 签名;托管和密钥管理由你负责。

idempotencyKey 能防止机器人重复存款吗?

不能。idempotencyKey 由浏览器会话支撑。在 Node 或 worker 中,使用 deposits(address) 和你自己的订单数据库来防止库存重复。