Comment on page
📱

Emerson shopPhone

Hey! This document has been prepared to make shopPhone setup and use easier.

‼️ PLEASE READ BELOW ‼️

If you inserted shopPhone before 8th of Novemner, you will need to move the products folder to replicatedFirst for it to work, even if you don't want to use Scan&Go.
shopPhone is designed with flexibility in mind, whether you have DRS Checkouts, JSM or No checkouts at all, our shopPhone works.
To the left you will find a contents, click the system you intend linking it with, it best to follow this guide in order. If you don't need to link it and don't have the Scan&Go license just click on the contents 'Don't link'

Setting up using DRS (Scan&Go)

Its easy to set shopPhone up with your existing DRS Tills, this allows all product files to be direcly uploaded to shopPhone so you don't have to worry about product missmatches.
To begin, you will need to locate your shopPhone folder in the workspace it should look something like this:
You'll want to open up the settings script, and right at the top you will see this:
Settings.lua (Just the top half)
1
--[[
2
3
____ ____ __ ___ __
4
/ __/ __ _ ___ ____ ___ ___ ___ / __/ / / ___ ___ / _ \ / / ___ ___ ___
5
/ _/ / ' \/ -_) / __/ (_-</ _ \ / _ \ _\ \ / _ \/ _ \ / _ \ / ___/ / _ \/ _ \ / _ \/ -_)
6
/___/ /_/_/_/\__/ /_/ /___/\___//_//_/ /___/ /_//_/\___/ / .__//_/ /_//_/\___//_//_/\__/
7
/_/
8
An amazing solution for all shop enviroments, with many features for customers and staff.
9
10
This system works in 4 ways, depending on your game will depend on which mode you use:
11
12
1. Emerson Integration - Gets all product data (Prices, Name etc.) from the EmersonPOS Product Folder.
13
2. DRS Integration - Gets all product data (Prices, Name etc.) from the DRS Product Folder.
14
3. JSM Integration - Gets all product data (Prices, Name etc.) from the JSM Product Folder.
15
4. Stand-alone Version - Gets all product data (Prices, Name etc.) from the ProductModule below this script.
16
17
- We urge that you do read our useful setup guide before getting started with the settings below -
18
]]
19
20
local Settings = {
21
22
["System"] = 2, -- Which system are you linking to?
On line 22 there is the value 'System' which you will be setting to 2 as you want to use it with DRS checkouts.
Now, we're almost there
🎉
Settings.lua (Further down)
-- SCAN&GO Settings --
-- YOU NEED THE LICENSE FOR THIS ADD-ON --
["SystemLocation"] = workspace["DRS | Retail POS System (ALPHA)"],
["Currency"] = "£",
["ProductLimit"] = 100, -- How many products can they buy before the system doesn't allow more?
["ClubcardPrices"] = true, -- Are Clubcard discounts enabled?
["ToolsFolder"] = game.ReplicatedFirst.Products, -- The folder where all the product tools are stored, this is used part of the scan and go system.
["PromptOption"] = 1, -- 1. ClickDetector, 2. ProximityPrompt, How will they get the product?
["LoadingTime"] = 3.5, -- The time it takes to load the Scan&Go for the first time for each user.
["ScannerDebounce"] = true, -- Have a debounce so people can't spam the checkouts, highly reccomended in large games.
["ClickDetectorSettings"] = {
ActivationDistance = 20
},
["ProximityPromptSettings"] = {
ActivationDistance = 10, -- How many studs away the prompt appears.
Keybind = Enum.KeyCode.E, -- The key they press to activate the prompt.
HoldTime = 3, -- How long should they hold the prompt in seconds?
}
-- ENSURE NO PRODUCT TOOLS ARE NAMED THE SAME THING TO AVOID THE SYSTEM MIXING THEM UP --
}
return Settings
On your script scroll down to line 82, there you will find the Scan&Go settings, you must own the license for these to have any effect.
On line 86 you need to set the system location, this is the location of your tills in the workspace.
With DRS you can link it to either the Retail POS or SCO, it doesn't matter which one you choose.
If you look at the example above you can see it linked to the Retail POS.
If you need help linking it, open a ticket in our discord server.
Now lastly, you need to make a folder, preferably in ReplicatedFirst where you will keep the product tools, then name it to Products, then you need to change in the settings script where you put the products folder like below:
game.ReplicatedFirst.Products,
You will need to set up the provided product givers, which can easily be done by dupliating the giver. You then have to fill out 2 values, which are pictured below.
Fill the EAN value with what is in the DRS Checkouts product script, if it doesn't match it won't work. Then fill the toolname value, which gives the user the tool from the Products folder we sorted earlier, the names need to match and are case sensitive, don't have any tools named the same thing.
Now just place these on your shelfs with the products on the inside of it, this product giver also works for people not using Scan&Go, meaning any other product givers must be deleted.
Once thats all done you are able to configure some of the settings for the product givers.
Should you need help with configuring these givers, please open a ticket on our discord server.
And thats it, you should now be able to use Scan&Go in your game. For more information on configuring other parts of shopPhone, read the rest of the manual.

