# Payment Categories

<p class="doc-lead">Payment Categories define the earning components in a pay run — Basic salary, HRA, overtime, leave salary, and custom allowances. Each category maps to ledger accounts and controls how LOP, paid leave, extra payable days, and leave salary are calculated.</p>

<div class="doc-toc">
<p class="doc-toc-title">On this page</p>
<div class="doc-toc-section">
<div class="doc-toc-links">
<a href="#/payroll/payment-categories?id=overview">Overview</a>
<a href="#/payroll/payment-categories?id=quick-start">Quick Start</a>
<a href="#/payroll/payment-categories?id=fields">Fields</a>
<a href="#/payroll/payment-categories?id=seed-data">Default Categories</a>
<a href="#/payroll/payment-categories?id=custom-categories">Custom Payment Categories</a>
<a href="#/payroll/payment-categories?id=behavior-flags">Behavior Flags</a>
<a href="#/payroll/payment-categories?id=how-it-works">How It Works</a>
<a href="#/payroll/payment-categories?id=actions">Actions</a>
<a href="#/payroll/payment-categories?id=faq">FAQ</a>
<a href="#/payroll/payment-categories?id=related">Related</a>
</div>
</div>
</div>

<hr class="doc-section-divider">

<h2 id="overview">Overview</h2>

Go to <b>Payroll → Settings → Payment Categories</b>.

Payment Categories are master data used on every <a href="#/payroll/pay-run">Pay Run</a>, <a href="#/payroll/salary-configuration">Salary Configuration</a>, and <a href="#/payroll/additional-payment">Additional Payment</a>. Use the quick filter tabs and Advanced Filters to find categories by name, account, or behavior flags.

<img src="payroll/images/paymentcategory.webp" alt="Payment Categories list" loading="lazy">

<b>List columns</b>

| **Column** | **Shows** |
|------------|-----------|
| Id | Category reference number. |
| Name | Payment account name. |
| Debit account | Expense or asset account debited on pay-run approve. |
| Reduce Amount for Unpaid Leave (LOP) | Whether LOP days reduce this component. |
| Count Paid Leave as Paid Days | Whether paid leave counts toward earning this component. |
| Applies to extra payable days | Whether the category can receive Extra Payable Days amounts. |
| Status | Active or Suspended. |

<b>Quick filter tabs</b>

| **Tab** | **Shows** |
|---------|-----------|
| Active | Active categories (default). |
| Suspended | Suspended categories. |

<b>Advanced Filters</b>

Id, Name, Description, Debit Account, Reduce Amount for Unpaid Leave (LOP), Count Paid Leave as Paid Days, Applies to leave salary, Applies to extra payable days, Status, and Created Date.

<hr class="doc-section-divider">

<h2 id="quick-start">Quick Start</h2>

<h3>1. Navigate</h3>
Go to <b>Payroll → Settings → Payment Categories</b> and click <b>New</b>.

<h3>2. Fill the form</h3>
Enter <b>Payment account name</b>, select a <b>Debit Account</b> (expense side), and set behavior flags for LOP and paid leave as needed. The credit account defaults to Wages Payable.

<h3>3. Save</h3>
Click <b>Save</b>. The category becomes available on Salary Configuration and Pay Run payment lines.

<img src="payroll/images/new-paymntcatgry.webp" alt="New Payment Category form" loading="lazy">

<hr class="doc-section-divider">

<h2 id="fields">Fields</h2>

| **Field** | **Description** |
|-----------|-----------------|
| Payment account name * | Display name on pay runs and reports. |
| Description | Optional note explaining the category. |
| Debit Account * | Expense or asset account debited when the pay run is approved. |
| Reduce Amount for Unpaid Leave (LOP) | When enabled, LOP days reduce this component's earned amount. Default: on. |
| Count Paid Leave as Paid Days | When enabled, paid leave days count toward earning this component. Default: on for Basic salary; off for most allowances. |
| Applies to leave salary | When enabled, this category is used when encashing leave salary days on a pay run. |
| Applies to extra payable days | When enabled, this category receives amounts from the Extra Payable Days field on a pay run. |

