A message with a file attached never arrived
Attach a quotation, press Send, and it failed, with an error naming a file that was sitting exactly where it should be. Not a new fault: no message with a file attached has ever gone.
14 days free · nothing to install · your data exports whenever you want
What you saw
You attached a file (a quotation, a drawing, a signed copy), pressed Send, and the message failed. The error named the file and said there was no such file:
ENOENT: no such file or directory, open ’…/email/1789876076016-…-QT_2026-27_0020.pdf’
Which reads like the file went missing. It did not. It was uploaded correctly and was sitting exactly where it should be, the whole time.
What was actually wrong
Two reasonable decisions that had never been introduced to each other.
Uploaded files are recorded by where they sit inside the uploads folder, rather than by their full address on the machine. That is deliberate: the folder moves between installations, and a full address written into a record would be wrong the moment it did.
The part that hands a message to the mail server reads that address from where the program happens to be running instead. So it looked for the file one folder short of where it was, every time, and reported the only thing it could see: that nothing was there.
How long this has been true
As long as attachments have existed. This is not something that broke recently: the Send email button on a record has done it since the day it shipped. No message with a file attached has ever arrived.
Nothing caught it because every test of sending stands in for the mail server, and a stand-in never opens the file. The test passed, the code read correctly, and the only place the truth appeared was in a message to somebody trying to send a quotation.
What was done about it
Fixed in one place, not four
Four different screens build a message (the record, a reply, a new message and the scheduled sweep), and each passed the address along unchanged. The correction sits where the message meets the mail server, so a fifth screen cannot get it wrong.
A test that refuses both mistakes
Passing the address straight through, and correcting it twice, which would look for the file inside itself and fail the same way wearing a different hat.
Nothing to reinstall
It is a change on the server. Anything you send from now carries its attachment, in the browser and in the app alike.
Does this affect anything you already have?
Nothing was lost, and the files are all still there. Every attachment you added is stored exactly as it was. It was only ever the sending that failed.
Any message that failed this way is in Failed in the mail panel, with what went wrong beside it. Send those again and they will go. They were never delivered, so nobody received a half-message or an empty one; the message simply did not leave.
We are sorry. This one was ours, it was there from the beginning, and it took somebody trying to send a quotation to find it.
More in release notes
All release notesDashboards now count invoices, payments and expenses in another currency at their own exchange rate
A business that invoiced one customer in dollars saw the dashboard's own "What customers owe" at…
An editor built for how a quotation is actually written
One field for the product with inventory a click away, sections that subtotal, notes between the…
Two reports over the same invoices gave two different totals
One report answered gross and the other net, with nothing on either saying which. That is…
Payments in another currency, and exchange gain or loss
A payment on a USD invoice or bill is now in USD, at the rate your…
Converting a lead no longer leaves its work behind
You convert a lead into a customer, open the customer, and the three tasks somebody had…
Hanu plans a job in several parts, then does it with your yes
A request in several parts, such as "find the deals past their close date, add a…
Start with what you need. Grow into the rest.
Per user, per month. Every plan carries the whole product’s foundations (custom fields, roles, reports, documents and notifications) and differs only in how many modules are switched on. Change plan whenever you like; nothing is re-entered and nothing is lost.
CRM + Sales Documents
Leads, customers and deals, with quotations and GST invoices
Pay annually
+ 18% GST: ₹175.82 / user / month incl. GST
Pay monthly
+ 18% GST: ₹234.82 / user / month incl. GST
- Leads, customers, companies and deals
- Quotations, sales orders and GST invoices
- Your own mailbox, with replies filed against the record
- Reports, dashboards and exports
- Documents, folders and sharing
- Exhibitions: visiting card scanning, and what each fair earned
- Integrations: IndiaMART, Just Dial, Tally, Google Drive and Dropbox
7 modules switched on
- CRM
- Sales documents
- Settings
- Reports & analytics
- Documents
- Notifications
- Exhibitions
1 GB storage per workspace (organisation)
CRM + Sales Documents + Subscriptions + Warranty
For a business that bills on a cycle and stands behind what it sells
Pay annually
+ 18% GST: ₹352.82 / user / month incl. GST
Pay monthly
+ 18% GST: ₹470.82 / user / month incl. GST
- Everything in CRM + Sales Documents
- Recurring billing, plans, add-ons and coupons
- Warranty registration and claims
- Items and stock, which warranty is held against
- Recurring revenue reporting
- Integrations: IndiaMART, Just Dial, Shopify, Tally, Google Drive and Dropbox
10 modules switched on
- CRM
- Sales documents
- Subscriptions
- Warranty
- Inventory
- Settings
- Reports & analytics
- Documents
- Notifications
- Exhibitions
1 GB storage per workspace (organisation)
Full Suite
Every module, switched on
Pay annually
+ 18% GST: ₹588.82 / user / month incl. GST
Pay monthly
+ 18% GST: ₹706.82 / user / month incl. GST
- Every module in the product
- Procurement, Inventory, Manufacturing and Quality
- Books, GST returns, TDS and payroll
- Projects, timesheets and billing
- Integrations: IndiaMART, Just Dial, Shopify, Tally, Google Drive and Dropbox
21 modules switched on
- CRM
- Subscriptions
- Sales documents
- Vendors
- Procurement
- Inventory
- Manufacturing
- Quality
- Books
- Accountant
- Projects
- Warranty
- Documents
- Notifications
- Reports & analytics
- Settings
- Point of sale
- Exhibitions
- Channel Partners
- Cross-sell
- Targets & Commission
5 GB storage per workspace (organisation)
Only want this one module?
Individual modules are sold on their own alongside the plans. See every module’s price.
What about storage?
A single module includes 1 GB of storage per workspace (organisation) and Full Suite includes 5 GB per workspace (organisation): documents, attachments, file versions and photographs, counted together for everyone in it, not per user. Add more at any time in tiers, or move to Full Suite and take the larger allowance with it. Nothing is deleted if you run close; uploads are refused with a reason, and what you already have stays exactly where it is.
Annual or monthly?
Both. Annual works out cheaper per month and is charged once at the start; monthly costs a little more and can be stopped at the end of any cycle. The card shows the per-user-per-month figure on both, so the two are comparable at a glance rather than by arithmetic.
See it with your own data
Start free, import a spreadsheet of your customers, and raise a real GST invoice in the first ten minutes. No card, no sales call.