Setting up using JSM (Scan&Go)

Its easy to set shopPhone up with your existing JSM Tills, this allows all product files to be direcly uploaded to shopPhone so you don't have to worry about product missmatches.
To begin, you will need to locate your shopPhone folder in the workspace it should look something like this:
You'll want to open up the settings script, and right at the top you will see this:
Settings.lua (Just the top half)
1
--[[
2
3
____ ____ __ ___ __
4
/ __/ __ _ ___ ____ ___ ___ ___ / __/ / / ___ ___ / _ \ / / ___ ___ ___
5
/ _/ / ' \/ -_) / __/ (_-</ _ \ / _ \ _\ \ / _ \/ _ \ / _ \ / ___/ / _ \/ _ \ / _ \/ -_)
6
/___/ /_/_/_/\__/ /_/ /___/\___//_//_/ /___/ /_//_/\___/ / .__//_/ /_//_/\___//_//_/\__/
7
/_/
8
An amazing solution for all shop enviroments, with many features for customers and staff.
9
10
This system works in 4 ways, depending on your game will depend on which mode you use:
11
12
1. Emerson Integration - Gets all product data (Prices, Name etc.) from the EmersonPOS Product Folder.
13
2. DRS Integration - Gets all product data (Prices, Name etc.) from the DRS Product Folder.
14
3. JSM Integration - Gets all product data (Prices, Name etc.) from the JSM Product Folder.
15
4. Stand-alone Version - Gets all product data (Prices, Name etc.) from the ProductModule below this script.
16
17
- We urge that you do read our useful setup guide before getting started with the settings below -
18
]]
19
20
local Settings = {
21
22
["System"] = 3, -- Which system are you linking to?
On line 22 there is the value 'System' which you will be setting to 3 as you want to use it with JSM checkouts.
Now, we're almost there
🎉
Settings.lua (Further down)
-- SCAN&GO Settings --
-- YOU NEED THE LICENSE FOR THIS ADD-ON --
["SystemLocation"] = workspace["JSM | Self Checkout System (BETA)"],
["Currency"] = "£",
["ProductLimit"] = 100, -- How many products can they buy before the system doesn't allow more?
["ClubcardPrices"] = true, -- Are Clubcard discounts enabled?
["ToolsFolder"] = game.ReplicatedFirst.Products, -- The folder where all the product tools are stored, this is used part of the scan and go system.
["PromptOption"] = 1, -- 1. ClickDetector, 2. ProximityPrompt, How will they get the product?
["LoadingTime"] = 3.5, -- The time it takes to load the Scan&Go for the first time for each user.
["ScannerDebounce"] = true, -- Have a debounce so people can't spam the checkouts, highly reccomended in large games.
["ClickDetectorSettings"] = {
ActivationDistance = 20
},
["ProximityPromptSettings"] = {
ActivationDistance = 10, -- How many studs away the prompt appears.
Keybind = Enum.KeyCode.E, -- The key they press to activate the prompt.
HoldTime = 3, -- How long should they hold the prompt in seconds?
}
-- ENSURE NO PRODUCT TOOLS ARE NAMED THE SAME THING TO AVOID THE SYSTEM MIXING THEM UP --
}
return Settings
On your script scroll down to line 82, there you will find the Scan&Go settings, you must own the license for these to have any effect.
On line 86 you need to set the system location, this is the location of your tills in the workspace.
With JSM you must link it with the SCO, it might not work propperly with Retail POS
If you look at the example above you can see it linked to the Retail POS.
If you need help linking it, open a ticket in our discord server.
Now lastly, you need to make a folder, preferably in ReplicatedFirst where you will keep the product tools, then name it to Products, then you need to change in the settings script where you put the products folder like below:
game.ReplicatedFirst.Products,
You will need to set up the provided product givers, which can easily be done by dupliating the giver. You then have to fill out 2 values, which are pictured below.
Fill the EAN value with what is in the JSM Checkouts product script, if it doesn't match it won't work. Then fill the toolname value, which gives the user the tool from the Products folder we sorted earlier, the names need to match and are case sensitive, don't have any tools named the same thing.
Now just place these on your shelfs with the products on the inside of it, this product giver also works for people not using Scan&Go, meaning any other product givers must be deleted.
Once thats all done you are able to configure some of the settings for the product givers.
Should you need help with configuring these givers, please open a ticket on our discord server.
And thats it, you should now be able to use Scan&Go in your game. For more information on configuring other parts of shopPhone, read the rest of the manual.