<p>On save, the system records the debit account origin (<b>debitOrigin</b>) for ledger posting. Credit posts to Wages Payable by default.</p>

<hr class="doc-section-divider">

<h2 id="seed-data">Default Categories</h2>

These categories are seeded when a company is created. The basic categories are fixed and should not be deleted.

| **Name** | **Debit Account** | **Credit Account** | **LOP** | **Paid Leave** | **Extra Pay** | **Leave Salary** |
|----------|-------------------|--------------------|---------|----------------|---------------|------------------|
| Basic salary | Expense | Wages Payable | Yes | Yes | Yes | Yes |
| HRA | Expense | Wages Payable | Yes | No | — | — |
| Travel allowance | Expense | Wages Payable | Yes | No | — | — |
| Dearness allowance | Expense | Wages Payable | Yes | No | — | — |
| Expenses | — | Wages Payable | No | No | — | — |
| Wages Payable | — | Wages Payable | No | No | — | — |
| Overtime | Expense | Wages Payable | No | No | — | — |
| Leave Salary | Expense | Wages Payable | No | No | — | — |

<p><b>Notes.</b> The <b>Expenses</b> and <b>Wages Payable</b> categories have no debit account — they are used for expense reimbursements and production-wage payables rather than fixed salary components. The <b>Wages Payable</b> category is excluded from the Default Category for Extra Pay selector in <a href="#/payroll/payroll-settings-config">Payroll Settings</a>.</p>

<hr class="doc-section-divider">

<h2 id="custom-categories">Custom Payment Categories</h2>

The seeded categories cannot be deleted, but you can add custom payment categories for any earning component your region or contracts require. Each custom category maps to a <b>Debit Account</b> (the expense side) while the credit posts to Wages Payable, and you set the behavior flags (LOP, paid leave, extra payable, leave salary) to match how the component should be earned.

<h3>India</h3>

Indian salary structures usually break gross pay into several allowances for tax and compliance purposes:

| **Category** | **Notes** |
|--------------|-----------|
| House Rent Allowance (HRA) | Allowance towards rented accommodation; partly tax-exempt. Seeded by default. |
| Dearness Allowance (DA) | Cost-of-living adjustment, common in government and PSU pay structures. Seeded by default. |
| Conveyance / Transport Allowance | Allowance towards commuting costs. |
| Special Allowance | Balancing component of the salary structure. |
| Medical / Education Allowance | Fixed allowances that may carry tax treatment. |

<p><b>Example scenario — India.</b> A company structures gross salary as Basic + HRA + Conveyance + Special Allowance. HRA and DA are already seeded; create a <b>Conveyance Allowance</b> and a <b>Special Allowance</b> category, each with an expense debit account and <b>Reduce Amount for Unpaid Leave (LOP)</b> enabled so allowances prorate for unpaid days. On pay run approval, each component debits its expense account and credits Wages Payable.</p>

<h3>Middle East</h3>

GCC salary packages are typically split into a basic wage plus statutory and contractual allowances:

| **Category** | **Notes** |
|--------------|-----------|
| Housing Allowance | Common component of GCC packages, often a fixed percentage of basic. |
| Transport Allowance | Allowance towards commuting or provided transport. |
| Cost of Living Allowance (COLA) | Adjustment for living costs in some contracts. |
| Mobile / Communication Allowance | Fixed allowance for phone and communication costs. |
| Leave Salary | Amount paid when annual leave is encashed. Seeded by default. |

<p><b>Example scenario — Middle East.</b> A company in the UAE pays Basic + Housing + Transport allowances. Create a <b>Housing Allowance</b> and a <b>Transport Allowance</b> category with expense debit accounts. Since these gross components feed the Wage Protection System (WPS) file and end-of-service calculations, keep them as distinct categories rather than folding them into Basic. Configure the LOP flag according to whether each allowance should reduce for unpaid days.</p>

