# Definir a data de renovação de faturamento da assinatura

Assinaturas são cobradas em ciclos. Veja como definir a data de cobrança.

Se sua integração usar [Accounts configuradas pelo cliente](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer), substitua `Customer` e as referências a eventos nos exemplos de código pelas referências equivalentes da API Accounts v2. Para obter mais informações, consulte [Representar clientes com objetos Account](https://docs.stripe.com/accounts-v2/use-accounts-as-customers.md).

O período de cobrança de uma assinatura depende de dois fatores:

- O intervalo recorrente do [preço](https://docs.stripe.com/products-prices/overview.md) ou preços, como mensal, anual, semanal e assim por diante.
- A [âncora do ciclo de faturamento](https://docs.stripe.com/api/subscriptions/object.md#subscription_object-billing_cycle_anchor) é o ponto de referência que alinha datas futuras do período de cobrança. Ela define o dia da semana para intervalos de `week`, o dia do mês para `month` e intervalos de `year` e o mês do `year`. O valor padrão é a data de criação da assinatura ou a data final da avaliação (se você estiver usando um período de avaliação). Você também pode definir explicitamente esse valor no ato da criação da assinatura.

> As âncoras do ciclo de faturamento são carimbos de data e hora do UNIX da época atual.

Veja a seguir exemplos de assinaturas mensais com diferentes períodos de cobrança:

- Uma assinatura mensal com uma data âncora do ciclo de faturamento de 2 de setembro sempre é faturada no segundo dia do mês.
- Uma assinatura mensal com uma data âncora de ciclo de faturamento de 31 de janeiro fatura o último dia do mês mais próximo da data âncora, ou seja, 28 de fevereiro (ou 29 de fevereiro em um ano bissexto), depois 31 de março, 30 de abril e assim por diante.
- Uma assinatura semanal com uma data âncora do ciclo de faturamento de sexta-feira, 3 de junho fatura todas as sextas-feiras a partir de então.

Os períodos de faturamento completos começam na primeira data da *fatura* (Invoices are statements of amounts owed by a customer. They track the status of payments from draft through paid or otherwise finalized. Subscriptions automatically generate invoices, or you can manually create a one-off invoice) completa, que normalmente é a data da âncora do ciclo de faturamento e sempre está alinhada por intervalos.

## Especificar a âncora do ciclo de faturamento para novas assinaturas

> O horário de criação da assinatura corresponde ao horário da solicitação. Ele não é o mesmo que a data de início da assinatura. Saiba mais sobre [retrodatação e âncoras do ciclo de faturamento](https://docs.stripe.com/billing/subscriptions/backdating.md#backdating-billing-cycle).

Existem duas formas de definir a âncora do ciclo de faturamento em novas assinaturas:

- Use `billing_cycle_anchor_config` para calcular o carimbo de data e hora para você (somente assinaturas mensais ou anuais).
- Use `billing_cycle_anchor` para aceitar diretamente o carimbo de data e hora.

Se estiver criando uma assinatura mensal ou anual, recomendamos usar o parâmetro `billing_cycle_anchor_config`, pois ele considera automaticamente os meses curtos e anos bissextos. Se estiver criando uma assinatura diária ou semanal, ou se preferir definir a data de renovação da sua assinatura usando um carimbo de data e hora, use o parâmetro `billing_cycle_anchor` diretamente.

### Usar billing_cycle_anchor_config

Para criar uma integração com assinaturas mensais ou anuais, use `billing_cycle_anchor_config` em [criar assinatura](https://docs.stripe.com/api.md#create_subscription) para especificar o dia do mês no qual a âncora será feita.

Defina `day_of_month` como `31` para criar uma assinatura mensal com renovação no final do mês, mesmo em meses com menos de 31 dias. Se um mês tiver menos de 31 dias, a assinatura renovará no último dia desse mês.

```curl
curl https://api.stripe.com/v1/subscriptions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "customer={{CUSTOMER_ID}}" \
  -d "items[0][price]={{PRICE_ID}}" \
  -d "billing_cycle_anchor_config[day_of_month]=31"
```

Você também pode especificar `month` para controlar o mês do ano para a âncora em assinaturas de vários meses ou anuais.

Para definir suas assinaturas anuais no dia 1º de julho, crie uma assinatura anual com um `month` de `7` e `day_of_month` de `1`.

```curl
curl https://api.stripe.com/v1/subscriptions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "customer={{CUSTOMER_ID}}" \
  -d "items[0][price]={{PRICE_ID}}" \
  -d "billing_cycle_anchor_config[month]=7" \
  -d "billing_cycle_anchor_config[day_of_month]=1"
```

Você pode especificar o mês, o dia, a hora, o minuto e o segundo exatos para a âncora do ciclo de cobrança usando `billing_cycle_anchor_config`. Se você não especificar a hora, o minuto e o segundo, o padrão será os valores do horário de criação da assinatura.

A âncora do ciclo de cobrança usa UTC (Horário Universal Coordenado). Por exemplo, se você criar uma assinatura usando `billing_cycle_anchor_config` às 5 PM EST sem especificar a hora, a hora  será registrada no sistema como 10 PM UTC.

`billing_cycle_anchor_config` não aceita ancoragem em uma data de início retroativa.

Por exemplo, se você tiver uma assinatura mensal existente com um carimbo de data e hora `billing_cycle_anchor` que contém o dia do mês, a hora, o minuto e o segundo de 15, 12, 30 e 0, poderá alinhar uma nova assinatura mensal a ele. Para fazer isso, defina `day_of_month`, `hour`, `minute` e `second` para corresponder aos mesmos valores, respectivamente.

```curl
curl https://api.stripe.com/v1/subscriptions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "customer={{CUSTOMER_ID}}" \
  -d "items[0][price]={{PRICE_ID}}" \
  -d "billing_cycle_anchor_config[day_of_month]=15" \
  -d "billing_cycle_anchor_config[hour]=12" \
  -d "billing_cycle_anchor_config[minute]=30" \
  -d "billing_cycle_anchor_config[second]=0"
```

Se você usar `billing_cycle_anchor_config`, poderá resultar em um `billing_cycle_anchor` com mais de um período de faturamento no futuro. No entanto, a data da primeira fatura completa sempre ocorre em um período de faturamento desde a criação da assinatura ou do término de uma avaliação gratuita.

Por exemplo, suponhamos que você cria uma assinatura de intervalo de dois meses em fevereiro e a realiza no final de cada mês, definindo `day_of_month` como `31`. O próximo mês, que tem 31 dias em intervalos de dois meses a partir de fevereiro, é agosto. Isso resulta em uma âncora de ciclo de faturamento em 31 de agosto. No entanto, a primeira data de fatura completa dessa assinatura ainda ocorre em fevereiro. Há um período inicial proporcional da criação da assinatura até 28 de fevereiro (ou 29 durante um ano bissexto), seguido por um período de faturamento completo de dois meses.

### Usar billing_cycle_anchor

Você pode criar uma assinatura com uma âncora de ciclo de faturamento explícita usando a API Subscriptions ou o Checkout.

#### API Subscriptions

Chame [create subscription](https://docs.stripe.com/api.md#create_subscription), definindo um carimbo de data e hora para `billing_cycle_anchor`.

#### Accounts v2

```curl
curl https://api.stripe.com/v1/subscriptions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "customer_account={{CUSTOMERACCOUNT_ID}}" \
  -d "items[0][price]={{PRICE_ID}}" \
  -d billing_cycle_anchor=1611008505
```

#### Customers v1

```curl
curl https://api.stripe.com/v1/subscriptions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "customer={{CUSTOMER_ID}}" \
  -d "items[0][price]={{PRICE_ID}}" \
  -d billing_cycle_anchor=1611008505
```

### Configurar o comportamento proporcional

Independentemente do parâmetro de API usado, a Stripe cria automaticamente uma fatura proporcional para cobrar o período entre a data de criação da assinatura e a data completa da primeira fatura.

Se você não quiser cobrar imediatamente de um cliente o período entre a criação da assinatura e a primeira data da fatura completa, você pode:

- [Desative o pro rata](https://docs.stripe.com/billing/subscriptions/prorations.md#disable-prorations) definindo `proration_behavior` como `none`, tornando gratuito o período inicial até a primeira data de faturamento integral. Esta ação não gera nenhuma fatura até o primeiro período de cobrança.
- [Combine um período de teste com o billing_cycle_anchor](https://docs.stripe.com/billing/subscriptions/trials/free-trials.md#combine-trial-anchor) definindo `trial_end` como um carimbo que represente a data em que o teste gratuito termina. Dependendo da duração do teste gratuito e do número de dias até a data da primeira fatura completa, essa opção pode resultar em uma fatura rateada após o período de teste. Por exemplo, um teste gratuito é de 7 dias e a renovação de cobrança é mensal no dia 1º. Se o cliente assina no dia 15, geramos uma fatura pro rata no dia 22 para o período entre o dia 22 e o dia 1º e, em seguida, cobramos o valor integral no dia 1º de cada mês posteriormente. Se um cliente assina no dia 28, o teste gratuito se estende além do dia 1º, gerando uma fatura pro rata até o mês seguinte.

#### Checkout

Chame [criar sessão](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session) do Stripe Checkout com um carimbo de data e hora para `subscription_data.billing_cycle_anchor`:

#### cURL

```bash
curl https://api.stripe.com/v1/checkout/sessions \
  -u <<YOUR_SECRET_KEY>>: \
  -d "line_items[][price]"="{{PRICE_ID}}" \
  -d "line_items[][quantity]"=1 \
  -d "mode"="subscription" \
  -d "success_url"="https://example.com/success?session_id={CHECKOUT_SESSION_ID}" \
  -d "subscription_data[billing_cycle_anchor]"=1611008505
```

O Checkout deve estar no modo `subscription` para configurar uma âncora de ciclo de faturamento.

### Configurar o comportamento proporcional

É possível configurar o gerenciamento do período entre a criação da assinatura e a primeira data da fatura completa usando o parâmetro `proration_behavior`. O Checkout não aceita a combinação de uma avaliação com a âncora do ciclo de faturamento.

- Mantenha a configuração `create_prorations` padrão para permitir que a Stripe fature imediatamente o cliente para o período entre a data da assinatura e a primeira data da fatura completa.
- [Desative o pro rata](https://docs.stripe.com/payments/checkout/billing-cycle.md?ui=embedded-page#disable-prorations) definindo `proration_behavior` como `none`, tornando o período inicial gratuito (até a primeira data de faturamento integral). Esta ação não gera nenhuma fatura até o primeiro período de cobrança.

> Não é possível usar preços avulsos em sessões do Checkout quando `proration_behavior` for `none`.

## Alterar o período de cobrança das assinaturas existentes

Use a [API Subscriptions](https://docs.stripe.com/api/subscriptions/update.md) ou o [Dashboard](https://dashboard.stripe.com/subscriptions) para alterar a data de faturamento de uma assinatura existente usando uma das seguintes opções:

- Redefina a âncora do ciclo de faturamento para a hora atual.
- Adicione uma [avaliação gratuita](https://docs.stripe.com/billing/subscriptions/trials/free-trials.md) para definir automaticamente a data âncora para o final da avaliação. As avaliações normalmente começam quando você cria uma assinatura, mas também é possível aplicá-las a assinaturas existentes, permitindo creditar o cliente pelos dias restantes no ciclo anterior que ele já pagou.

A data do ciclo de faturamento muda nesses cenários. No entanto, se você criar ou atualizar uma assinatura com `billing_mode[type]=flexible`, a âncora do ciclo de faturamento permanece inalterada. Saiba mais sobre a [configuração do modo de faturamento flexível](https://docs.stripe.com/billing/subscriptions/billing-mode.md).

- Se todos os preços forem de valor zero, adicionar um ou mais preços pagos zera imediatamente o período de cobrança. Consulte o [guia para alterar preços de assinatura](https://docs.stripe.com/billing/subscriptions/change-price.md#handle-zero-amount-prices-and-quantities) para obter mais informações.
- O `billing_cycle_anchor` é redefinido para a data [cancel_at](https://docs.stripe.com/api/subscriptions/object.md#subscription_object-cancel_at) ao criar uma assinatura com `cancel_at` definida para uma data anterior à próxima renovação da assinatura ou ao modificar uma data `cancel_at` existente em uma assinatura com `billing_cycle_anchor` no futuro da nova data `cancel_at`.
- O `billing_cycle_anchor` é redefinido para o horário atual quando muda para um preço com [recurring.interval](https://docs.stripe.com/api/prices/object.md#price_object-recurring) diferente.

### Redefinir o período de cobrança para a hora atual

Para redefinir a âncora do ciclo de cobrança para o horário atual, faça uma solicitação de atualização com `billing_cycle_anchor` definido como `now`. Isso define a âncora do ciclo de faturamento para o momento da solicitação de atualização. Depois de redefinir a âncora do ciclo de faturamento, a Stripe envia imediatamente uma fatura. [Ative a cobrança pro rata](https://docs.stripe.com/api/subscriptions/create.md#create_subscription-proration_behavior) para creditar o cliente pelos dias já pagos no período anterior. Desativar a cobrança pro rata pode resultar em cobrança a mais do seu cliente.

> **Comportamento do modo flexível:** Se a sua assinatura usar `billing_mode[type]=flexible`, redefinir a âncora do ciclo de faturamento para `now` não gerará automaticamente uma nova fatura. Para gerar uma fatura ao redefinir o BCA, você também deve definir `proration_behavior` como `always_invoice`.
> 
> Exceção: Se você também alterar os itens da assinatura junto com a redefinição de BCA, de modo que os rateios não sejam totalmente cancelados, a Stripe gerará uma fatura imediatamente, independentemente de `proration_behavior`.

#### API

Chame [atualizar a assinatura](https://docs.stripe.com/api.md#update_subscription), definindo `billing_cycle_anchor` como `now` e `proration_behavior` como `create_prorations` para evitar cobrar a mais do cliente os dias que ele já pagou no ciclo anterior.

```curl
curl https://api.stripe.com/v1/subscriptions/{{SUBSCRIPTION_ID}} \
  -u "<<YOUR_SECRET_KEY>>:" \
  -H "Stripe-Version: 2026-08-26.dahlia" \
  -d billing_cycle_anchor=now \
  -d proration_behavior=create_prorations
```

#### Dashboard

1. Em [Assinaturas](https://dashboard.stripe.com/subscriptions), clique no menu de navegação ⋯ e selecione **atualizar assinatura**.
2. Role até **Opções avançadas** e selecione **Redefinir o ciclo de faturamento**.
3. Selecione a opção **Alterações proporcionais** para evitar cobranças em excesso para os dias já pagos do ciclo anterior.
4. Clique em **Atualizar assinatura**.

### Alterar o período de cobrança usando um período de teste

Você pode alterar a âncora do ciclo de faturamento usando uma [avaliação gratuita](https://docs.stripe.com/billing/subscriptions/trials/free-trials.md) para definir automaticamente a data âncora do ciclo de faturamento como a data de `trial_end`.

Por exemplo, se um cliente tiver uma assinatura ativa originalmente definida para ser cobrada em 23 de julho e, em 15 de julho, você introduzir um período de teste que termina em 1º de agosto:

- O cliente recebe uma fatura de US$ 0 em 15 de julho. Ele já pagou até 23 de julho no ciclo anterior, então o período “gratuito” aplica-se apenas entre 24 e 31 de julho.
- O cliente não é cobrado em 23 de julho.
- O novo ciclo cobrado em 1º de agosto é um ciclo completo na tarifa normal e, depois disso, será cobrado novamente no 1º dia de cada mês.

Opcionalmente, você pode impedir o rateio ao atualizar uma assinatura para iniciar um teste usando `proration_behavior=none`. Na maioria dos casos, se você estiver usando o período de teste para alterar o período de cobrança sem emitir uma fatura rateada, desative o rateio porque a duração do período de teste contabiliza a parcela já paga do período de cobrança anterior.

#### API

Chame [assinatura de atualização](https://docs.stripe.com/api.md#update_subscription), definindo `trial_end` como um carimbo de data e hora do Unix que representa a data final do teste e `proration_behavior` como `none`. Definir o `trial_end` define a âncora do ciclo de faturamento para a mesma data.

```curl
curl https://api.stripe.com/v1/subscriptions/{{SUBSCRIPTION_ID}} \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d trial_end=1627801200 \
  -d proration_behavior=none
```

#### Dashboard

1. Na página [Subscriptions](https://dashboard.stripe.com/subscriptions), encontre a assinatura que deseja atualizar.
2. Clique em **Atualizar assinatura**.
3. Clique em **Adicionar avaliação** e insira o número de dias da avaliação. O final da avaliação se torna a nova data de âncora do ciclo de faturamento.
4. Desmarque o botão de alternância **Alterações proporcionais** para evitar creditar o cliente em dias já pagos.
5. Clique em **Atualizar assinatura**.

## Cobrança por uso

Com a [cobrança por uso](https://docs.stripe.com/products-prices/pricing-models.md), o preço pago pelo cliente varia de acordo com o consumo durante o período de cobrança. Quando a alteração do período de sobrança resulta no término antecipado do período de serviço de uma assinatura, você cobra do cliente o uso acumulado durante o período de cobrança reduzido.

### Limites

Além do ciclo regular, é possível configurar assinaturas para cobrar sempre que o valor devido atingir um [limite](https://docs.stripe.com/billing/subscriptions/usage-based/thresholds.md).

Se você tiver uma assinatura configurada para faturar dessa forma, poderá configurá-la para redefinir o período de serviço da assinatura quando atingir o limite.

## See also

- [Usar períodos de avaliação](https://docs.stripe.com/billing/subscriptions/trials/free-trials.md)
- [Atualizar assinatura](https://docs.stripe.com/api.md#update_subscription)
- [Use clocks de teste para a prévia de faturas.](https://docs.stripe.com/billing/testing/test-clocks.md)
