Overview
This procedure guides the Implementation Specilist or Technical Support Specilist on setting up Bepoz and SQL in preparation for implementing a YourOrder service.
This is a critical procedure in the YourOrder Quote to Cash buisness process, and if followed by setting up the YourOrder back-end.
Outcomes
Venue router set up for Port-forwarding
Venue has a Static IP on the Internet
Bepoz software is on the cirrect version to support YourOrder
Bepoz database configured for YourOrder, including New Operator, Account Group, Account Template, and Bepoz StoredProcedure API Jobs
SQL Database StoredProcedures & Firewall inbound rules applied for new port forward
Policies
Approval must be granted by the Support Manager or Onboarding Manager prior to any Bepoz Version Upgrade
Venues must have a Static IP on the Internet
Reference Material
AU YourOrder Implementation Register
Procedure
Step 1
Obtain the external IP address of the venue. This is a priority and is required for the SSL to be setup by the Dev team. Update the YourOrder Implementation List for your region (See Reference Material).
Step 2
Check the Bepoz software version and update as needed. Please refer to the Bepoz Version Upgrade Checklist for a quick reference guide for updating Bepoz, but discuss with the Support Manager or Onboarding Manager before proceeding.
If any current version 4.5.x.x or any earlier version, e.g, 3.5, 4.1, 4.3, need to upgrade to 4.5.2.184 - 4.5.2.188.
If any sites have 4.6.0.x, need to upgrade to 4.6.0.30.
If any site using 4.6.1.0 – 4.6.1.4. No need to upgrade.
Step 3
Ensure that the venue has correct till licenses:
A licensed API Till. It never shows as Online in smart controller, but it must be Available, and not Unlicensed.
A real physical till with Smart POS is required to finalise sales received from Your Order
So as a rule of thumb, two SmartPOS licenses are required per API till. One for the API, and one for the existing SmartPOS on a terminal already in the venue.
Ensure any tills that are not licensed are set to Inactive in Back Office. Any till that is Inactive, but is required to run smart print, needs the SmartPOS unchecked from the Bepoz Auto Run settings in database.exe.
Step 4
Please download the apporpriate DLL files and place in the Bepoz\\Programs folder. Overwrite the files if any are already there.
https://drive.google.com/open?id=1QdjdH8ZFMJqkKI9PhgRCXJPkMdEG38BE
Additional Hotfixes DLLs are required for version 4.6.1.3 and 4.6.1.4 see link below. Place them in the same programs folder.
Step 5
If the Venue is a Multi Venue, and they are on Version 4.5.2.XXX, you must uncheck these two options in Global Settings. There is a fault in the API in that version which will prevent Your Order working with the Bepoz API.
Long term fix is to have them upgraded to a compatible 4.6.X.XX version. However when venues are closed to walk in traffic, turning this setting off shouldn’t negatively impact how the venue operates in this circumstance.
Multi Venu Flags
Step 6
Run the 4 scripts in order on the Bepoz Database. Open SQL Management Studio, Select New Query and ensure you have the correct database selected. It defaults to Master. Copy the Script from doc and paste into the query window, then select execute. (Button under New Query). Do each in turn.
SQL Scripts
Script 1
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [VoucherUpdated]
@date nvarchar(20)
AS
BEGIN
SET NOCOUNT ON;
select *
from Voucher v
where v.dateupdated >= @date
END
Script 2
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [AccountsUpdated]
@date nvarchar(20)
AS
BEGIN
SET NOCOUNT ON;
select a.dateupdated as accountupdated, ad.dateupdated as addressupdated, a.CountVisits AS countvisits, a.firstname, a.lastname, a.parentid as groupid, a.accountid, a.accnumber, ad.Email1st AS email, a.cardnumber, a.pointsearned - a.PointsRedeemed - a.PointsExpired AS points, a.AccountBalance as balance, ad.mobile, ad.phonehome, a.datetimeexpiry, a.datebirth, a.[status], a.usecalinkbal, a.usecalinkpnts
from account a left join address ad on a.addressid = ad.addressid
where a.dateupdated >= @date OR ad.DateUpdated >= @date
END
Script 3
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [ProductsUpdated]
@date nvarchar(20)
AS
BEGIN
SET NOCOUNT ON;
select *
from Product p
where p.dateupdated >= @date
END
Script 4
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE FindAccount
@Email NVARCHAR(250),
@Mobile NVARCHAR(250),
@AccountNum NVARCHAR(250)
AS
BEGIN
SET NOCOUNT ON;
SELECT Account.*, Address.Email1st,Address.Mobile FROM Account
JOIN Address on Address.AddressID = Account.AddressID WHERE
(AccNumber = @accountNum AND AccNumber <> '') OR
(Email1st = @email AND Email1st <> '') OR
(Email2nd = @email AND Email2nd <> '') OR
(Mobile = @mobile AND Mobile <> '')
END
Step 7
Each API till requires a till license to run. Create an API till with printing channels set to where the venue wants dockets to print to. In a multi venue, the API till(s) is setup in the remote sites stores, not at HO.
Name it API YourOrder XXXX, where x is the name of the area in the venue if more than two will be required. Suggest when creating the API till, copy a till that has the right channels already setup if possible. If the Venue is offering two or more outlets for Your Order sales to be collected or dispatched from, then and API till per outlet will be required. This is mainly so the different printing can be accommodated for.
Drive thru orders need customer receipts in the bottle shop
Delivery or collect orders at the counter need receipts to print into Bistro area.
'Always print on Payment' needs to be checked per API till. Add the API till to the store they are selling the products from. This will also be the store the sale report too.
IMPORTANT NOTE: For any venues wanting to lower their Bepoz License commitment, they still need at least 1 SmartPOS till active per API till active. This is so they can finalise the sale once the customer collects, or they dispatch the order via delivery. Each Order comes through as a table, which you will see the setup for further in the document. The important part is that all the remote printers (kitchen) may not be connected to this one terminal. The customer must leave any till running that drives a remote printer, so Smart Print can still run. Smart Print isn’t controlled by the SmartPOS license, so the venue can still lower their costs, by disabling the till license, but they cannot power those tills off that run a needed remote printer. Ensure the venue has this explained to them, and they understand and don’t accidentally turn off needed terminals.
API Till Setup
Step 8
Create API operator. Good practice is to put this in the support group like the image to the right. Use 'API YourOrder' as the Operator name, and set API as the Operator and Card Number.
Note down the Operator ID. You will need it later.
API Operator
Step 9
Add a new account group in Back Office called 'YourOrder Guests.
If you do not do this, any customer that signs in as a guest to order will be created as a new generic account. Bepoz will receive the customers first name, their mobile number and a randomly generated number in the surname. Any future time they sign in as a guest, will not match to a previous sign in, so a new account gets created every time. To prevent a customers' true loyalty list from being populated with unwanted records, it is recommended to add a separate group.
In this group, create a template account called 'YOURORDERTEMPLATE' with
'YOURORDERTEMPLATE' in the surname
99,001 as account number; and
99,001 as card number
YourOrder Account
Step 10
Create a Scheduled Job for the stored procedure.
Normally external systems talk directly to the Bepoz XML API, but YourOrder requires features not yet part of the API, so a separate job will accept the incoming communications from the YourOrder AWS instance, and pass that through to the Bepoz API internally. The Stored Procedure Job will listen on the same port that is port forwarded through the venue’s router, in this case 9192, and then pass the communication though to the XML job listening on http://127.0.0.1:9193. The secret is the MAC key that needs to be put in the YourOrder back panel and in the XML API.
Use last pass to create this, and store a copy there in the customers record. In a multi venue these jobs are setup to run in the remote venue, not HO Set up YourOrder Stored Procedure job Like below
NOTE: Please refer to the SSL Setup guide on how to configure the jobs if you are installing the SSL at the same time as the Bepoz setup. If not, ensure you return and change the setup before the venue goes live. This is compulsory, no SSL, no live.
Step 11
Create an API XML job. Use INTERNAL port 9193 to match the Stored Procedure Job created in the previous step.
The till must be a till already setup as an API till. If you have nothing in your drop down, you may need to restart smart controller, or you have not set the till up correctly.
NOTE: Please refer to the SSL Setup guide on how to configure the jobs if you are installing the SSL at the same time as the Bepoz setup. If not, ensure you return and change the setup before the venue goes live. This is compulsory, no SSL, no live.
XML API Job - StoreProcedure
Step 12
It is good practice to test if the ports have been forwarded correctly and the API job can see the requests. In a browser on an external PC from the venues internet, enter in the static IP of the venue followed by the Port number (Eg. 103.217.167.196:9192). If you receive an XML message including the line "Mac not found", you have made the connection.
Step 13
Setup Bepoz Products for export.
Each product group must be set to the correct product mode relevant to the products they contain. The Product mode against a bepoz group has an impact on how those products are treated during the import.
If a product is in a group that is set to "Normal Product Mode", then your order brings them in as normal products.
If the Bepoz group is set to "Condiments Product Mode", then regardless of how the individual product is configured, all items in that group flagged with "Y" will be imported as a condiment into YourOrder. YourOrder will also create the Bepoz group as a new Condiment group in your order.
NOTE: All bepoz products designated "Normal Mode" must have a price above $0.00 in the store YourOrder connects to before being imported. If not, they will import as inactive into YourOrder and will require manually switching to active. Bepoz Condiments are excluded from this.
Normal Products
Condiment Products
Step 14
To export a product to YourOrder, enter the character "Y" in Export Code 4 in the product details screen.
Do this individually for Bepoz groups that only need some of the products uploaded. You can use "Change by Range" on the group if all products need to be uploaded to speed up the process.
The first time a product is imported from a group, YourOrder will take that group name,and create a new Category in YourOrder (Bepoz groups set to Normal Product Mode). In the case of a Bepoz group in Condiment Product Mode, a new Condiment & Flags group in will be created.
Product Export Code 4
Step 15
Setup Handling Fee as a Normal Product for all Bepoz Versions.
Note down the Product ID for use later.
Do not use the system generated Handling Fee product found in later versions. It’s not compatible with Online Ordering.
Step 16
In venue settings, create appropriate table group names. It is not recommended to use the same table names the venue uses for other tasks.
Create a function button on the function maps for each till, using the Tables and Accounts function, with sub function Delivery/Pickup. Ensure the Save as Delivery and Save as Phone buttons are added to the Home/Delivery Panel. Check if the customer needs other functions in case they also take direct orders from their customers over the one. One button and table group per YourOrder service type. The examples below don’t have the table group ID’s line up correctly, so please make sure yours do. These Table Group ID’s will be required later, so note them down.
Table Names
Step 17
Create a function button on the function maps for each till, using the Tables and Accounts function, with sub function Delivery/Pickup. Ensure the Save as Delivery and Save as Phone buttons are added to the Home/Delivery Panel. Check if the customer needs other functions in case they also take direct orders from their customers over the one. One button and table group per YourOrder service type. The examples below don’t have the table group ID’s line up correctly, so please make sure yours do. These Table Group ID’s will be required later, so note them down.
Delivery Function Button
Click & Collect Function Button
Function Map
Step 18
In printer formats, create a copy of the receipt and order docket formats that will be used to print the orders from existing tills.
Turn on the flags in the images to the right for both types of docket formats, then assign these formats to the API till(s) as required. This will prevent their normal tills printing the extra information on their normal "non-online" sales dockets; only the online orders will have what’s needed.
It is good practice to add a "YO" to the end of each format name to make it easier to support in the future. Eg,
Rcpt YO,
Std Kitchen YO
Step 19
Discuss with the Venue how many products they feel they may use online.
If the amount is beyond 800 (don’t forget condiments etc), YourOrder R&D will need to be informed so a more robust back-end instance is used. If this is otherwise it will freeze during back panel functions.