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

> ## Agent Instructions
> Omnivoo is an India-first Employer of Record (EOR) platform. EOR hiring is India only; contractors are supported in 220+ countries and territories.
> Never tell a user to log in with a password. Authentication is passwordless: email OTP, passkeys, Google, or SSO.
> Statutory figures (TDS slabs, PF, ESI, Professional Tax, gratuity) change by financial year. Always state the year the figure applies to.
> Never name a third-party payment provider as Omnivoo’s payment rail. Refer to "our payments partner".

# The Payroll Run Detail Page

> See what a payroll run costs, where the money is, and what each person was paid, and approve, pay or discard it.

Every payroll run has its own page at `/employer/pay/runs/:id`. It shows what the run costs you, where the money is right now, and what each person on it gets paid. It's also where you approve a run, pay its invoice and discard a draft.

## Getting there

Open **Pay**, then:

* Click any run in the recent runs list, or
* Click **View History** and pick a run from [Payroll History](/payroll/payroll-history).

You also land here right after you create a run.

## Header

The header shows the run's name, its status, and a line with the period, the pay date and the run type (Regular, Off-cycle, Correction or Final pay). For what each status means, see [Payroll Statuses Explained](/payroll/payroll-statuses).

On the right is the one thing to do next:

| When | The button |
| - | - |
| A draft you can approve | **Approve and generate invoice** |
| A draft that needs someone else's approval | **Submit for approval** |
| Waiting for your approval | **Approve and generate invoice** |
| Approved, with no invoice yet | **Generate invoice** |
| Invoiced | **View invoice**, which downloads the invoice |

Everything else is in the **⋯** menu next to it:

* **Edit** reopens the run flow on this draft. Saving updates the same run.
* **Rename** lets you change the run's name.
* **Download salary register** downloads a CSV with a row per person: gross, each deduction, what you pay on top, net pay, status, payment date, payment mode, UTR, and why a payment failed.
* **Send back** (approvers) returns a pending run to draft with what needs to change. We email the reason to everyone who runs payroll.
* **Withdraw** takes your own pending run back to draft.
* **Discard** asks for a reason. The run is kept, marked **Discarded**, and can't be paid. Any adjustments it held go back to your adjustments list.

Once the invoice exists, the run can't be discarded here. The header says "The invoice for this payroll exists, so to cancel it now, contact support."

## Needs your attention

Before the run is invoiced, a **Needs your attention** card lists anything worth checking:

* someone who sent the run back, and why
* anyone without a bank account, who won't be paid until they add one. When you approve, we name them again and ask before anything is invoiced. **Approve anyway** pays everyone else, and their pay goes out once they add bank details
* anyone who hasn't signed their offer letter. They're still paid for the work, so ask them to sign it from their account
* anyone whose gross moved 10% or more against last month
* a reminder that rates are live until you approve (see [When your exchange rate is set](#when-your-exchange-rate-is-set))

## Payouts that failed

If a salary didn't reach someone's bank, a red **Payouts that failed** card at the top names each person and the reason, for example "Rahul Verma wasn't paid: Account closed". The money stays with Omnivoo, and we pay it again once their bank details are fixed. We email them and you when this happens.

## Where the money is

Once the run is invoiced, five steps show where the money is, with the date each one happened:

**Approved → Payment received → Funds in India → Paying employees → Paid**

The step in progress is outlined. If a payout fails, **Paying employees** turns red and says how many failed. On a phone the steps run top to bottom.

## Paying the invoice

While the invoice waits for your money, the page shows **Pay \[amount] by bank transfer**, with every detail you need: amount, reference, bank, account holder and the account fields for your currency. Each line has a **Copy** button.

Send it as soon as you can so everyone is paid on the pay date. Bank transfers take 1 to 3 business days to arrive. Use the reference so we can match your payment. Then click **I've sent the payment**. You can also pay from [Billing](/billing/paying-invoices).

**Payment received** is only marked once we've confirmed the money arrived, not when you tell us it's sent. We email you when it arrives.

## What it costs

The **Total to pay** card (**Total paid** once your payment arrives) is split into the parts that make up your invoice, in your invoice currency:

* **Salaries**, with the rupee amount and the rate next to it, for example "₹3,97,000 at 1 USD = ₹83.47"
* **Additions**, when there are any
* **Employer contributions**, for employees whose PF, ESI, gratuity, EDLI and LWF are on top of salary, and what a CTC doesn't carry: PF and EDLI in a part month, LWF, and ESI on a bonus
* **Health insurance**, when anyone on the run is covered
* **Omnivoo fee**
* **Transaction fee**
* **Wallet credit**, when a credit from your [Wallet](/billing/wallet) was used
* **Total**

Next to it: the pay date (or the date it was paid, and how many people were paid), the number of employees, and total net pay and deductions in rupees.

### When your exchange rate is set

If your employees are paid in a different currency from the one you're billed in, the run has to be converted.

* **Before you approve**, the total is an **Estimate** at today's rate, and it moves with the market.
* **When you approve**, the rate locks on the invoice. That's the amount you pay.
* **When the money converts**, the card says the rate it actually converted at. Any difference goes to your [Wallet](/billing/wallet): a credit when it's in your favour, or an amount added to your next invoice when it isn't.

## Employees

The **Employees** table lists everyone on the run in rupees: days paid, gross, deductions, net pay and status, with a totals row at the bottom. Under a name you may see how their gross moved against last month, for example "↑ 8% vs July", or **New this month**. Click a name to open their profile.

**Days paid** says how much of the period each line pays for. Someone who worked the whole month reads **31 of 31**; someone who joined on the 20th reads **12 of 31** and is paid for those days only. Someone who leaves mid-month is prorated the same way, and anyone whose start date falls after the period is not on the run at all. A run created before Omnivoo counted the days reads **Full month**.

The status says where each person's pay is:

| Status | Meaning |
| - | - |
| **Paid** and a date | The salary reached their bank |
| **On the way** | The payment has been sent |
| **Not paid yet** | Nothing has been sent yet |
| **No bank account** | They need to add bank details before they can be paid |
| **Failed** | The payment didn't go through. The reason is underneath |

Click a row to see what the month is made of:

* **Earnings**: basic, HRA and allowances, plus any additions
* **Deductions**: TDS, PF, ESI, Professional Tax and anything else taken out
* **You pay on top**: employer PF, employer ESI, gratuity and other employer contributions, once the month is paid
* how the salary was paid (payment mode, UTR and time), or why it failed
* a **Payslip** download, once the payslip is ready

## Statutory filings

For a regular monthly run, **Statutory filings** lists what that month's deductions owe, once the run is paid:

| Filing | Due |
| - | - |
| PF | 15th of the next month |
| ESI | 15th of the next month |
| TDS | 7th of the next month, or 30 April for March |
| Professional Tax | 31 March, one Maharashtra return for the year |
| Labour Welfare Fund | 15 July for June, 15 January for December |

A filing only appears when the run deducted it, so there's no PF line before our establishment reaches 20 employees. Each one shows when it's due or when it was filed, its reference (for example the PF TRRN or the TDS challan) and, when available, a download. Omnivoo files these for you.

## History

**History** lists who submitted the run for approval, sent it back (with their reason), withdrew it, approved it or discarded it, and when.

## AI analysis

While a run is a draft, pending approval or approved, an **AI Payroll Analysis** panel lets you check it for anomalies before you approve. See [AI Payroll Analysis](/payroll/ai-payroll-analysis).


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