Sales Invoice for Services without creating Service Item


I just realize that Item Code is not mandatory in sales invoice
So, no need to create item if you want to create sales invoice for services.
It will be useful if you want to make invoice for non stock item.

Steps to create sales invoice:

  • Create Sales Invoice
  • Select Customer
  • Add new row
    • enter Item Name
    • enter Item Description
    • enter Qty and Rate

Save and Submit Sales Invoice

Print format will be look like this:



Yes, good to draw attention to this behavior. I enter all my purchases invoices for goods that we do not resell (stationary, PR/advertisement, electricity, etc etc) like this.
I usually enter just one line summarizing the things i bought (so leaving the details of the individual items) enter Quantity=1 and the total VAT free amount.
Than select Account head and cost centre.
Have set up a tax template for this situation. Select tax template. Done safe. Attach original invoice. Submit.Done. Make Payment.

1 Like

@kolate_sambhaji thats the intent!

1 Like

@becht_robert @rmehta Thanks

Just to add one more note here:

Supplier and Customer is also not Mandatory in Purchase Invoice and Sales Invoice, So we can create Purchase Invoice for expenses, its really great feature to Track Expenses for Company as Company need to give all income expense details to Tax Department.

Hello, I’ve been trying to do this and I can’t find a way to.
How do I add a Sales Invoice with a custom item that is not added to the items?

Thank you!!

Hello @Antonio_Pinto ,

You can see, Item Code is not mandatory in sales invoice, So add Item Name, Description and Price in invoice as follows.

Demo Link:


I am seeing item code as mandatory, am I missing something?

We are service based organization and do not have any standard product list. Pricing also varies for almost each service as it’s customized as per the needs of the customer. Description for the services is different in most of cases, is there a way to handle such cases?

@vishwajeets in Sales Invoice, Item Name and Item Description is mandatory and not Item Code.
Also you can remove Mandatory property from Customise Form.

What if I don’t want to create items? Is that possible ?

yes, it is possible.
You can create sales invoice without Item

hi @kolate_sambhaji, I will like to know how to create sales invoice without adding item to master

@Cropg1 Please check above screen shot, you need to enter Item Name, Description, Qty and Rate in Sales Invoice. No need to select Item Code

@kolate_sambhaji thanks that sounds interesting and serves the purpose. I will try it.

Has this option been removed? When I try to make an Invoice from a Sales Order with Items without codes, I get this error:

Traceback (most recent call last):
File "/home/intranet/frappe-bench/apps/frappe/frappe/", line 56, in application
response = frappe.handler.handle()
File "/home/intranet/frappe-bench/apps/frappe/frappe/", line 21, in handle
data = execute_cmd(cmd)
File "/home/intranet/frappe-bench/apps/frappe/frappe/", line 52, in execute_cmd
return, **frappe.form_dict)
File "/home/intranet/frappe-bench/apps/frappe/frappe/", line 922, in call
return fn(*args, **newargs)
File "/home/intranet/frappe-bench/apps/frappe/frappe/model/", line 26, in make_mapped_doc
return method(source_name)
File "/home/intranet/frappe-bench/apps/erpnext/erpnext/selling/doctype/sales_order/", line 564, in make_sales_invoice
}, target_doc, postprocess, ignore_permissions=ignore_permissions)
File "/home/intranet/frappe-bench/apps/frappe/frappe/model/", line 106, in get_mapped_doc
map_child_doc(source_d, target_doc, table_map, source_doc)
File "/home/intranet/frappe-bench/apps/frappe/frappe/model/", line 200, in map_child_doc
map_doc(source_d, target_d, table_map, source_parent)
File "/home/intranet/frappe-bench/apps/frappe/frappe/model/", line 125, in map_doc
table_map["postprocess"](source_doc, target_doc, source_parent)
File "/home/intranet/frappe-bench/apps/erpnext/erpnext/selling/doctype/sales_order/", line 534, in update_item
or item.selling_cost_center \
AttributeError: 'NoneType' object has no attribute 'selling_cost_center'