<hr class="doc-section-divider">

<h2 id="behavior-flags">Behavior Flags</h2>

| **Flag** | **Effect on pay run calculation** |
|----------|-----------------------------------|
| LOP affected | Unpaid leave (LOP) days reduce the per-day rate applied to this category. Categories without this flag earn the full configured amount regardless of LOP. |
| Paid leave affected | Approved paid leave days are counted as paid days when computing this category's earned amount. |
| Applies to extra payable | Eligible as the target category when <b>Extra Payable Days</b> is entered on a pay run (requires <b>Show Extra Payable Days</b> in settings). |
| Applies to leave salary | Eligible for leave encashment when <b>Leave Salary Days</b> is entered (requires <b>Show Leave Salary Days</b> in settings). |

<hr class="doc-section-divider">

<h2 id="how-it-works">How It Works</h2>

<ul>
<li><b>Salary Configuration</b> — Each employee's <a href="#/payroll/salary-configuration">Salary Configuration</a> links payment categories to monthly or daily amounts. LOP and paid-leave flags on the category determine how attendance affects each line.</li>
<li><b>Pay Run posting</b> — On approve, each payment line debits the category's expense account and credits Wages Payable.</li>
<li><b>Production wages</b> — Approved production wages post through the Wages Payable category. See <a href="#/payroll/production-wage">Production Wage</a>.</li>
<li><b>Overtime</b> — OT amounts from <a href="#/payroll/overtime-entry">Overtime Entry</a> or attendance typically use the Overtime category.</li>
</ul>

<img src="payroll/images/paymentlines.webp" alt="Payment lines on pay run" loading="lazy">

<hr class="doc-section-divider">

<h2 id="actions">Actions</h2>

<b>List header:</b> <b>New</b>

| **Action** | **Description** |
|------------|-----------------|
| View | Opens the category in read-only view |
| Edit | Opens the edit form |
| Delete | Removes the category when not referenced |
| Suspend / Activate | Disables or re-enables the category |

<b>Form buttons:</b> <b>Save</b> / <b>Update</b>, <b>Reset</b>, <b>Cancel</b>

<hr class="doc-section-divider">

<h2 id="faq">FAQ</h2>

<p><b>Why can't I change the credit account on the form?</b><br>Credit account is fixed to Wages Payable in the UI. All salary payables accumulate there until cleared by a payment voucher.</p>

<p><b>Which category should I use for production wages?</b><br>Use the seeded <b>Wages Payable</b> category. Enable production wages in <a href="#/payroll/payroll-settings">Payroll Settings</a> first.</p>

<p><b>Can I create a category that is not reduced by LOP?</b><br>Yes. Turn off <b>Reduce Amount for Unpaid Leave (LOP)</b>. The Overtime and Expenses categories are seeded this way.</p>

<p><b>What is Applies to extra payable days?</b><br>When enabled, the category appears in Payroll Settings <b>Default Category for Extra Pay</b> and on pay-run extra payable day lines.</p>

<p><b>Can I delete a seeded payment category?</b><br>Seeded categories (Basic, HRA, Wages Payable, Overtime, etc.) cannot be deleted. Add custom categories for new components.</p>

<p><b>Why is the Expenses category shown on pay run?</b><br>The Expenses category is for expense reimbursements pulled from approved <a href="#/payroll/expense-claim">Expense Claims</a> — not for salary earnings.</p>

<p><b>Do payment categories control GL accounts on pay run?</b><br>Each category maps debit/credit accounts. Wages Payable accumulates net salary until cleared by payment voucher.</p>

<hr class="doc-section-divider">

<h2 id="related">Related</h2>

<ul>
<li><a href="#/payroll/deduction-categories">Deduction Categories</a></li>
<li><a href="#/payroll/salary-configuration">Salary Configuration</a></li>
<li><a href="#/payroll/pay-run">Pay Run</a></li>
<li><a href="#/payroll/payroll-settings-config">Payroll Settings (detailed)</a></li>
</ul>
