Hi, I also wanted that and was not able to find it in the settings. I called lightspeed support and they changed it for me. Now I have the unit price with the discount and price after discount all displayed on the receipt.
Gabriel GivensModerator, Lightspeed StaffPosts: 19moderator
Very awesome! I'm glad we could assist you. Anyone else who needs this, please give support a call or shoot us a request through our help page and we can totally take care of this for you.
Gabriel Givens Senior Frontline Support Lightspeed HQ
In case anyone else needs to do this, here's the section in the sales receipt print template that controls how line items are displayed:
{# Item Lines #} {% set per_line_discount = true %} {# Displays Discounts on each Sale Line #} {% set per_line_subtotal = false %} {# Displays Subtotals for each Sale Line (ex: "1 x $5.00") #} {% set discounted_line_items = true %} {# Strikes out the original price and displays the discounted price on each Sale Line #} {% set per_line_employee = false %} {# Display Employee for each Sale line #} {% set show_custom_sku = false %} {# Adds SKU column for Custom SKU, if available, on each Sale Line #} {% set show_manufacturer_sku = false %} {# Adds SKU column for Manufacturer SKU, if available, on each Sale Line #} {% set show_msrp = false %} {# Adds MSRP column for the items MSRP, if available, on each Sale Line #}
I am interested in customizing the Purchase Order print out to include special order information. Is that possible? I just don't know how to refer to special orders associated with the PO in the custom printing template. I've been able to customize other aspects of the PO by looking at other templates found at the GitHub site, but none of them contain the information I need.
Alternatively, if the PO can't include that info, how can I customize the printing of Special Orders?
I've attached a screenshot of the code you'll need to enter onto your receipt template. If you need help with this, please email [email protected].com and we can arrange a call.
Adrian SamuelModerator, Lightspeed StaffPosts: 654moderator
@erikgorka There isn't a way to pull unique special order information on a purchase order.
If you're willing to explore third-party options, there is a way to make some slight design customisations to the Special Order template however. What are you looking to accomplish?
@Adrian_Samuel Thanks for responding! We're new to Lightspeed and are looking at our workflow for receiving shipments and distributing equipment. I work for a college which does institutional orders as well as direct sales. For institutional orders, the receiving process involves checking in equipment from a shipment, comparing what's received with what was ordered (they come in batches), and figuring out what staff/faculty should get the equipment just received. Purchase Order printouts are the closest we can see to the type of paperwork we've traditionally given to the folks who do that processing. However, the printouts don't include the customer information (for who ultimately gets what - which is part of special orders) or a list of equipment not yet received (we don't usually wait for everything to come in before we start distributing). Modifying the printouts would help streamline the process and reduce our paperwork.
We'd be open to alternative solutions if they're not too expensive or burdensome. I would also consider making custom apps and using your API. If you have thoughts on how best to approach this let me know.
essentially changing the “html” to “json”. You can use xml if you prefer.
The most useful information I see for our this situation is this:
orderLineID and the customerID
The Purchase Order (PO) template gives you the OrderLineID from the line as as if it’s a special order line
So scripting something simple like this will allow you to determine whether the item is a special order and print it:
{% if Line.orderLineID == SpecialOrders.SpecialOrder.orderLineID %}
This item is a special order
{% endif %}
You might consider adding it as a cell on the table using a td tag.
Now the name of customer’s isn’t available on the template, only the customer ID. If you make an ajax call to the Customer API (http://developers.lightspeedhq.com/retail/endpoints/Customer/) and load that onto the page, you’ll have access to the customerID and you could loop through that data testing to see if the customerID matches any in the PO template. The script would look something like this
{% for name in Customer %} {% if name.customerID == SpecialOrders.SpecialOrder.Customer %} {{name.firstName}} {{name.lastName}} {% endif %} {% endfor %}
Is there any way to make the receipt header (logo, address, customer info) print on EVERY page when printing on letter(invoice)? It looks really bad right now for long orders that go onto a second page or more; it just starts listing items right at the top of the page.
Edit: I don't know much about HTML/CSS, but anyway I found that changing the header's position from relative to fixed made it print on each page, but unfortunately info gets printed behind it as well... Now I just need a fix for that.
Adrian SamuelModerator, Lightspeed StaffPosts: 654moderator
@kotjze this is a surprisingly interesting question! Position fixed is going to be your best bet since the browser doesn't have access to the printer's systems. You could use further positioning to change the alignment of the info
23 comments
Senior Frontline Support
Lightspeed HQ
Senior Frontline Support
Lightspeed HQ
Senior Frontline Support
Lightspeed HQ
{# Item Lines #}
{% set per_line_discount = true %} {# Displays Discounts on each Sale Line #}
{% set per_line_subtotal = false %} {# Displays Subtotals for each Sale Line (ex: "1 x $5.00") #}
{% set discounted_line_items = true %} {# Strikes out the original price and displays the discounted price on each Sale Line #}
{% set per_line_employee = false %} {# Display Employee for each Sale line #}
{% set show_custom_sku = false %} {# Adds SKU column for Custom SKU, if available, on each Sale Line #}
{% set show_manufacturer_sku = false %} {# Adds SKU column for Manufacturer SKU, if available, on each Sale Line #}
{% set show_msrp = false %} {# Adds MSRP column for the items MSRP, if available, on each Sale Line #}
I have to make magic every time I print one so it actually fits on the page!
I am looking to add a savings line at the end of the receipt.
Savings (MSRP - price).
Anyone have any prior experience or know which fields I could use.
Thanks in advance!
Alternatively, if the PO can't include that info, how can I customize the printing of Special Orders?
I've attached a screenshot of the code you'll need to enter onto your receipt template. If you need help with this, please email [email protected].com and we can arrange a call.
Adrian Samuel
Software Developer
Lightspeed HQ
If you're willing to explore third-party options, there is a way to make some slight design customisations to the Special Order template however.
What are you looking to accomplish?
Adrian Samuel
Software Developer
Lightspeed HQ
We'd be open to alternative solutions if they're not too expensive or burdensome. I would also consider making custom apps and using your API. If you have thoughts on how best to approach this let me know.
Thanks again!
Anytime! I understand what you’re trying to accomplish now.
If you make an API call to the Purchase Order Template Page you’ll get some useful information that will open some options to us (alternatively, add the template from Github https://github.com/merchantos/PrintTemplates/blob/master/purchase_order/purchase_order.tpl and on the URL that's generated when you print a purchase order, change the link from
https://us.merchantos.com/API/Account/[YOURACCOUNTID]/DisplayTemplate/Order/39.html?template=PurchaseOrderReceipt&print=true
to
https://us.merchantos.com/API/Account/[YOURACCOUNTID]/DisplayTemplate/Order/39.json?template=PurchaseOrderReceipt&print=true
essentially changing the “html” to “json”. You can use xml if you prefer.
The most useful information I see for our this situation is this:
orderLineID and the customerID
The Purchase Order (PO) template gives you the OrderLineID from the line as as if it’s a special order line
So scripting something simple like this will allow you to determine whether the item is a special order and print it:
{% if Line.orderLineID == SpecialOrders.SpecialOrder.orderLineID %}
This item is a special order
{% endif %}
You might consider adding it as a cell on the table using a td tag.
Now the name of customer’s isn’t available on the template, only the customer ID. If you make an ajax call to the Customer API (http://developers.lightspeedhq.com/retail/endpoints/Customer/) and load that onto the page, you’ll have access to the customerID and you could loop through that data testing to see if the customerID matches any in the PO template. The script would look something like this
{% for name in Customer %}
{% if name.customerID == SpecialOrders.SpecialOrder.Customer %}
{{name.firstName}} {{name.lastName}}
{% endif %}
{% endfor %}
I hope this helps!
Adrian Samuel
Software Developer
Lightspeed HQ
Any one knows how to customize receipt template for transfer?
I have been trying to print qoh.
I tried the following,
Item.ItemShops.ItemShop[0].qoh
but it is not working!
You can see an example of a payload from this end point here: http://developers.lightspeedhq.com/retail/endpoints/DisplayTemplate-Transfer/
To see the objects returned in your account use this url as a template and fill in the gaps between the {}:
https://us.merchantos.com/API/Account/{{AccountID}}/DisplayTemplate/Transfer/{{transferNumber}}.json
Adrian Samuel
Software Developer
Lightspeed HQ
Edit: I don't know much about HTML/CSS, but anyway I found that changing the header's position from relative to fixed made it print on each page, but unfortunately info gets printed behind it as well... Now I just need a fix for that.
Adrian Samuel
Software Developer
Lightspeed HQ
Is there any way to rename the MSRP column to be "Retail"?