Skip to content
Kapda StockDocs

Invoices

Find, issue, collect, dispatch and correct invoices — draft vs issued invoices, payment status, PDFs, WhatsApp/SMS/email dispatch, Razorpay links, e-invoicing and credit notes.

Invoices (/app/invoices) lists every bill your business has raised — from POS, from a converted quotation or from a sales order — and is where you collect what is still owed, send bills to customers and start returns.

Everyone can view invoices. Issuing, recording payments, editing drafts and returns need the Manager role or above.

Where invoices come from#

SourceArrives as
POS saleIssued immediately (stock deducted, payment recorded).
QuotationConvert to invoiceA DRAFT with the quoted lines.
Sales order → convertA DRAFT with the order lines.

A DRAFT is not a bill yet: it has not deducted stock, is not on the customer's ledger, cannot be paid, dispatched or returned, and shows DRAFT — not issued instead of a payment status.

The list#

  • Search by invoice number or customer name.
  • Filter by payment status: Paid, Partially paid, Unpaid (or all).
  • Choose 10 / 25 / 50 rows per page; use ← Prev / Next → to page.
ColumnShows
InvoiceThe invoice number, for example INV-2026-0042 (the format is set in Invoicing settings).
CustomerCustomer name, or Walk-in.
DateDate of the invoice (IST).
TotalGrand total including GST.
PaymentPAID, PARTIALLY PAID or UNPAID; for part-paid bills the amount still due; and the payment methods used (for example CASH + UPI).
ActionsSee below.

Actions on an invoice#

ActionAvailable whenWhat it does
PDFAlwaysDownloads the full GST invoice PDF using your invoice template.
Issue & collectDraftIssues the invoice (see below).
Record paymentIssued and not fully paidRecords money received against this invoice.
DispatchIssued, has a customerSends the invoice by WhatsApp, SMS and email at once.
⋯ → Edit invoiceDraftChange lines, discount, due date and notes.
⋯ → PDF receiptAlwaysDownloads a compact receipt PDF.
⋯ → Thermal receipt (80mm)AlwaysDownloads the 80 mm receipt preview.
⋯ → Razorpay pay linkIssued and not fully paidCreates an online payment link.
⋯ → Check paymentIssued and not fully paidAsks Razorpay whether the link has been paid.
⋯ → Generate IRN (e-invoice)IssuedStores an IRN on the invoice — read E-invoice (IRN) first: the IRN is not registered with the government portal.
⋯ → Full or partial returnIssuedStarts a sale return.

Issue a draft invoice#

  1. Click Issue & collect on the draft.
  2. The dialog shows invoice number · customer · ₹amount due and explains: Issuing deducts stock, posts the customer ledger and makes this a real bill.
  3. Enter the Amount received ₹ (or click Full ₹amount), choose the method — CASH, UPI, CARD, BANK_TRANSFER or CHEQUE — and optionally a Txn / cheque no.
  4. Set the amount to 0 to issue it entirely on credit. Anything not collected goes on the customer's account.
  5. Confirm. You see INV-… issued with either Paid in full or ₹X on customer's account.

A walk-in draft must be collected in full: A walk-in sale cannot go on credit — collect the full amount. Issuing fails with Insufficient stock for … if an item has since sold out.

Record a payment#

For an issued invoice with money still due, click Record payment, enter the amount (up to what is due), method and reference, and confirm. You see ₹amount recorded against INV-…; the payment status updates to Partially paid or Paid.

To take one payment against several invoices at once — for example a customer clearing their whole khata — record it on the customer instead. See Payments & credit.

Edit a draft#

Only drafts can be edited. ⋯ → Edit invoice lets you change each line's description, quantity and rate (incl. GST), remove lines, and set the Bill discount ₹, Due date and Notes (up to 500 characters). An invoice needs at least one line.

Dispatch to the customer#

Dispatch sends three messages in parallel and reports each result, for example Dispatched INV-… — WhatsApp: sent, SMS: sent, Email: skipped:

ChannelSendsResult values
WhatsAppHi (customer), your invoice INV-… for ₹amount is ready. — sent as a text message, so it is delivered only inside WhatsApp's 24-hour windowsent, queued, failed, blocked, skipped
SMSInvoice INV-… of Rs amount from your businesssent, failed, skipped
EmailThe invoice with the PDF attached (sent without the attachment if the PDF cannot be generated)sent, failed, skipped — skipped when the customer has no email

Walk-in invoices have no contact to send to, so the button is hidden (Walk-in invoices have no dispatch contact). Delivery problems are covered in WhatsApp delivery.

  1. ⋯ → Razorpay pay link creates a link for the amount still due. The link is copied to your clipboard and, when the invoice has a customer, sent to them by WhatsApp and SMS: Payment link created (copied): https://… · shared with +91….
  2. When the customer says they have paid, click ⋯ → Check payment. If Razorpay confirms it, the payment is recorded automatically: Payment received! 1 payment recorded — invoice is now PAID. Otherwise you see Not paid yet — link status: ….

Use Check payment to pull in link payments. Links need your own Razorpay keys — see Razorpay (customer payments).

Invoice status lifecycle#

Besides the payment status, each invoice carries a lifecycle status that reports and automations use. You do not set it by hand on the Invoices screen — it changes as you issue, collect and return:

StatusMeaning
DRAFTNot issued yet
COMPLETEDIssued (every POS sale starts here)
SENTSent to the customer and awaiting payment
OVERDUESent and past its due date — set automatically every morning at 8:00 AM IST
PAIDSettled
CANCELLEDVoid

Paid and cancelled invoices are final. Invoices are never permanently deleted; see Soft delete & Recycle bin.

Credit notes#

A credit note reduces what a customer owes on an invoice. Kapda Stock issues one automatically for every sale return, numbered with a CN- prefix (for example CN-INV-2026-0003), and credits the customer's ledger when the invoice has a customer. A credit note can never exceed the invoice total.

Proforma invoices#

A proforma is an estimate that looks like an invoice. It cannot be issued (A proforma invoice cannot be issued — convert the quotation properly), paid (A proforma invoice is not payable) or e-invoiced, and it does not count towards reports, GST or your plan's invoice limit.

Error messages#

MessageWhat to do
Issue this draft invoice before recording a payment against itUse Issue & collect first.
INV-… is already fully paidNothing is due.
Payment ₹X exceeds the ₹Y still due on INV-…Enter no more than the amount due.
INV-… is already COMPLETED (or another status)The draft was issued already — refresh the list.
Razorpay keys are not configured in SettingsAdd your keys in Settings.
No payment link has been created for this invoiceCreate the link before checking it.

Last updated 15/09/2026