Setting up Scan&Go alone

Its easy to set shopPhone up if you don't have tills, this allows all product files to be direcly uploaded to shopPhone so you don't have to buy separate tills.
To begin, you will need to locate your shopPhone folder in the workspace it should look something like this:
You'll want to open up the settings script, and right at the top you will see this:
Settings.lua (Just the top half)
1
--[[
2
3
____ ____ __ ___ __
4
/ __/ __ _ ___ ____ ___ ___ ___ / __/ / / ___ ___ / _ \ / / ___ ___ ___
5
/ _/ / ' \/ -_) / __/ (_-</ _ \ / _ \ _\ \ / _ \/ _ \ / _ \ / ___/ / _ \/ _ \ / _ \/ -_)
6
/___/ /_/_/_/\__/ /_/ /___/\___//_//_/ /___/ /_//_/\___/ / .__//_/ /_//_/\___//_//_/\__/
7
/_/
8
An amazing solution for all shop enviroments, with many features for customers and staff.
9
10
This system works in 4 ways, depending on your game will depend on which mode you use:
11
12
1. Emerson Integration - Gets all product data (Prices, Name etc.) from the EmersonPOS Product Folder.
13
2. DRS Integration - Gets all product data (Prices, Name etc.) from the DRS Product Folder.
14
3. JSM Integration - Gets all product data (Prices, Name etc.) from the JSM Product Folder.
15
4. Stand-alone Version - Gets all product data (Prices, Name etc.) from the ProductModule below this script.
16
17
- We urge that you do read our useful setup guide before getting started with the settings below -
18
]]
19
20
local Settings = {
21
22
["System"] = 4, -- Which system are you linking to?
On line 22 there is the value 'System' which you will be setting to 4 as you want to use it standalone.
Settings.lua (Further down)
-- SCAN&GO Settings --
-- YOU NEED THE LICENSE FOR THIS ADD-ON --
["SystemLocation"] = workspace,
["Currency"] = "£",
["ProductLimit"] = 100, -- How many products can they buy before the system doesn't allow more?
["ClubcardPrices"] = true, -- Are Clubcard discounts enabled?
["ToolsFolder"] = game.ReplicatedFirst.Products, -- The folder where all the product tools are stored, this is used part of the scan and go system.
["PromptOption"] = 1, -- 1. ClickDetector, 2. ProximityPrompt, How will they get the product?
["LoadingTime"] = 3.5, -- The time it takes to load the Scan&Go for the first time for each user.
["ScannerDebounce"] = true, -- Have a debounce so people can't spam the checkouts, highly reccomended in large games.
["ClickDetectorSettings"] = {
ActivationDistance = 20
},
["ProximityPromptSettings"] = {
ActivationDistance = 10, -- How many studs away the prompt appears.
Keybind = Enum.KeyCode.E, -- The key they press to activate the prompt.
HoldTime = 3, -- How long should they hold the prompt in seconds?
}
-- ENSURE NO PRODUCT TOOLS ARE NAMED THE SAME THING TO AVOID THE SYSTEM MIXING THEM UP --
}
return Settings
On your script scroll down to line 82, there you will find the Scan&Go settings, you must own the license for these to have any effect.
On line 86 you need to set the system location, just set it to 'Workspace'
If you need help linking it, open a ticket in our discord server.
Now, you need to make a folder, preferably in ReplicatedFirst where you will keep the product tools, then name it to Products, then you need to change in the settings script where you put the products folder like below:
game.ReplicatedFirst.Products,
You will need to set up the provided product givers, which can easily be done by dupliating the giver. You then have to fill out 2 values, which are pictured below.
Fill the EAN value with what is in the DRS Checkouts product script, if it doesn't match it won't work. Then fill the toolname value, which gives the user the tool from the Products folder we sorted earlier, the names need to match and are case sensitive, don't have any tools named the same thing.
Now just place these on your shelfs with the products on the inside of it, this product giver also works for people not using Scan&Go, meaning any other product givers must be deleted.
Once thats all done you are able to configure some of the settings for the product givers.
Should you need help with configuring these givers, please open a ticket on our discord server.
Next, you need to build your product database, this is very similar to JSM and DRS.
ProductModule.lua
1
local Products = {
2
3
Products = {
4
[12345] = {
5
["ProductName"] = "Pepsi", -- Name of Product that will show on the app when scanned.
6
["ProductImage"] = "", -- An image of the product, if you don't want one, just leave it blank.
7
["ProductPrice"] = "4.25", -- How much does the product cost? (No Currency Symbol)
8
["LoyaltyCardPrice"] = "4.25" -- If you want the product to be cheaper with loyalty card.
9
10
},
11
12
[1234] = {
13
["ProductName"] = "Kellogs Cereal", -- Name of Product that will show on the app when scanned.
14
["ProductImage"] = "rbxassetid://3350557737", -- An image of the product, if you don't want one, just leave it blank.
15
["ProductPrice"] = "1.25", -- How much does the product cost? (No Currency Symbol)
16
["LoyaltyCardPrice"] = "1.00" -- If you want the product to be cheaper with loyalty card.
17
18
},
19
}
20
}
21
22
return Products
23
The first set of numbers are the EAN value, which you set the same as you EAN value in your tool and your product giver.
  • Then set the product name, this is quite obvious what it does.
  • Set a product of the image, if you want to have an image of the item put a asset id in.
  • Then set the price of the product, don't include your currency symbol.
  • And if you want a clubcard price set it, or make it the same as the normal price.
You can then do this as many times as you need, then you are done.
And thats it, you should now be able to use Scan&Go in your game. For more information on configuring other parts of shopPhone, read the rest of the manual.

Configuring shopPhone Settings

You can configure a range of settings to make shopPhone custom to your needs.

Main shopPhone Settings

  • Shop Name - The name of your shop which shows on some apps.
  • Loyalty Card Settings - Set your shop logo, and the card colour and a little info text
  • Staff Card Settings - Set the two access levels and rank access
  • Apps - Disable/Enable apps
  • App Permissions - Rank lock specific apps
  • Sound settings - Set the scanning sound and error sound for Scan&Go

Scan&Go Settings

Currency - Set the currency you want to use
ProductLimit - Max. Amount of products a user can buy
Clubcard Prices - If clubcard prices take effect
Tools Folder - Where your tools are kept, only change if required
Prompt Option - Click detectors or Proximity prompt for product giver
Checkout Debounce - Should there be a scan debounce

Sound Download Pack

Sounds.zip
23KB
Binary
Scan Sound and Error Sound
Need anymore help? Open a ticket on our discord server