usdc-integration

Integrate USDC into smart contracts with 6-decimal handling and EIP-2612 permits.

120|12|Updated Apr 10, 2026
One-click install
npx skills add https://github.com/ccashwell/evm-cortex --skill usdc-integration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: usdc-integration
Source: https://github.com/ccashwell/evm-cortex/tree/main/skills/usdc-integration
Command: npx skills add https://github.com/ccashwell/evm-cortex --skill usdc-integration

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Integrates USDC safely into smart contracts, enforcing 6-decimal handling, chain-specific addresses, and upgrade-aware patterns to avoid common pitfalls.

Core Features & Use Cases

  • Ensures USDC decimals (6) are respected across conversions between 6 and 18 decimals and across chains.
  • Supports EIP-2612 permits and EIP-3009 transfers, with fallback handling to avoid transaction failures.
  • Addresses blocklists and pause states with safe withdrawal or escrow patterns for liquidations in DeFi apps.

Quick Start

Deploy a USDCVault with the chain's native USDC address and test a small deposit and withdrawal.

Frequently Asked Questions about usdc-integration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I handle USDC 6-decimal conversions when integrating it into smart contracts?

USDC integration requires strict 6-decimal handling for conversions between 6 and 18 decimals across major EVM chains. Safe interaction patterns enforce decimal normalization to prevent calculation errors in vaults, payments, and liquidity operations.

How does EIP-3009 transfer work with USDC and what happens if it fails?

EIP-3009 enables gasless USDC transfers via signed messages. Safe integration patterns apply fallback handling to avoid transaction failures when EIP-3009 or EIP-2612 permit approvals encounter issues on-chain.

How do I manage USDC blocklists and global pause states in DeFi vaults?

USDC blocklist and pause handling requires safe withdrawal or escrow patterns for liquidations. Smart contracts must detect blocklisted addresses and global pauses to securely manage funds without reverting critical operations.

Can I use SafeERC20 with USDC across different EVM chains?

SafeERC20 usage is required for USDC integration across major EVM chains. Chain-specific address validation ensures contracts interact with the correct native USDC deployment, applying safe transfer and approval patterns.

What's the best way to implement EIP-2612 permit-based approvals for USDC payments?

EIP-2612 permit approvals allow gasless USDC spending via signature verification. Integration patterns enforce permit-based approvals with fallback handling, enabling secure vault and payment operations without separate approval transactions.

Why does my USDC integration fail across chains with different decimal assumptions?

USDC integration fails when smart contracts assume 18 decimals instead of the correct 6. Enforcing decimal normalization and chain-specific address validation prevents mismatched calculations and failed cross-chain transactions.