> ## Documentation Index
> Fetch the complete documentation index at: https://scaleup-c34c4386.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# PATCH /api/v1/subscriptions/:id/billing

> Atualiza a data de vencimento e/ou o valor de uma assinatura ativa

Permite alterar a próxima data de vencimento (`due_date`) e/ou o valor (`amount`) de uma assinatura ativa. A alteração é propagada diretamente para o gateway de pagamentos.

## Autenticação

> [!NOTE]
>
> Requer um token de acesso válido (`CHARGEFY_ACCESS_TOKEN`) no header `Authorization`. Escopos necessários: `web:write` ou `subscriptions:write`.

## Parâmetros de Path

| Parâmetro | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| `id` | `string` | Sim | ID da assinatura |

## Parâmetros do Body

Pelo menos um dos campos abaixo é obrigatório.

| Parâmetro | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| `due_date` | `string` | Condicional | Próxima data de vencimento no formato ISO (`YYYY-MM-DD`) |
| `amount` | `number` | Condicional | Novo valor recorrente em centavos (ex: `4990` para R\$ 49,90). Deve ser positivo |

> [!WARNING]
>
> Somente assinaturas com `status: active`, `trialing`, `unpaid` ou `past_due` podem ter o faturamento atualizado. Assinaturas com cobrança via gateway (`billing_source: zoop_recurrence`) também exigem um `zoop_subscription_id` configurado; assinaturas com cobrança manual (`billing_source: chargefy_manual`) não precisam desse identificador.

## Campos da Resposta

Retorna o objeto completo da assinatura atualizada com `current_period_start` e `current_period_end` recalculados com base na nova data de vencimento.

## Exemplo de Requisição

```bash cURL theme={null}
curl -X PATCH "https://api.chargefy.io/api/v1/subscriptions/sub_1a2b3c4d/billing" \
  -H "Authorization: Bearer $CHARGEFY_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "due_date": "2026-04-15",
    "amount": 4990
  }'
```

```typescript SDK theme={null}
import { Chargefy } from '@chargefy/sdk';

const chargefy = new Chargefy({
  accessToken: process.env.CHARGEFY_ACCESS_TOKEN,
});

const subscription = await chargefy.subscriptions.updateBilling('sub_1a2b3c4d', {
  due_date: '2026-04-15',
  amount: 4990,
});
```

## Exemplo de Resposta

```json theme={null}
{
  "id": "sub_1a2b3c4d",
  "status": "active",
  "customer_id": "cus_9x8y7z",
  "product_id": "prod_abc123",
  "amount": 4990,
  "current_period_start": "2026-03-15T00:00:00Z",
  "current_period_end": "2026-04-15T00:00:00Z",
  "modified_at": "2026-03-20T10:00:00Z"
}
```


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