How it works
Gift card credits live on Starknet. When a recipient redeems to Solana, USDC is bridged via Circle’s CCTP V2 (Cross-Chain Transfer Protocol):Fast vs Standard mode
Each Gift carries acctpFast flag that controls Solana redeem speed:
Fast mode pays a small fee to Circle’s attestation service for priority. Standard mode waits for Starknet’s ZK proof to post to Ethereum L1.
Single-create (
POST /v1/gifts) does not accept cctpFast in the request today. The gift is always created with cctpFast: true (the schema default). To set cctpFast: false, use the bulk endpoint (POST /v1/gifts/bulk) which accepts the flag, or the dashboard’s bulk-airdrop flow.Supported chains
Redeem flow for Solana
Status flow
Technical details
- CCTP V2 contracts: TokenMessenger on Starknet (
0x07d421...), MessageTransmitter on Solana (CCTPV2Sm4...) - Domain IDs: Starknet = 25, Solana = 5
- Mint recipient: must be the Solana USDC Associated Token Account (ATA), not the wallet pubkey
- Circle attestation API:
https://iris-api.circle.com/v2/messages/25?transactionHash={txHash} - Server relay: Chipi’s server submits the
receiveMessagetransaction on Solana and pays the SOL gas fee
The recipient doesn’t need SOL for gas — Chipi’s relay pays for the Solana transaction.
