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

# Criar Produto

> Cria um produto no catálogo da sua loja com nome, preço em reais, categoria e tipo.

Adiciona um produto ao catálogo. O `id` retornado é usado para montar pedidos.

**Método:** `POST /api/v1/products`

**Autenticação:** Obrigatória — inclua o header `Authorization: Bearer sk_live_sua_api_key`.

## Parâmetros do corpo

<ParamField body="name" type="string" required>
  Nome do produto exibido no catálogo.
</ParamField>

<ParamField body="price" type="number" required>
  Preço **em reais**, com decimais. Exemplo: `100` = R\$100,00 e `19.9` = R\$19,90.
</ParamField>

<ParamField body="category_id" type="string" required>
  UUID da categoria. Use `GET /api/v1/categories` para obter os ids disponíveis.
</ParamField>

<ParamField body="type" type="string" required>
  `normal` para produto simples, `variable` para produto com variações.
</ParamField>

<ParamField body="stock" type="number" required>
  Envie `0`. O estoque é cadastrado depois, em `POST /api/v1/products/:id/stock`.
</ParamField>

<ParamField body="description" type="string">
  Descrição do produto.
</ParamField>

<ParamField body="images" type="string[]">
  Até 2 URLs de imagens auxiliares.
</ParamField>

<ParamField body="comparativePrice" type="string">
  Preço "de", exibido riscado ao lado do preço atual.
</ParamField>

<ParamField body="variations" type="object[]">
  Variações do produto. Use apenas com `type: "variable"`.
</ParamField>

## Exemplo de requisição

```bash theme={null}
curl -X POST 'https://api.bukiopay.com/api/v1/products' \
  --header 'Authorization: Bearer sk_live_sua_api_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "Novo Produto",
    "price": 100,
    "stock": 0,
    "category_id": "3f1c8e2a-55d4-4a1b-9c77-2e0b9a6d4f11",
    "type": "normal"
  }'
```

## Resposta

Status `201 Created`.

```json theme={null}
{
  "message": "Produto criado com sucesso",
  "product": {
    "id": "c3b4168f-d732-44ed-8c67-6080cec06b09",
    "name": "Novo Produto",
    "price": 100,
    "stock": 0,
    "category_id": "3f1c8e2a-55d4-4a1b-9c77-2e0b9a6d4f11",
    "type": "normal",
    "created_at": "2026-05-07T10:00:00.000Z"
  }
}
```

<Warning>
  O produto nasce sem estoque e não pode ser vendido até você cadastrar itens em `POST /api/v1/products/:id/stock`.
</Warning>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.