# Recibir pagos en USDC ERC20 (Ethereum)

> Recibe pagos en USDC ERC20 con CryptoLike: precio en USD o en USDC, tu cliente paga en una página alojada y los fondos llegan a tu saldo tras las confirmaciones.

Source: https://cryptolike.net/es/coins/usdc-erc20
Updated: 2026-09-28

CryptoLike acredita el pago en USDC (ERC20) a tu saldo tras 12 confirmaciones de la red Ethereum y se lo informa a tu servidor con un webhook firmado. Tú creas el pago y tu cliente envía los USDC desde su propia billetera de Ethereum. CryptoLike vigila la dirección, cuenta las confirmaciones y cambia el estado de `pending` a `paid`.

## Cómo funciona un pago en USDC (ERC20)

Un pago en USDC (ERC20) en CryptoLike pasa por cuatro pasos y tres estados: `new`, `pending` y `paid`. La página de pago, la API y los webhooks muestran el mismo estado, así que la lógica de tus pedidos lee un solo campo. Tu cliente no necesita cuenta en CryptoLike: solo una billetera de Ethereum con USDC y algo de ETH para el gas.

1. **Creas el pago** con `POST /v1/invoices`, el [módulo para Magento 2](https://cryptolike.net/es/integrations/magento), el [módulo para PrestaShop](https://cryptolike.net/es/integrations/prestashop) o un [enlace de pago](https://cryptolike.net/es/use-cases/payment-links). Estado: `new`.
2. **Tu cliente ve qué debe enviar:** el monto exacto en USDC, la red (Ethereum), la dirección con código QR y el tiempo restante.
3. **Se detecta la transferencia.** Estado: `pending`, «Pago detectado. Esperando confirmación.»
4. **Se confirma el pago.** Tras 12 confirmaciones el estado pasa a `paid`, los fondos están en tu saldo y llega un [webhook](https://cryptolike.net/docs/webhooks) `invoice.paid` firmado.

## Qué distingue a USDC en Ethereum

USDC es una stablecoin en dólares emitida por Circle. En Ethereum tiene 6 decimales: un monto en USDC en `POST /v1/invoices` admite hasta seis dígitos después del punto, y la API rechaza uno más preciso. Un precio en USD se convierte y se redondea hacia arriba a seis decimales. Circle puede bloquear una dirección, y una billetera en una dirección bloqueada no puede enviar USDC, así que un pago desde ella nunca llega. USDC y USDT son tokens distintos aunque ambos siguen al dólar: un pago en USDC se paga solo en USDC, y un cliente que tiene USDT necesita un [pago en USDT](https://cryptolike.net/es/coins/usdt-erc20).

## Qué debe saber tu cliente sobre Ethereum

En Ethereum, CryptoLike acepta solo los USDC del contrato ERC20 oficial de USDC enviados a una dirección que empieza con `0x`. La billetera del cliente paga la comisión de red de Ethereum, llamada gas, en ETH, por lo que necesita algo de ETH junto a los USDC. El monto de la página de pago debe llegar completo y únicamente por la red principal de Ethereum.

- **Dirección.** `0x` seguido de 40 caracteres hexadecimales. Otras redes compatibles con EVM usan el mismo formato, así que revisa el nombre de la red en la página, no solo la dirección.
- **Comisión de red.** El gas se paga en ETH y varía según la carga de la red. Una billetera con USDC y 0 ETH no puede enviar.
- **Contrato.** Solo se acreditan los USDC del contrato `0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48`; un token con el mismo nombre emitido por otro contrato no se acredita.
- **Monto exacto.** Si un exchange descuenta su comisión de retiro, el pago llega incompleto y queda en `underpaid`. Envía la diferencia a la misma dirección antes de que se acabe el tiempo.
- **Red.** Los USDC enviados por otra red nunca llegan a este pago y no se pueden recuperar.

## Crea un pago en USDC (ERC20)

Para crear un pago en USDC (ERC20) en CryptoLike, toma de `GET /v1/currencies` el `id` del activo con `ticker` USDC y `network` eth, y pásalo como `coin_id` a `POST /v1/invoices`. Pon el precio en USD, como en el ejemplo, o en USDC; un monto en moneda fiat se convierte al tipo de cambio actual, fijado durante el plazo del pago.

```bash
COIN_ID=$(curl -s https://api.cryptolike.net/v1/currencies \
  | jq -r '.currencies[] | select(.ticker=="USDC" and .network=="eth") | .id')

BODY='{"amount":"1200.00","currency":"USD","coin_id":"'"$COIN_ID"'","order_id":"INV-2026-042"}'
curl -s https://api.cryptolike.net/v1/invoices \
  -H "Content-Type: application/json" -H "Idempotency-Key: INV-2026-042" \
  -H "X-API-Key: $KEY_ID" -H "X-Timestamp: $TS" -H "X-Signature: $SIG" -d "$BODY"
```

La respuesta incluye `address`, `payer_amount`, `rate_locked` y `checkout_url`: envía a tu cliente a esa URL. Cómo firmar la solicitud: [autenticación de la API](https://cryptolike.net/docs/auth); todos los campos: [referencia de la API](https://cryptolike.net/docs/api).

## Preguntas frecuentes

### ¿Cuántas confirmaciones necesita USDC ERC20?

CryptoLike acredita USDC (ERC20) tras 12 confirmaciones de la red Ethereum. El umbral se define por activo, lo devuelve `GET /v1/currencies` y tu cliente ve el avance en la página de pago. Más sobre las [confirmaciones](https://cryptolike.net/es/glossary/confirmations).

### ¿Qué pasa si el cliente envía USDC por otra red?

La transferencia no llega a este pago y no se puede recuperar: CryptoLike acepta USDC solo en Ethereum. Si tu cliente tiene USDT, crea un pago en [USDT en Ethereum](https://cryptolike.net/es/coins/usdt-erc20) o en [USDT en TRON](https://cryptolike.net/es/coins/usdt-trc20).

### ¿Puedo poner el precio en USD?

Sí. Envía `currency: "USD"` con el `coin_id` de USDC: CryptoLike convierte al tipo de cambio actual y lo fija durante el plazo del pago ([tipo de cambio fijado](https://cryptolike.net/glossary/rate-lock)). Si no hay un tipo de cambio reciente disponible, la API responde `503`: vuelve a intentarlo o pon el precio del pago en USDC.

### ¿Puedo cobrarle a un cliente en USDC sin tener sitio web?

Sí. Crea un pago en el panel o en el bot de Telegram y envía el enlace; tu cliente paga en la misma página de pago. La [facturación cripto](https://cryptolike.net/es/use-cases/invoicing) cubre el flujo B2B.

### ¿Cómo funcionan los retiros en USDC?

Con `POST /v1/withdrawals` y los campos `coin_id`, `amount`, `to_address` y tu `payout_id`, o con un CSV de hasta 1,000 filas en el panel ([pago masivo](https://cryptolike.net/es/use-cases/mass-payouts)). Antes, `POST /v1/withdrawals/estimate` muestra la comisión de la plataforma, la comisión de red reservada (en USDC, sin necesidad de saldo en ETH) y el total que se descuenta. Los retiros requieren una cuenta verificada; las comisiones están en la [página de precios](https://cryptolike.net/es/pricing).
