Bill payments
Record payments against vendor bills, handle foreign currency conversions, track forex gain or loss, and generate journal entries automatically
Bill payments
Use the bill payment page to record payments against vendor bills, compare exchange rates for foreign currency bills, and create balanced journal entries automatically.
Table of contents
- Bill summary card
- Payment date
- Payment amount
- Foreign currency section
- Forex gain or loss
- Payment account
- Balance validation
- TDS deducted
- Payment reference
- Banking channel requirement
- Journal entry
- Tips
- Related articles
Bill summary card
A read-only card at the top shows the key details of the bill you are paying.
| Field | Description |
|---|---|
| Bill Number | The vendor's invoice identifier |
| Vendor | Name of the vendor |
| Total Amount | Full bill amount in the bill's currency, with INR equivalent for foreign currency bills |
| Already Paid | Sum of previous payments recorded against this bill |
| Balance Due | Remaining amount to pay, with approximate INR equivalent for foreign currency bills |
Payment date
Select the date the payment was made using the calendar picker. The date defaults to today. For foreign currency bills, the exchange rate auto-updates when you change the payment date.
Payment amount
Enter the amount you are paying in the bill's currency. The field defaults to the full balance due. You cannot enter more than the outstanding balance.
For domestic (INR) bills, this is the only amount field you need to fill in. For foreign currency bills, see the foreign currency section below.
Foreign currency section
This section appears only when the bill is in a non-INR currency (USD, EUR, GBP, etc.). A blue panel shows:
Exchange rate comparison
| Column | Description |
|---|---|
| Original Rate (Bill Date) | The rate recorded when the bill was saved, shown as read-only |
| Current Rate (Payment Date) | The rate for the payment date, auto-fetched and editable |
Expected INR vs actual INR paid
| Field | Description |
|---|---|
| Expected INR (at current rate) | Calculated from the foreign amount multiplied by the current rate, shown as read-only |
| Actual INR Paid | The actual rupee amount debited from your bank account — enter this from your bank statement |
The actual INR paid may differ from the expected amount due to bank charges, rate differences, or rounding.
Forex gain or loss
When the actual INR paid differs from the amount calculated at the original bill rate, a gain or loss indicator appears:
- Green (gain) — you paid less in INR than originally booked. The vendor's currency weakened against INR.
- Red (loss) — you paid more in INR than originally booked. The vendor's currency strengthened against INR.
The indicator shows the absolute gain or loss amount, along with the original booked value and the actual amount paid.
Payment account
Select the bank, cash, or credit card account the payment was made from. The dropdown shows all payment accounts in your Chart of Accounts with their account code and name. Credit card accounts are labelled with "(Credit Card)".
This field is required — you cannot record a payment without selecting an account.
Balance validation
After you select a payment account, the system checks whether the account has sufficient balance to cover the payment.
| Alert type | Condition | What happens |
|---|---|---|
| Warning | Balance is low but not blocked | A yellow alert appears. You can proceed, but the account may go negative. |
| Blocked | Balance validation is set to block | A red alert appears and the Record Payment button is disabled. |
Balance validation behaviour depends on your settings. See Balance validation for configuration options.
TDS deducted
If you deducted TDS on this payment, enter the amount in the TDS Deducted field. This is optional — leave it at zero if TDS does not apply.
Payment reference
Enter a reference number for the payment — for example, an NEFT reference, RTGS UTR, or cheque number. This field is optional but recommended for reconciliation.
Banking channel requirement
When the INR amount exceeds 20,000, a blue information banner appears:
Payments above INR 20,000 must be made through banking channels (NEFT/RTGS/Cheque) as per Section 40A(3).
Cash payments above this threshold are disallowed under the Income Tax Act and may not be claimed as a business expense.
Journal entry
When you click Record Payment, the system creates a journal entry automatically:
| Line | Account | Debit | Credit |
|---|---|---|---|
| 1 | Accounts Payable (vendor) | Payment amount | — |
| 2 | Bank / Cash account | — | INR amount paid |
| 3 | Forex Gain (if applicable) | — | Gain amount |
| 4 | Forex Loss (if applicable) | Loss amount | — |
Lines 3 and 4 appear only for foreign currency bills when the actual INR paid differs from the amount at the original booked rate.
Tips
- Check your bank statement first. Enter the exact INR amount from the statement in the Actual INR Paid field so the journal entry matches your bank records.
- Override the exchange rate if needed. The auto-fetched rate is based on the payment date. If your bank applied a different rate, edit the Current Rate field.
- Record partial payments. You do not need to pay the full balance at once. Each payment is tracked separately, and the bill balance updates automatically.
- Add a reference number. Including the NEFT/RTGS reference makes bank reconciliation faster.
Related articles
- Save Expense — Upload a bill, categorize expenses, and create a journal entry
- AI Bill Categorization — Extract bill data using AI and review confidence scores
- Bill-to-Journal Linking — How saved bills connect to journal entries
- Bill debit and credit notes — Issue debit or credit notes to adjust bill balances
- Balance validation — Configure balance checks for payment accounts
- Chart of Accounts — Set up bank and expense accounts