> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spherepay.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Aceite Pagamentos Fiat e Liquide em Stablecoins

> Aceite pagamentos fiat e liquide-os automaticamente como stablecoins on-chain, sem uma chamada de API por pagamento, sobre contas virtuais Onramper.

Aceite pagamentos fiat de seus usuários finais e tenha-os entregues à sua carteira como USDC, USDT ou EURC — automaticamente, sem escrever uma chamada `POST /v2/transfer` por pagamento. O primitivo é um **[Onramper Account](/pt-BR/concepts/automation/onramper-accounts)**: uma conta bancária virtual dedicada que converte automaticamente qualquer depósito fiat recebido em stablecoins e liquida em uma carteira registrada.

Este padrão é o inverso do [Trading](/pt-BR/solutions/trading) — em vez de orquestrar cada conversão, você provisiona a conta uma vez e a deixa funcionar.

## Quando usar este padrão

* **E-commerce e faturamento B2B.** Fature clientes em USD, EUR ou BRL — eles pagam via wire ou ACH contra uma conta virtual, e você recebe USDC.
* **Marketplaces.** Provisione um Onramper Account por vendedor. Os recebimentos fiat de cada vendedor são liquidados automaticamente em uma carteira controlada pelo vendedor.
* **Financiamento DeFi.** Permita que usuários financiem uma posição on-chain via wire ou cartão. O usuário faz wire de fiat para seu Onramper Account, e USDC é liquidado diretamente no contrato do protocolo ou em uma carteira que você varre para o protocolo.
* **Faturamento por assinatura.** Cobranças ACH recorrentes de clientes chegam ao Onramper Account e são convertidas sem trabalho de API por ciclo de faturamento.
* **Entrada de tesouraria.** Receba pagamentos de clientes em fiat sem manter fiat — converta no ponto de recebimento.

O denominador comum: sempre que você de outra forma escreveria um loop de transferência por pagamento, um Onramper Account o substitui com uma única chamada de configuração e zero chamadas de API de transferência contínuas.

## Como funciona

```mermaid theme={"dark"}
flowchart LR
    P["End user<br/>(payer)"] -->|"USD/EUR/BRL"| VA["Onramper Account<br/>(virtual bank account)"]
    VA -->|"USDC/USDT/EURC"| W["Your wallet<br/>(or protocol contract)"]
```

1. **Provisione um Onramper Account** para cada pagador (ou por carteira receptora — depende do seu modelo).
2. **Compartilhe as instruções de depósito** com seu usuário final — eles fazem wire em USD, ACH ou SEPA contra a conta virtual como qualquer outra conta bancária.
3. **O SpherePay converte automaticamente e liquida.** Cada depósito recebido é convertido para a stablecoin configurada e entregue ao endereço de carteira registrado — sem chamada de API de transferência necessária.

Você pode distribuir isso: um Onramper Account por cliente para reconciliação limpa, um por linha de produto ou um por destino de carteira.

## Configuração

### Etapa 1 — Verificar o cliente

O cliente que possui o Onramper Account deve completar [KYC](/pt-BR/concepts/onboarding/individual-kyc) ou [KYB](/pt-BR/concepts/onboarding/business-kyb) e ser aprovado. O cliente pode ser um único usuário, uma entidade empresarial (para um vendedor de marketplace) ou sua própria empresa (para um único funil de entrada).

### Etapa 2 — Registrar a carteira de destino

A carteira que receberá a saída de stablecoin de cada depósito.

**POST** `https://api.spherepay.co/v2/wallet`

```json theme={"dark"}
{
  "customerId": "{{customer_id}}",
  "network": "ethereum",
  "address": "0xabcd1234...your wallet or contract..."
}
```

Armazene o `id` retornado como `{{wallet_id}}`. Para um fluxo DeFi, este pode ser o endereço do contrato de vault ou pool do protocolo diretamente — o Sphere entregará USDC nele a cada conversão.

### Etapa 3 — Criar o Onramper Account

**POST** `https://api.spherepay.co/v2/virtual-account`

```json theme={"dark"}
{
  "customerId": "{{customer_id}}",
  "destination": {
    "walletId": "{{wallet_id}}",
    "currency": "usdc",
    "network": "ethereum"
  },
  "source": {
    "currency": "usd",
    "networks": ["ach", "wire"]
  }
}
```

A resposta inclui `accountDetails` — o número de roteamento e conta da conta bancária virtual. Compartilhe com seu pagador.

Para entrada denominada em EUR, troque para:

```json theme={"dark"}
"source": {
  "currency": "eur",
  "networks": ["sepa"]
}
```

