> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bolta.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Amendment Types

> How each type of tax invoice amendment works, with calculation examples.

## Cancellation of Contract

An amendment for the Cancellation of Contract reason carries only the single `date` (write date) field, and works by **offsetting the original issuance**.

**Example**

| Category                           | Amount          |
| ---------------------------------- | --------------- |
| Original tax invoice               | KRW 50,000      |
| Cancellation of Contract amendment | **KRW -50,000** |

<Warning>
  If the item supply cost of the original tax invoice is negative, a Cancellation of Contract amendment is not allowed.
</Warning>

## Change in Supply Cost

An amendment for the Change in Supply Cost reason **carries, as items, how much (+) or (-) the amount changed relative to the original**.

For example, if you overstated an item's unit price by KRW 1,000, you issue it as -1,000.

<Info>
  The item input limits for a Change in Supply Cost amendment are the same as for standard issuance. There must be between 1 and 16 items, and the item specification (`items[].specification`) is up to 60 characters. You must also pass the tax type (`taxType`), and the tax (`items[].tax`) input rules are the same as for standard issuance.
</Info>

| Tax type (`taxType`) | Item tax (`items[].tax`)   |
| -------------------- | -------------------------- |
| `TAXABLE`            | Pass a non-`null` value    |
| `ZERO_RATE`          | Pass `0` for every item    |
| `TAX_FREE`           | Pass `null` for every item |

### Calculation example

**Original tax invoice**

| Item name   | Unit price (unitPrice) | Quantity (quantity) | Supply cost (supplyCost) | Tax (tax) | Amount (supplyCost + tax) |
| ----------- | ---------------------- | ------------------- | ------------------------ | --------- | ------------------------- |
| First item  | 5,000                  | 10                  | 50,000                   | 5,000     | 55,000                    |
| Second item | 3,000                  | 50                  | 150,000                  | 15,000    | 165,000                   |

**Change in Supply Cost amendment invoice** (carrying the difference)

| Item name   | Unit price (unitPrice) | Quantity (quantity) | Supply cost (supplyCost) | Tax (tax) | Amount (supplyCost + tax) |
| ----------- | ---------------------- | ------------------- | ------------------------ | --------- | ------------------------- |
| First item  | **-1,000**             | 10                  | -10,000                  | -1,000    | -11,000                   |
| Second item | **-1,000**             | 50                  | -50,000                  | -5,000    | -55,000                   |

**Final transaction amount**

| Item name   | Unit price (unitPrice) | Quantity (quantity) | Supply cost (supplyCost) | Tax (tax) | Amount (supplyCost + tax) |
| ----------- | ---------------------- | ------------------- | ------------------------ | --------- | ------------------------- |
| First item  | 4,000                  | 10                  | 40,000                   | 4,000     | 44,000                    |
| Second item | 2,000                  | 50                  | 100,000                  | 10,000    | 110,000                   |

## Double Issuance by Mistake

An amendment for the Double Issuance by Mistake reason is called without any additional request parameters, and works by **offsetting the original issuance**.

Unlike Cancellation of Contract, you do not pass a write date separately; **the write date of the original tax invoice is applied automatically**.

**Example**

| Category                             | Amount          |
| ------------------------------------ | --------------- |
| Original tax invoice                 | KRW 50,000      |
| Double Issuance by Mistake amendment | **KRW -50,000** |
