---
title: "Cria um desconto em uma assinatura existente."
method: POST
path: "/v1/discounts"
tags: ["discounts"]
---

# Cria um desconto em uma assinatura existente.

`POST /v1/discounts`

## Request

- Base URL: `//app.vindi.com.br/api` (relative, and the document’s source URL is not known)
- URL: `//app.vindi.com.br/api/v1/discounts`
- Auth: HTTP basic

## Request body

- PostV1Discounts: Cria um desconto em uma assinatura existente.
  - `body` string: JSON com atributos do novo desconto.
  - `product_item_id` integer, required: ID do item da assinatura que receberá o desconto
  - `discount_type` 'percentage' | 'amount' | 'quantity', required: Tipo do desconto
  - `percentage` number: Valor numérico para porcentagem de 0.01 até 100
  - `amount` number: Valor para desconto fixo
  - `quantity` integer: Número para desconto por quantidade
  - `cycles` integer: Número de ciclos de recorrência onde o desconto será aplicado a partir do momento de sua criação. Nulo significa desconto por tempo indefinido

## Response `201`

Desconto criado com sucesso.

- Discount: Um desconto pode ser aplicado à um item específico de uma assinatura (`product_item`) e possui duração configurável (`cycles`). Utilize este método para obter detalhes de um desconto específico. #### Duração A duração de um desconto pode ser definida através do atributo `cycles` que representa o número de ciclos de recorrência onde o desconto será aplicado. É possível, por exemplo, configurar um desconto apenas para a próxima fatura, ou então conceder um desconto permanente. Neste último caso, o atributo `cycles` deverá permanecer nulo. #### Tipo Cada desconto possui um tipo de cálculo diferente que deve ser informado no atributo `discount_type`. Os seguintes tipos de desconto estão disponíveis: Tipo|Descrição ----|---- `percentage`|Porcentagem: Desconto baseado na porcentagem informada. Utilize um valor númerico entre 0.01 e 100. `amount`|Valor fixo: Desconto no valor exato informado. Mínimo: 0.01. `quantity`|Quantidade: Apenas para produtos com precificação por quantidade fixa (sem faixas). Informe um valor inteiro maior ou igual a 1. #### Cálculo Todos os descontos ativos serão aplicados no momento da geração da fatura e serão calculados a partir do valor original do item. Caso o total de descontos seja superior ao valor original, o preço final do produto permanecerá R$ 0,00. #### Desconto sobre desconto Se um item possuir mais de um desconto ativo, todos eles serão calculados a partir do valor original, conforme mencionado acima. Como exemplo, considere um item que custava originalmente R$ 100,00 e recebeu dois descontos: R$ 10,00 e 50%: ``` Valor original: R$ 100,00 Desconto 1: R$ 10,00 Desconto 2: 50% de R$ 100,00 = R$ 50,00 -- Valor final do produto: R$ 100,00 - R$ 60,00 = R$ 40,00 ```
  - `id` integer, required: ID do desconto
  - `discount_type` 'percentage' | 'amount' | 'quantity', required: Tipo do desconto
  - `percentage` number: Valor numérico para porcentagem de 0.01 até 100
  - `amount` number: Valor para desconto fixo
  - `quantity` integer: Número para desconto por quantidade
  - `cycles` integer: Número de ciclos de recorrência onde o desconto será aplicado a partir do momento de sua criação. Nulo significa desconto por tempo indefinido
  - `status` 'active' | 'inactive' | 'deleted', required: Status do desconto
  - `created_at` string, required: Data e hora do cadastro do desconto
  - `updated_at` string, required: Data e hora da última atualização do desconto
  - `product_item` ProductItemSummary, required
    - `id` integer, required: ID do item
    - `product` ProductSummary, required
      - `id` integer, required: ID do produto
      - `name` string, required: Nome do produto
      - `code` string: Código externo do produto

## Other responses

- `400`: Erro de sintaxe JSON no corpo do request.
- `422`: Parâmetros inválidos. Verificar erro na resposta.

---

[API](https://skmtc.dev/vindi/apis/api-vindi.md) - [All operations](https://skmtc.dev/vindi/apis/api-vindi/llms.txt) - [OpenAPI document](https://skmtc.dev/vindi/apis/api-vindi/revisions/3e857e1cdd03?raw)
