---
title: "Update invoice details"
method: PUT
path: "/invoices/{number}"
tags: ["Billing"]
---

# Update invoice details

`PUT /invoices/{number}`

Updates the details of the specified invoice.

## Path parameters

- `number` string, required

## Request body

- UpdateInvoiceRequest
  - `invoiceDate` integer, required
  - `dueDate` integer
  - `note` string
  - `purchaseOrderNumber` string
  - `billingContactId` string
  - `emailNotifiersList` EmailNotifiersList
    - `toIds` string[]
    - `ccIds` string[]
    - `bccIds` string[]

## Response `200`

successful operation

- InvoiceJson
  - `entityId` string
  - `invoiceNumber` string
  - `postedDate` integer
  - `invoiceDate` integer
  - `voidedDate` integer
  - `dueDate` integer
  - `currency` string
  - `paymentTerm` string
  - `totalDiscount` number
  - `subTotal` number
  - `taxTotal` number
  - `taxTransactionCode` string
  - `total` number
  - `subscriptionId` string
  - `accountId` string
  - `resellerAccountId` string
  - `invoiceItems` InvoiceItemJson[]
    - `id` string
    - `planId` string
    - `chargeId` string
    - `orderId` string
    - `orderLineItemId` string
    - `subscriptionChargeId` string
    - `subscriptionChargeGroupId` string
    - `listAmount` number
    - `discountAmount` number
    - `amount` number
    - `taxAmount` number
    - `taxRate` TaxRateJson
      - `id` string, uuid
      - `name` string
      - `description` string
      - `taxPercentage` number
      - `taxCode` string
      - `taxInclusive` boolean
      - `status` 'ACTIVE' | 'DISABLED' | 'EXPIRED', required
      - `inUse` boolean
    - `listUnitPrice` number
    - `sellUnitPrice` number
    - `quantity` integer
    - `drawdownQuantityUsed` integer
    - `drawdownQuantityRemaining` integer
    - `periodStartDate` integer
    - `periodEndDate` integer
    - `isBilled` boolean
    - `functionalListAmount` number
    - `functionalDiscountAmount` number
    - `functionalAmount` number
    - `functionalTaxAmount` number
    - `triggerOn` integer
  - `billingContact` AccountContactJson
    - `id` string — This is a system-generated Account Contact ID
    - `accountId` string, required — Uniquely identifies the Account
    - `firstName` string — First Name of the Contact
    - `lastName` string — (optional) Last Name of the Contact
    - `email` string — Email of the Contact
    - `phoneNumber` string — (optional) Phone Number of the Contact
    - `title` string — (optional) Title of the Contact
    - `address` AccountAddressJson
      - `streetAddressLine1` string — Address Line 1 of the Contact
      - `streetAddressLine2` string — Address Line 2 of the Contact
      - `streetAddressLine3` string — Address Line 3 of the Contact
      - `city` string — City of the Contact
      - `state` string — State Code of the Contact (ISO 3166-2 state/province code). Currently supported for USA, Canada. For instance, for Arizona (USA), set state as AZ (not US-AZ).For British Columbia (Canada), set as BC (not CA-BC)
      - `country` string — Country Code of the Contact ( ISO 3166 alpha-2 country code).
      - `zipcode` string — Zip or Postal Code of the Contact
    - `externalId` string
    - `erpId` string
    - `fullName` string
    - `eventObjectId` string
  - `shippingContact` AccountContactJson
    - `id` string — This is a system-generated Account Contact ID
    - `accountId` string, required — Uniquely identifies the Account
    - `firstName` string — First Name of the Contact
    - `lastName` string — (optional) Last Name of the Contact
    - `email` string — Email of the Contact
    - `phoneNumber` string — (optional) Phone Number of the Contact
    - `title` string — (optional) Title of the Contact
    - `address` AccountAddressJson
      - `streetAddressLine1` string — Address Line 1 of the Contact
      - `streetAddressLine2` string — Address Line 2 of the Contact
      - `streetAddressLine3` string — Address Line 3 of the Contact
      - `city` string — City of the Contact
      - `state` string — State Code of the Contact (ISO 3166-2 state/province code). Currently supported for USA, Canada. For instance, for Arizona (USA), set state as AZ (not US-AZ).For British Columbia (Canada), set as BC (not CA-BC)
      - `country` string — Country Code of the Contact ( ISO 3166 alpha-2 country code).
      - `zipcode` string — Zip or Postal Code of the Contact
    - `externalId` string
    - `erpId` string
    - `fullName` string
    - `eventObjectId` string
  - `status` 'DRAFT' | 'POSTED' | 'PAID' | 'CONVERTED' | 'VOIDED'
  - `purchaseOrderNumber` string
  - `purchaseOrderRequired` boolean
  - `note` string
  - `emailNotifiersList` EmailNotifiersList
    - `toIds` string[]
    - `ccIds` string[]
    - `bccIds` string[]
  - `erpId` string
  - `generationMethod` 'USER_INITIATED' | 'API_INITIATED' | 'BULK_INVOICE_RUN' | 'AUTOMATED_INVOICE_JOB' | 'RULE_DRIVEN_INVOICE_JOB' | 'UNKNOWN'
  - `generatedBy` string
  - `exchangeRateId` string
  - `exchangeRate` number
  - `exchangeRateDate` integer
  - `functionalTotalDiscount` number
  - `functionalSubTotal` number
  - `functionalTaxTotal` number
  - `functionalTotal` number
  - `customFields` object

---

[API](https://skmtc.net/dealhub/apis/quote-api.md) · [All operations](https://skmtc.net/dealhub/apis/quote-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dealhub/quote-api/versions/c30f5b9fbfab/schema)
