Skip to content

docs: Circle AppKit v1.5.x kit.bridge() and kit.send() have no documented Arc Testnet integration path — only kit.swap() / estimateSwap() are viable #88

@osr21

Description

@osr21

Summary

Circle AppKit v1.5.x (@circle-fin/app-kit) documents kit.bridge() and kit.send() as top-level primitives, but neither has a documented path for Arc Testnet. When building a swap DApp that needed cross-chain bridging (Ethereum Sepolia → Arc Testnet) and wallet-to-wallet token sends, only kit.swap() and kit.estimateSwap() worked reliably.

What we expected

The AppKit README implies that kit.bridge() enables USDC bridging between any two supported chains including Arc Testnet, and that kit.send() sends USDC/EURC between wallets on the same chain.

What actually happened

  • kit.bridge() — No documentation on which chain identifiers are valid for Arc Testnet (e.g. "Arc_Testnet" string constant). The CCTP attestation service used internally does not document Arc Testnet support.
  • kit.send() — No documentation on whether Arc Testnet is supported, or whether the underlying transfer is an on-chain ERC-20 transfer() or a Circle-mediated off-chain transfer.
  • Both methods require the backend wallet private key to execute, which conflicts with the client-side viem adapter pattern shown in docs — creating a security/UX architecture mismatch.

Workaround

  • Bridge: Guide users to faucet.circle.com manually. No programmatic on-chain bridge path was available.
  • Send: Implemented a direct ERC-20 transfer() call via MetaMask + viem, bypassing AppKit entirely.

Environment

  • @circle-fin/app-kit v1.5.0
  • @circle-fin/adapter-viem-v2 v1.10.0
  • Arc Testnet (Chain ID 5042002)
  • Observed: May 2025

Request

Please add to the Arc developer docs:

  1. Which AppKit methods are supported on Arc Testnet
  2. The correct chain identifier string for Arc Testnet in kit.bridge()
  3. Whether kit.send() is implemented for Arc Testnet or falls back to raw ERC-20

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions