Why do I set up a virtual product and turn on toggle "Visible on POS" but it does not show up on POS?

Sometimes you set up a virtual product and turn on the toggle “Visible on POS” but the virtual product does not show up on POS.

Picture 1: Setup virtual product named “Repair service” in Backend and turn on the toggle “Visible on POS”
Picture 2: The virtual product does not show up on POS

The cause

You forget to assign a source for this virtual product.

Solution

In the product detail page, scroll down to the Source section and assign a source for this virtual product. Remember that the assigned source must link to the stock that links with the POS location.

For example: My POS location links to the default stock, and the default stock links to the default source. If I want to show up the virtual product on POS, I need to assign the default source to the virtual product and input the quantity for it.

After assigning the source and saving changes, you can try to open POS again and verify the issue is fixed.