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

# Statement Statuses

> A quick reference for the Statement statuses in fusionCore — what each status means, what's editable, and what's allowed while a Statement is in it.

## Overview

A Statement moves through several statuses as its linked Orders get paid. The table below is a quick reference for what each status means and what you can do while a Statement is in it.

## Status Capability Table

| **Status** | **Purpose** | **Link/Unlink Orders** | **Edit Settings** | **Accepts Payment** | **Can Cancel** |
| - | - | - | - | - | - |
| Draft | The Statement is brand new and not yet ready to send. This is the default status on save. | ✅ | ✅ | ✅ | ❌ |
| Open | The Statement is set up and ready — Orders can still be added or removed. | ✅ | ✅ | ✅ | ✅ |
| Pending Payment | The Statement is locked and awaiting its first payment. Account, Contact, Business Unit, Statement Date, and Customer Type are frozen. | ❌ | ❌ | ✅ | ✅ |
| Partial Payment Received | The Statement has been partially paid. The same fields stay frozen as Pending Payment. | ❌ | ❌ | ✅ | ✅ |
| Payment Received | The entire balance due has been paid. Address fields and the address override flag are also frozen. | ❌ | ❌ | ❌ | ❌ |
| Cancelled | The Statement is closed out. This status is terminal. | ❌ | ❌ | ❌ | ❌ |

> [!NOTE]
>
> Refunding isn't gated by the Statement's status — it's gated by the Statement Financial Event you're refunding. That event must be a Payment-type event in **Succeeded** status with a remaining refundable amount, and every Order it paid must be **Activated**. A Statement with a qualifying payment event can be refunded even after it's Cancelled. See [Refunding a Statement](https://docs.fusioncore.us/end-user-guides/orders/statements/refunding-a-statement.md).

## Automatic Transitions

fusionCore moves a Statement between statuses on its own as money moves:

* **Balance paid off** — a payable Statement (Draft, Open, Pending Payment, or Partial Payment Received) automatically becomes **Payment Received** once its balance due reaches zero or below.
* **Partial payment received** — a payable Statement automatically becomes **Partial Payment Received** once it's been paid in part.
* **Refund reverts the status** — refunding a Statement out of Payment Received moves it back to **Partial Payment Received** if some payment is retained, or back to **Pending Payment** if the full amount is refunded. See [Refunding a Statement](https://docs.fusioncore.us/end-user-guides/orders/statements/refunding-a-statement.md).

## Manual Status Changes

These quick actions on the Statement record move it between statuses deliberately.

### Set Statement Status to Open

Moves the Statement back into Open so you can edit it or change its linked Orders again.

* Available from Draft, Pending Payment, or Partial Payment Received. From any other status: `This statement can only be opened from Draft, Pending Payment or Partial Payment Received status.`
* Requires at least one linked Order: `Cannot change statement status: no orders are linked to this statement.`
* Requires Business Unit, Statement Date, Customer Type, Account, and Contact to all be populated.

### Set Statement Status to Pending Payment

Locks the Statement for payment.

* Available from Open only: `This statement can only be locked from Open status.`
* Activates any linked Invoice-type Order that hasn't been activated yet.
* If you check **Generate Invoices for quote orders** in the dialog, converts every linked Quote-type Order to an Invoice, using the invoice date and payment term you specify.
* Any Quote-type Order you don't convert still moves to **Pending Payment** status on the Order itself.

### Cancel Statement

Available from Open, Pending Payment, or Partial Payment Received: `This statement can only be cancelled from Open, Pending Payment or Partial Payment Received status.` fusionCore asks you to confirm: `Are you sure you want to cancel this statement?`

> [!WARNING]
>
> **Cancelling a Statement is permanent.** Cancelled is a terminal status — trying to change it further returns `Cannot change statement status: Statement is cancelled.` Cancelling stamps the Statement's cancellation date and releases the lock on every Order it was preventing individual payment on. That release runs asynchronously, so give it a moment before you check that a previously locked Order can be paid directly again.

## Limitations and Common Pitfalls with Statement Statuses

* **Creation only happens in Draft or Open.** A Statement can't be created directly into any other status: `Cannot create statement: invalid Statement Status.`
* **Locked fields differ by status.** Pending Payment and Partial Payment Received freeze the customer and Business Unit fields; Payment Received and Cancelled additionally freeze the address fields. Trying to edit a frozen field returns `You cannot change the following field(s) in the Statement's current status: {0}.`
* **Entering Open or Pending Payment needs a full customer.** Business Unit, Statement Date, Customer Type, Account, and Contact must all be set — a Draft Statement is more lenient and can even be paid without a customer set, so don't rely on Draft behavior once you try to move the Statement forward.


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