Prices
Create a Price
Cria um preço.
Cria um recurso
price para um product existente. Campos de valor são
imutáveis depois da criação: para mudar currency, unit_amount, type,
recurring ou product_id, crie outro preço e desative o antigo.
Use metadata para correlacionar o preço com IDs do seu sistema. Qualquer
chave funciona; 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
Código ISO 4217 em minúsculas. Ex.:
brl, usd.Obrigatório quando
type é recurring. Vem ausente em preços one_time.Se o preço fica disponível para novas vendas.
Objeto livre
string → string. Padrão {}.Rótulo interno do preço (ex.:
"Mensal", "Anual"). Envie null para
deixar vazio.ID do produto (
prod_*) dono do preço.Quando
true, atualiza product.default_price para apontar para este
preço imediatamente após a criação.unspecified, inclusive ou exclusive.one_time ou recurring.Valor unitário em minor units (centavos).
0 é válido para one_time e
recurring.Resposta
200 OK com o objeto price completo. Todo campo declarado pelo DTO público
é sempre retornado; vazio é null ou {}.
| Campo | Tipo | Observação |
|---|---|---|
id | string | ID do preço (price_*) |
object | string | Sempre "price" |
product | string | Produto dono |
name | string | null | — |
type | string | one_time ou recurring |
currency | string | ISO 4217 minúsculo |
unit_amount | integer | Minor units |
recurring | object | null | null em one_time; inclui interval, interval_count, trial_period_days, usage_type |
tax_behavior | string | unspecified/inclusive/exclusive |
is_active | boolean | — |
livemode | boolean | true em produção; false em ambiente de teste |
metadata | object | Eco do metadata enviado |
created_at | string | ISO 8601 |
updated_at | string | null | ISO 8601 |
Erros comuns
| Status | code | Quando ocorre |
|---|---|---|
400 | invalid_request | product_id ausente; currency não é ISO de 3 letras; unit_amount negativo ou ausente; type inválido |
400 | invalid_request | recurring.interval ausente em recurring; recurring.interval_count não-inteiro ou < 1 |
400 | invalid_request | recurring enviado em one_time; tax_behavior inválido; metadata não-objeto |
404 | resource_missing | product_id não existe nesta organização |
Webhook
A criação disparaprice.created
com o price completo em data.object.
