---
title: "Update a future invoice"
method: PUT
path: "/billing/futureinvoices"
---

# Update a future invoice

`PUT /billing/futureinvoices`

## Request

- Base URL: `https://api-sandbox.ezypay.com/v2`
- URL: `https://api-sandbox.ezypay.com/v2/billing/futureinvoices`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://identity-sandbox.ezypay.com/token`

Update the future invoice.

## Headers

- `merchant` string, required

## Request body

- object
  - `subscriptionId` string, required: Auto-generated unique identifier of the subscription.
  - `cycleStartDate` string, required: The billing cycle start date. Supported format is YYYY-MM-DD.
  - `date` string, required: The date the invoice will be issued to the customer. New date must be within `cycleStartDate` and `cycleEndDate` but cannot be today's date or more than one year (365 days) after the `cycleStartDate`. Supported format is YYYY-MM-DD.
  - `items` object[]: Details of the individual items that are included in the future invoice. Max of 255 characters.
    - `type` string: Specifies the payment type of the future invoice. Supported values are: `subscription_payment` - Updates the original payment invoice item. If not specified, then the amount will remain unchanged as defined in the original subscription. `addon_payment` - Generates an additional payment invoice item in addition to the subscription. If not specified, then any previously created `addon_payment` invoice items will be removed from the invoice.`setup_payment` - Updates the setup payment invoice item. If not specified, then the `setup_payment` is removed from the invoice. Setup payment changes are only applicable for the first invoice of a subscription. "Default to subscription_payment
    - `amount` object: Amount of the invoice Item
      - `currency` string, required: Three letter ISO 4217 currency code for the amount.
      - `value` number, double, required: The value of the amount. Must be positive value greater than zero.
      - `type` string: The type of the amount value. Supported values are: `percentage`, `fixed_amount`
    - `tax` object: The tax rate applied to this invoice item. If left blank, uses the tax rate specified in the merchant settings by default.
      - `rate` number, double: Rate of the specified tax in percentage. Supported values are from 0 to 99.99.
    - `description` string: The description of the future invoice item.
    - `accountingCode` string: Specify an accounting code to categorise revenue collected from the invoice item. Max of 50 characters.

## Response `200`

200

- object
  - `data` object[]
    - `subscriptionId` string
    - `date` string
    - `cycleStartDate` string
    - `cycleEndDate` string
    - `items` object[]
      - `description` string
      - `amount` object
        - `currency` string
        - `value` integer
        - `type` unknown
      - `tax` object
        - `rate` integer
      - `type` string
      - `accountingCode` string
    - `amount` object
      - `currency` string
      - `value` integer
      - `type` unknown
    - `totalTax` object
      - `currency` string
      - `value` integer
      - `type` unknown
  - `paging` object
    - `nextUrl` unknown
    - `nextCursor` integer
    - `limit` integer
    - `totalCount` integer

## Other responses

- `400`: 400

## Changes

- **2026-11-03** `924be4030f56`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ezypay/apis/vault/changes/billing/futureinvoices/put.md)

---

[API](https://skmtc.dev/ezypay/apis/vault.md) - [All operations](https://skmtc.dev/ezypay/apis/vault/llms.txt) - [OpenAPI document](https://skmtc.dev/ezypay/apis/vault/revisions/924be4030f56?raw)
