Smart Contracts
FinCobra Checkout uses EVM smart contracts for self-custodial stablecoin invoice payments on Ethereum mainnet, Arbitrum One, and Base. The contracts do not custody merchant funds. Browser-wallet payments route ERC-20 tokens from the payer to the merchant recipient, and address-transfer invoices use deterministic receiver addresses that merchants settle from their own wallet.
Only the contract deployments listed on this page are current for FinCobra Checkout.
Supported EVM Networks
| Network | Chain ID | Assets | Contract rails |
|---|---|---|---|
| Ethereum mainnet | 1 | USDT, USDC | CheckoutPaymentHubV2, InvoiceReceiverFactory |
| Arbitrum One | 42161 | USDC | CheckoutPaymentHubV2, InvoiceReceiverFactory |
| Base | 8453 | USDC | CheckoutPaymentHubV2, InvoiceReceiverFactory |
Solana wallet checkout and Bitcoin xpub-derived address transfers do not require an EVM smart contract deployment.
Production Deployments
| Network | Contract | Address | Transaction |
|---|---|---|---|
| Ethereum mainnet | CheckoutPaymentHubV2 | 0x6bf112f72dd7bd0841342ef406546d50d97604db | 0x6c346eb9a68ef372790bd4f6ca695410420d9cb6de4cb3a03654103e21912f53 |
| Ethereum mainnet | InvoiceReceiverFactory | 0x2bd7c7f7aa3550dbf38c92e0344ae9f503076764 | 0x477a3907635db944f3d6506821b1f03ba51dd3ab7c1f0dcd1ccd528de6bc48a9 |
| Arbitrum One | CheckoutPaymentHubV2 | 0x3e4a76590ef64d216e360c8cb00731892bbbe3e2 | 0x99c6ca9708d4a65ecf0011ce426aa63962c3688632d32697ed8a39e61440795a |
| Arbitrum One | InvoiceReceiverFactory | 0xd1780c8e7fbc9d6289ebfd7acea7e1e685d02d7b | 0x766f367e71e8f619b8e267ca82f0fb72e6666aa2d07c9e7051a6ef4d042ff878 |
| Base | CheckoutPaymentHubV2 | 0xef53ac785d9d5104d46d56bc997dd1af06899f9f | 0xbbe3e4195578714103d638fc7df8321c45c29660f2c9c6796838311a0586f21a |
| Base | InvoiceReceiverFactory | 0x982dcd79cd8b267ca9303048f3c4cf4c846f34a4 | 0x06dcc02859e164eefe15504ffb1c2661b676210920103d882400d593a7cc2379 |
Development Deployments
| Network | Contract | Address | Transaction |
|---|---|---|---|
| Ethereum mainnet | CheckoutPaymentHubV2 | 0xdbb84fac2cdd5dd57dfa50b043f776a63ee70667 | 0x58f79ae5c56bd981c04cd2dbef0f0d43048b40e24065c850686dcc2acf029875 |
| Ethereum mainnet | InvoiceReceiverFactory | 0xbaf95f53bbb165a7a3cd579687bb1c5ffbbf4b85 | 0x62be318c521c0a3407c95cabc40f248e93dfcbfb61f82d48782b82b33c613ba8 |
| Arbitrum One | CheckoutPaymentHubV2 | 0xfcdea5f5695057878c3f8b1d77e68cd5be50a4d2 | 0xc62cb6d70771545785ccfcbee8d718b27241224c3deb6298b448eacf9cb43ae0 |
| Arbitrum One | InvoiceReceiverFactory | 0x5bdfc56d7cf67bc866602e061f70c1bd65bb9b0b | 0xcc7fcb069427bc5ae29ae89648f33265f3b3de073df8baa0fc5a57478cfbcab6 |
| Base | CheckoutPaymentHubV2 | 0x10d492bb50d927a14a406766a60bd353c456bb3a | 0x37b78a2a6be385b3d4be289b824d2460c83ba3cec710764176b904786f024b5e |
| Base | InvoiceReceiverFactory | 0x005c5bc30cede75d9e452ec709962f8f94af92fa | 0x9d6e7aca4d6d99d6c9c2fe5c6ac30df971463ec0cf0f6cf8ebd53381869782ce |
Supported Tokens
| Network | Token | Address |
|---|---|---|
| Ethereum mainnet | USDT | 0xdAC17F958D2ee523a2206206994597C13D831ec7 |
| Ethereum mainnet | USDC | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 |
| Arbitrum One | USDC | 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 |
| Base | USDC | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
Arbitrum USDT0 is not supported.
Contract Roles
CheckoutPaymentHubV2 is the browser-wallet payment rail. Customers connect an EVM wallet on the selected network and submit the payment transaction themselves. The hub verifies the requested token is allowlisted, transfers the merchant and commission amounts atomically, and emits a PaymentAccepted event with invoice identifiers used by FinCobra Checkout to detect payment.
InvoiceReceiverFactory is the address-transfer rail. It derives per-invoice receiver addresses before deployment, which lets customers pay from an exchange or wallet without connecting to the hosted checkout page. When settlement is needed, the merchant wallet deploys the receiver and sweeps the designated token to the configured merchant recipient.
Deployment Policy
FinCobra Checkout fund-path contracts are immutable deployments, not proxies. A behavior change requires a new deployment and a new deployment manifest. The contracts do not include implementation addresses, UUPS upgradeability markers, role-manager contracts, or standalone commission-manager contracts.
The commission recipient is 0xd2Bd690D56369E50fCc24A4e0c41B9d1a2ECD22f. The maximum commission cap is 50 bps (0.5%) of the gross payment amount.
Related API Fields
Invoice responses include contract data only when the invoice has an EVM wallet-contract payment option. In that case, paymentOptions[].network identifies the EVM network, paymentOptions[].optionPayload.contractAddress is the active CheckoutPaymentHubV2 address, paymentOptions[].optionPayload.tokenContract is the selected stablecoin contract, and paymentOptions[].optionPayload.recipient is the merchant recipient for that invoice.
See API Reference for the full payment option shape.