Produtos
Criar um produto
Cria um produto.
Cria um recurso
product. Você pode criar o produto sem preço e definir os
valores depois via POST /v1/prices, ou enviar
prices[] inline no mesmo request. Quando prices[] tem itens, o primeiro preço
do array vira default_price, ou use default_price_index para escolher outro.
Só name é obrigatório. Todo o resto tem padrão ou é resolvido pela
Chargefy — inclusive o default_price quando você envia prices[].
Use metadata para correlacionar o produto com IDs do seu sistema. Qualquer
chave funciona (ex.: sku, reference_id); o objeto inteiro é retornado em
todos os webhooks.
Autenticação
A API key da própria organização atua diretamente. A API key de plataforma exige o headerOrganization: <organization_id> apontando para uma organização
conectada ativa.
Attributes
integer
default:"0"
Índice do preço em
prices[] que vira default_price. Padrão: 0 (o
primeiro preço do array). Enviado sem prices[], ou fora do range do array,
retorna erro 400.string
Descrição livre. Envie
null para deixar vazio.string
URL retornada por
POST /v1/files com
purpose=product_image. Envie null para deixar vazio. URLs externas não são
aceitas.boolean
default:"true"
Indica se o produto é tributável. Padrão:
true.array
Lista de recursos de marketing exibidos ao comprador nas superfícies de venda.
No máximo 15 itens. Padrão
[].object
Objeto livre
string → string para correlacionar com o seu sistema. Padrão {}.string
required
Nome do produto exibido em checkout, faturas e webhooks.
array
Lista opcional de preços inline. Cada item segue o mesmo shape de
POST /v1/prices (sem product_id).
Quando omitido ou vazio, o produto nasce com default_price: null e
prices: [].O que a Chargefy resolve sozinha
default_price— comprices[], aponta paraprices[default_price_index](o primeiro, por padrão); semprices[], ficanull.is_active— o produto nasce ativo.is_tax_applicable— sem valor explícito,true.marketing_featuresemetadata— sem valor explícito,[]e{}.- Preços inline — cada item de
prices[]herda os mesmos padrões dePOST /v1/prices:typeone_time,interval_count1,tax_behaviorunspecified,is_activetrue. - Webhooks — além de
product.created, cada preço inline dispara o próprioprice.created.
Resposta
200 OK com o objeto product completo. Todo campo declarado pelo DTO público
é sempre retornado; vazio é null, {} ou [].
Erros comuns
Webhook
A criação disparaproduct.created
com o product completo em data.object. Cada preço inline também dispara
price.created.