Para entrada em BRL, use `currency: "brl"` e `networks: ["pix"]` (sujeito a requisitos de perfil de verificação BRL — consulte [Trading](/pt-BR/solutions/trading#pré-requisitos)).

### Etapa 4 — Compartilhar instruções de depósito

Da resposta, exiba o número da conta, código de roteamento (ou IBAN/BIC para SEPA, chave PIX para BRL) e nome do titular da conta na sua UI ou fatura. O pagador inicia um ACH ou wire para essa conta.

### Etapa 5 — Receber

Cada depósito aciona:

1. O Sphere recebe o fiat na conta virtual.
2. O Sphere converte para a stablecoin configurada à taxa vigente.
3. A stablecoin é entregue na carteira registrada — `{{wallet_id}}`.

Acompanhe a atividade no Onramper Account via:

```bash theme={"dark"}
curl "https://api.spherepay.co/v2/transfer?customer={{customer_id}}" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## Aplicação DeFi

Para plataformas DeFi especificamente, o padrão Onramper Account desbloqueia **on-ramp para uma posição de protocolo em uma ação do usuário**:

1. O usuário decide depositar no seu protocolo.
2. Seu app mostra as instruções de depósito de um Onramper Account configurado para liquidar USDC diretamente no contrato de vault do protocolo (ou em uma carteira intermediária que você varre para o protocolo).
3. O usuário faz wire em USD do seu banco.
4. USDC chega ao contrato do protocolo; o depósito reflete na posição on-chain automaticamente.

O usuário nunca toca uma carteira, nunca faz bridge, nunca paga gas para onboard. O fluxo de fiat para posição se torna um único wire.

Para protocolos que requerem mais orquestração (ex.: assinaturas permit, funções de depósito com calldata específico), use uma carteira intermediária que você controla e acione a interação com o protocolo na chegada da stablecoin.

## Aplicação em marketplace

Provisione um Onramper Account **por vendedor** no onboarding:

```javascript theme={"dark"}
async function onboardSeller(sellerCustomerId, sellerWalletId) {
  // Each seller gets their own dedicated virtual account
  const va = await createVirtualAccount({
    customerId: sellerCustomerId,
    destination: {
      walletId: sellerWalletId,
      currency: "usdc",
      network: "polygon",
    },
    source: {
      currency: "usd",
      networks: ["ach"],
    },
  });

  // Hand the seller their unique deposit details
  return {
    routing: va.accountDetails.routingNumber,
    account: va.accountDetails.accountNumber,
    name: va.accountDetails.accountHolderName,
  };
}
```

Os compradores pagam cada vendedor diretamente via ACH contra a conta virtual do vendedor. A plataforma de marketplace nunca toca os fundos — o Sphere cuida de toda a liquidação de fiat para USDC.

## Considerações de conformidade

* **KYC no proprietário da conta.** O cliente que possui o Onramper Account deve ser verificado. Para marketplaces, isso significa que cada vendedor passa por KYC/KYB.
* **Origem dos fundos.** Depósitos grandes ou incomuns podem exigir documentação adicional de acordo com as políticas de conformidade do Sphere.
* **Triagem de sanções.** O Sphere triagem depósitos no nível do rail, mas você permanece responsável pela legalidade da sua atividade de negócio subjacente.
* **Relatório fiscal.** Eventos de conversão para stablecoin podem ser tributáveis em algumas jurisdições — coordene com seu consultor tributário.

## Boas práticas

* **Uma conta por receptor.** Não compartilhe um Onramper Account entre múltiplos vendedores ou casos de uso — a reconciliação fica confusa. Contas dedicadas tornam cada depósito inequívoco.
* **Defina limites conservadores.** Use os limites de depósito por conta do Sphere para limitar a exposição em qualquer conta individual.
* **Consulte o status de depósito.** O Onramper Account não dispara webhooks atualmente; consulte [GET /v2/transfer](/pt-BR/api-reference/transfer/get) filtrado por cliente (use `type=microdeposit` para depósitos de verificação) para detectar novos depósitos.
* **Use SEPA Instant quando possível** para fluxos em EUR que exigem liquidação rápida.
* **Planeje para reembolsos.** Se o modelo de negócio subjacente exigir devolução de fundos, você precisará de um fluxo separado de off-ramp (consulte [Offloader Wallets](/pt-BR/concepts/automation/offloader-wallets)).

## Relacionados

<CardGroup cols={2}>
  <Card title="Onramper Accounts" icon="landmark" href="/pt-BR/concepts/automation/onramper-accounts">
    O primitivo no qual esta solução é construída — contas bancárias virtuais com conversão automática de stablecoin.
  </Card>

  <Card title="Trading" icon="refresh-cw" href="/pt-BR/solutions/trading">
    O padrão inverso — conversão orquestrada, por transferência.
  </Card>

  <Card title="Onboarding" icon="user-check" href="/pt-BR/concepts/onboarding/overview">
    KYC/KYB para o proprietário da conta.
  </Card>

  <Card title="Rails suportados" icon="globe" href="/pt-BR/concepts/transfers/supported-rails">
    Quais moedas e redes são suportadas.
  </Card>
</CardGroup>
