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

# Organization Settings

> Configure branding, accounting preferences, email templates, API keys, and audit logs for your DualEntry organization from a single settings page.

Organization Settings is the central configuration hub for your DualEntry account. Changes made here apply across the entire organization and affect all users. Only users with the **Administrator** role can edit these settings.

To access Organization Settings, navigate to **Settings → Organization**.

***

## Branding

The **Profile** tab controls how your organization appears on customer-facing documents such as invoices, receipts, and purchase orders.

### Logo

Upload your company logo to display it on outgoing documents and emails. Click **Upload logo** to select an image file from your computer. Click **Remove logo** to clear the current logo.

Supported formats: PNG, JPG, SVG. For best results, use a high-resolution image with a transparent background.

### Brand colors

Select a brand color to apply to customer-facing document headers and accents. Choose from the preset color swatches or enter a custom hex value (e.g., `#eff6e0`) in the **Custom color** field. The selected color is highlighted with a dark border.

***

## General preferences

General Preferences controls core accounting behaviors including date handling, account numbering, record editing rules, and discount handling.

### Separate posting and transaction dates

When enabled, the **posting date** and the **transaction date** on a record can differ. The transaction date represents when the economic event occurred; the posting date determines which accounting period the transaction affects.

Disabling this setting locks both dates to the same value, simplifying data entry but removing the flexibility to manage period cutoffs.

### Allow future-dated transactions

When enabled, users can create and post transactions with a date beyond today. This is useful for pre-booking accruals, scheduling recurring entries, or recording events before they are formally processed.

**Maximum Days in the Future** - Sets how many calendar days ahead of today a posting date may be. Valid range: 1-3,650 days. For example, a value of `60` allows posting dates up to 60 days from today.

### Account numbers length

Defines the number of digits used for chart of accounts (COA) account numbers. Valid range: 4-10 digits. The preview updates dynamically as you adjust the length (e.g., a length of `6` shows `100000 · Account Name`).

Changing this setting after accounts have been created does not retroactively reformat existing account numbers.

### Allow modifications to paid or reconciled records

By default, once a record has been paid (invoices, bills, vendor and customer payments) or reconciled against a bank statement, DualEntry locks it against further edits to protect the ledger and preserve the audit trail. Enabling **Allow modifications to paid or reconciled records** relaxes that lock so users with an authorized role can update selected non-financial fields on those records without voiding and reissuing them.

**Fields you can edit when this setting is enabled:**

* Memo and internal notes
* External reference numbers (PO number, vendor reference, customer reference)
* Tags, classifications, and other reporting dimensions that do not drive GL posting
* Attachments (adding new files; existing attachments remain immutable)

**Fields that stay locked regardless of this setting:**

* Amount, quantity, unit price, and any field that changes the record's GL impact
* Transaction and posting dates
* GL account, entity, and currency
* Line items on a record whose payment or reconciliation has cleared

To change a locked field on a paid or reconciled record, you still need to reverse the payment or reopen the reconciliation, then void and reissue the record. See [Voiding and correcting bills](../core-financials/accounts-payable/bill-management#voiding-and-correcting-bills) and [Reconciliation history and audit trail](../core-financials/close-management/bank-reconciliation#reconciliation-history-and-audit-trail).

**Authorized Roles** - Specifies which roles are permitted to make these edits. Click **+** to add roles. By default, only the **Admin** role is authorized. If the setting is disabled, the authorized roles list is ignored and no user (including Admin) can edit paid or reconciled records.

Every edit made under this setting is captured in the [audit trail](./audit-trail-and-compliance) with the user, timestamp, field name, and before/after values, so downstream reviewers and auditors can still see what changed after payment or reconciliation.

<Warning>
  Enabling broad role access here can reduce the integrity of your audit trail. Limit this to roles that genuinely need it, and prefer voiding and reissuing records when the correction affects financial values.
</Warning>

### Order level discounts

Controls how order-level (header) discounts are recorded in the general ledger when applied to invoices or sales orders.

| Option                           | Behavior                                                                                                                                                |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Spread Discount Across Lines** | The discount is distributed proportionally across all line items. No separate discount line appears on the record.                                      |
| **Separate Discount Line**       | The discount is posted as a dedicated line item to a specified **Discount Account**, making it visible as its own line on the invoice and in reporting. |

**Discount Account** - The GL account used to record the discount when **Separate Discount Line** is selected.

***

## Money-In

Customize the email templates sent to customers for invoices, payment receipts, and account statements. Templates support dynamic variables that are automatically replaced with real values when the email is sent.

### Variables

| Variable            | Replaced With                 |
| ------------------- | ----------------------------- |
| `[[company_name]]`  | Your organization's name      |
| `[[customer_name]]` | The recipient customer's name |

### Invoicing

The email sent to a customer when an invoice is issued.

* **Email Subject** - Default: `New invoice from [[company_name]]`
* **Email Message** - Body of the invoice email. Supports bold, italic, underline, strikethrough, links, and headings.

### Customer receipt

The email sent to a customer after a payment is successfully recorded.

* **Email Subject** - Default: `Payment receipt from [[company_name]]`
* **Email Message** - Confirms the payment and includes the receipt as an attachment.

### Customer statement

The email sent when a customer account statement is distributed.

* **Email Subject** - Default: `Statement of account from [[company_name]]`
* **Email Message** - Notifies the customer that their statement is attached.

***

## Purchase orders

Customize the email template sent to vendors when a purchase order is issued.

### Variables

| Variable           | Replaced With               |
| ------------------ | --------------------------- |
| `[[company_name]]` | Your organization's name    |
| `[[vendor_name]]`  | The recipient vendor's name |

### Purchase order email

* **Email Subject** - Default: `New purchase order from [[company_name]]`
* **Email Message** - Notifies the vendor of the new order and references the attached PO document.

***

## Developer access

Manage API keys for programmatic access to your DualEntry organization. API keys authenticate external applications and integrations.

### API key table

| Column        | Description                                                                     |
| ------------- | ------------------------------------------------------------------------------- |
| **Label**     | A descriptive name for the key (e.g., the app or person it was created for)     |
| **API Key**   | The masked key identifier. Only the prefix is visible after creation            |
| **Roles**     | The permission role(s) assigned to this key (e.g., Admin)                       |
| **Status**    | `Active` - valid and usable. `Revoked` - disabled and rejected on all API calls |
| **Last Used** | Most recent date the key authenticated a request                                |
| **Created**   | Date the key was generated                                                      |

### Creating a new API key

Click the **+** icon in the top-right corner of the table to generate a new key. Copy and store the full key immediately. It will not be shown again after the dialog closes.

### Revoking an API key

Click the **⋮** (more options) menu on a key row and select **Revoke**. Revoked keys cannot be re-activated. Create a new key if access needs to be restored.

<Warning>
  Treat API keys like passwords. Do not share them in plain text or commit them to version control.
</Warning>

***

## Activity

The **Activity** tab is a full audit log of every change made to Organization Settings. It records who made a change, when, and what the value was before and after.

### Reading the log

Each entry shows:

* **User** - The name of the user who made the change
* **Timestamp** - The date and time the change was saved
* **Field** - The specific setting that was modified
* **From → To** - The previous value and the new value

**Example:** `Updated Allow Future-Dated Transactions from false to true`

The activity log is read-only and cannot be edited or deleted.

***

## Related

* [User Roles and Permissions](./user-roles-and-permissions) - manage which users can access and edit each area of DualEntry
* [Audit Trail and Compliance](./audit-trail-and-compliance) - organization-wide activity logging beyond Organization Settings
