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

# Criar Checkout

> POST /v2/crossramp_checkout — cria uma nova sessão de Crossramp Checkout e retorna um link de pagamento hospedado.

## Corpo da requisição

| Campo            | Tipo   | Obrigatório | Descrição                                                                                                                                                                                                                                                               |
| ---------------- | ------ | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `currency_code`  | string | Sim         | Criptomoeda a receber (ex: `TRX_USDT_S2UZ`, `BTC`)                                                                                                                                                                                                                      |
| `amount_fiat`    | number | Não\*       | Valor fixo em BRL que o cliente paga                                                                                                                                                                                                                                    |
| `amount_crypto`  | number | Não\*       | Valor fixo em cripto que o cliente recebe                                                                                                                                                                                                                               |
| `webhook`        | string | Não         | URL para receber atualizações de status                                                                                                                                                                                                                                 |
| `return_url`     | string | Não         | URL para redirecionar o cliente após a conclusão                                                                                                                                                                                                                        |
| `payer_document` | string | Não         | CPF ou CNPJ do cliente (apenas dígitos). **Validado quando enviado** — um valor que não é CPF nem CNPJ válido devolve `400`. Se fornecido e não cadastrado, um perfil de cliente é criado automaticamente, pulando a etapa de coleta de identidade no fluxo de checkout |
| `payer_name`     | string | Não         | Nome do cliente (usado ao criar um novo perfil de cliente)                                                                                                                                                                                                              |

> Forneça `amount_fiat` ou `amount_crypto`. Se ambos forem omitidos, a página de checkout permite que o cliente insira o valor.

Campos desconhecidos são rejeitados: uma chave extra ou com erro de digitação devolve `400`, em vez de ser ignorada.

## Response `200 OK`

O corpo da resposta é apenas o link hospedado:

```json theme={null}
{ "link": "https://checkout.noxpay.io/e2e/NOXabc123" }
```

Redirecione o cliente para esta URL ou incorpore-a. O segmento de caminho `NOX...` é o ID `end2end` da transação — use-o com [Consultar Checkout](/pt/api-reference/crossramp-checkout/get) para consultar ou rastrear a sessão. Note que este endpoint devolve `200`, não `201`.

## Códigos de retorno

| HTTP  | Quando                                                                                                          |
| ----- | --------------------------------------------------------------------------------------------------------------- |
| `200` | Criado                                                                                                          |
| `400` | JSON inválido, campo desconhecido, `currency_code` ausente, moeda não reconhecida, ou `payer_document` inválido |
| `401` | `api-key` ausente ou inválida                                                                                   |
| `405` | Método diferente de `POST` ou `OPTIONS`                                                                         |
| `500` | Erro interno                                                                                                    |

<Note>
  Em caso de erro, este endpoint devolve um corpo JSON mas define `Content-Type: text/plain`. Interprete o corpo e ignore o content type.
</Note>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://checkout.noxpay.io/v2/crossramp_checkout \
    -H "api-key: <key>" \
    -H "Content-Type: application/json" \
    -d '{
      "currency_code": "TRX_USDT_S2UZ",
      "amount_fiat": 550.00,
      "webhook": "https://seuapp.com/webhooks/nox",
      "return_url": "https://seuapp.com/sucesso",
      "payer_document": "12345678901"
    }'
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://checkout.noxpay.io/v2/crossramp_checkout",
      headers={
          "api-key": "<key>",
          "Content-Type": "application/json",
      },
      json={
          "currency_code": "TRX_USDT_S2UZ",
          "amount_fiat": 550.00,
          "webhook": "https://seuapp.com/webhooks/nox",
          "return_url": "https://seuapp.com/sucesso",
          "payer_document": "12345678901",
      },
  )
  print(response.json())
  ```

  ```javascript Node.js theme={null}
  const response = await fetch("https://checkout.noxpay.io/v2/crossramp_checkout", {
    method: "POST",
    headers: {
      "api-key": "<key>",
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      currency_code: "TRX_USDT_S2UZ",
      amount_fiat: 550.00,
      webhook: "https://seuapp.com/webhooks/nox",
      return_url: "https://seuapp.com/sucesso",
      payer_document: "12345678901",
    }),
  });
  const data = await response.json();
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "link": "https://checkout.noxpay.io/e2e/NOXabc123"
  }
  ```
</ResponseExample>
