Supported Networks#
PayWatcher supports USDC payments on multiple EVM-compatible blockchain networks. Use the network parameter when creating a payment to specify which chain to use.
If no network parameter is provided, payments default to Base ("base").
Chain Overview#
| Network | Chain ID | USDC Contract | Confirmations | Explorer |
|---|---|---|---|---|
base | 8453 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | 6 | basescan.org |
ethereum | 1 | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 | 12 | etherscan.io |
arbitrum | 42161 | 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 | 12 | arbiscan.io |
optimism | 10 | 0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85 | 6 | optimistic.etherscan.io |
polygon | 137 | 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 | 128 | polygonscan.com |
API Reference#
List Available Chains#
GET /v1/paywatcher/chains
Returns all supported blockchain networks with their configuration.
json
{
"data": [
{
"network": "base",
"name": "Base",
"chain_id": 8453,
"usdc_contract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"confirmations_required": 6,
"explorer_url": "https://basescan.org"
},
{
"network": "ethereum",
"name": "Ethereum",
"chain_id": 1,
"usdc_contract": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"confirmations_required": 12,
"explorer_url": "https://etherscan.io"
}
]
}Using Multi-Chain in Payments#
Specify the network parameter when creating a payment:
bash
curl -X POST https://api.masem.at/v1/payments \
-H "x-api-key: mms_paywatcher_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": "100.00",
"currency": "USDC",
"chain": "arbitrum"
}'The response includes network, chainId, and explorerUrl:
json
{
"data": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"amount": "100.00",
"exactAmount": "100.000042",
"status": "pending",
"currency": "USDC",
"chain": "arbitrum",
"network": "arbitrum",
"chainId": 42161,
"explorerUrl": null,
"confirmations": 0,
"confirmationsRequired": 12
}
}Default Behavior#
- Without
networkparameter: payments use"base"(Chain ID 8453) - The
chainandnetworkfields serve the same purpose —networkis the preferred parameter - All webhook events include
networkandchain_idfields — see Webhooks