Required Customers can get onboard in PayUMoney from Fusion.
In Global option (T-A-G),
"Bharat QR Code setting Json"- add following fields in Json as below -
JSON format:
{
"QRCodAPI": "https://info.payu.in/merchant/postservice.php?form=2", [^]
"MerchantKey": "XXXxxx",
"MerchantSalt": "xxx324fxc",
"QRCodeString": "generate-dynamic-bharat-qr",
"CheckStatusString": "check-bqr-txn-status",
"ExpirytimeInSecond": "300",
"TokenAPI": "https://accounts.payu.in/oauth/token", [^]
"BaseURL": "https://partner.payu.in", [^]
"CreateMerchantAPI": "/api/v1/merchants",
"VerifyAPI": "/api/v1/merchants/{0}/verify",
"GetCredential": "/api/v1/merchants/{0}/credential",
"Product": "payumoney"
}
In Location Master (MIL) - Set Link Information Added a new section “Bank Detail” with following fields
●Bank Name
●Account Number
●IFSC Code
●Account Holder
Added a Button "Payu Onboard"
It will call the Payu API and register a merchant account on PayUMoney.
Scenario:
●As per Notification No.14/2020- Central Tax, given on March 21st, 2020 all taxpayers bear an annual turnover of over Rs. 500 Crores must generate dynamic QR Codes for their B2C invoices.
●Provided that where such registered person makes a Dynamic Quick Response (QR) code available to the recipient through a digital display, such B2C invoice issued by such registered person containing cross-reference of the payment using a Dynamic Quick Response (QR) code, shall be deemed to be having Quick Response (QR) code.
●It will generate Unique QR for every transaction printed on the bill’s copy ( customer can scan every transaction that can be printed on the copy of the invoice ( customer can scan from there and pay ) or displayed using a tablet placed on the counter for customers.
●It can also be integrated with mobile applications to generate new unique QR for each transaction. The system will add the amount and the consumer just needs to pay using any application.
Solution:
For this Requirement, We need to follow the below steps:-
In Global Option(T-A-G), Added two options which are,
Generate QR code for B2C Bills =No/Yes
Bharat QR Setting: Json file (setting of Payu API Credentials)
Sample JSON Format
{"QRCodAPI":"https://test.payu.in/merchant/postservice.php?form=2", "MerchantKey": "XXxxXX","MerchantSalt": "ZZzzZZ", "QRCodeString": "generate-dynamic-bharat-qr", "CheckStatusString": "check-bqr-txn-status", "ExpirytimeInSecond": "300"}
In Mode Of Payment (MAM) - add one more Vendor "Bharat QR" in Vendor List.
We can use Dynamic QR Status check API to check the payment status and update the Fusion database accordingly, for the Status check.
If payment has been accepted in MOP (Vendor=Bharat QR), a message box will appear.
"Do you want to check BQR Status: Yes/No."
Yes = it will check the status and show the response on the screen.
No = It will not check Status.
In Display, Report adds a Button BQR Status - From here you can also check status
Implementation Note:
●We need to create a MOP and select Vendor "Bharat QR" from the vendor list.
●Select this MOP in sale voucher option.
●In sale - tender screen accepts payment in this MOP only.
●Finish the Bill and Bill will be printed.
●Customer can pay by scanning BQR code On the bill.
●After that, we will check and display the status of Payment.
Print QR Code in Windows bill :
•Added "PaymentQRCode" in preview.
•Added a PictureBox in Preview Designer (e.g., PictureBox1.
Right-click on the Picture Box and set the Sizing as a stretch image.
Set its size in property: Width : 124, height: 124)
Add below code in script:
Private Sub pictureBox1-BeforePrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintEventArgs) If GetCurrentColumnValue("PaymentQRCode").ToString.Length > 0 Then Dim imageBytes As Byte() = Convert.FromBase64String(GetCurrentColumnValue("PaymentQRCode")) Dim ms As MemoryStream = New MemoryStream(imageBytes, 0, imageBytes.Length) ms.Write(imageBytes, 0, imageBytes.Length) Dim image As System.Drawing.Image = System.Drawing.Image.FromStream(ms, True) pictureBox1.Image = image End if End Sub |
And at the top of the script add.
Imports System.IO
Note:
●For every B2C bills on saving, Fusion will send a request to Payu QR generation.
●API with mandatory information like Bill No, Bill Amount, customer information, Merchant UPI account link in Jason format.
●A Dynamic QR code will be received in response, and this QR code will be saved in the database and printed in the bill.
●Customers can pay by scanning this QR code online or can pay in cash.
●We can use Dynamic QR Status check API to check the payment status and update the Fusion database accordingly.
●It will work only in Scan POS sale and windows printing.
Scenario:
Require Multi MOP Option for Zomato and Swiggy Orders received from Urban piper platform
●Payment-gateway: Online Paid order and merchants will receive the payment in a bank account.
●Aggregator: This is used when the payment option is handled by the aggregator platform
●Cash: COD order and merchants have to collect cash from the rider.
Solution:
To achieve this, added below in UrbanPiper Settings JSON in Global Option.
"MOPOption": "0",
●If MOPOption value is 0, then we will work with single MOP, and if it is one, then we will work with multi MOP.
●If Multi MOP then in settings > MOP > Channel > you had to set UrbanPiper MOP Name.
Scenario:
During transaction If location is changed, the Voucher series, warehouse, etc. should be adjusted automatically as per the location.
Solution:
In Location Master (MIL) - added an option.
Set Voucher Type = No/Yes.
Yes, it will open the voucher option screen to select voucher types in the user master.
In Global Option (TAG) -added an option.
'select voucher option from’ =” Location/user”.
If you select the location, it will pick the voucher option, set in the location master.
Note:
●During any voucher entry, If the input screen is blank during any voucher entry, only we will allow the change of location.
●We will not allow the location to change location in modify mode.
Scenario:
During quick mode order to scan Order, the user has to press the F3 button to open a list of pending orders and search or review the order to select the second-order again to press F3 and scan.
To make it easy, we need a single search screen from where users can scan multiple orders one by one and search saved templates from this search box.
Solution:
In Global Option (TAG) - added two more options in Scan Start Sentinel.
●Quick Order (Touch POS) = List of Sentinel
●Load Template(Touch POS) =List of Sentinel
Based on these setting -In Touch POS Sale (STT) - Register Mode -
A barcode scan based on this sentinel Quick Order or saved template will be populated.
Note:
We have to set “Prompt for register mode = yes” in sale option to keep open the product code scan window.
Scenario:
Sometimes in customer databases, there are more than 10000 Data in the masters. It is too difficult to open the list for search. Sometimes it's Showing Out of memory.
Solution:
In Global Option(T-A-G), three options are added...
●Filter Customer Master List = No/Yes.
●Filter Product Master List = No/Yes.
●Filter Account Master List = No/Yes.
If yes, then wherever you try to open master List then following parameters will be
asked
For Customer Master,
●Customer Name
●Customer Id
●Mobile No.
Search Parameter in Product Master List,
●Product Name:
●Product ID:
●UPC/EAN:
Search Parameter in Account Master List,
● Account Name:
Based on these parameters, a filtered list will open.
Note:
1.If the user enters less than five characters, then the Master list will not open.
2.If the user enters More than five characters or exact name, the name will automatically show up.
3.If the user enters the exact mobile no. and customer card id, then the master will select the customer that he/she wants.
If user press exit mode in the search box, then the customer list is opened automatically.
Scenario:
While opening scheme and promotion or recipe, we recalculate the stock that takes a lot of time. You might want to disable this to speed up the opening.
Solution:
We have disabled the stock update for master by default by ading the following option in In Global Option ( T>A>G ),
"Update stock during master creation = No"
Just set it YES if you want update stock on opening of Scheme & Promotion Master or Product Recipe Master (BOM).
Scenario:
You might want to import products from the third-party system where they use a barcode format like PPPPPP.XXXX.
Wherein P stands for the product code and X is a running qty for that particular product.
In our system, these barcode from this third party should work.
Solution:
First of all, we need to import the first P digits into our User Defined Code.
Then set the following global option as
"Truncate Product Scan Field After = . (DOT)
You need to enter the character you want to use to separate the product code from the barcode string.
Once you set DOT in above option, any input in the scan field will be truncated after this character.
Scenario:
Card discount should be applicable when OTP received at customer mobile no entered into the system.
Solution:
In Global Option ( T>A>G ), an option has been added
OTP for Card Discount (Sale) = No / Yes
●On selection of a customer, the system will check if there is any card discount for the selected customer, if found then it will send an OTP to customer mobile no.
●It will send a default SMS to the customer.e.g.
○“Please share this OTP <OTP> with the cashier to get "n"% discount .Thanks”.
●It will ask for OTP before ordering.
●The cashier needs to enter the OTP to proceed further.
●It will work for both STT & STS.
Note: If user changes the customer after ordering, it will again send the OTP to new customer and ask for OTP and recalculate the discount and taxes accordingly.
Scenario : Manual Discount to any item or bill will be given after entering OTP which will be sent to customers mobile . The cashier needs to enter the OTP to proceed further.
Solution:
In Global Option (TAG) , We have added an option
"OTP for Bill and Item Discount in Sale = No /Yes"
If option is set to Yes, on using item discount button, it will ask for OTP after entering manual discount (In amount or %), and will send a default SMS to the customer “Please share this OTP <OTP> with the cashier to get discount. Thanks."
Notes
●The cashier needs to enter the OTP to proceed further.
●If the customer is not selected OR mobile number is not entered, then it will show a message "You need to select the customer with a mobile number for the discount."
●In Scan POS it will work only for item discount only.
●In Touch POS it will work for both on item discount and bill discount.
Scenario : Sometime the blank cards generated for a particular location gets over. The operator is then unable to create new customer from advance customer screen. They need to contact HO to create blank cards for that particular location. Only after that operator will be able to create new customers.
Solution : In Global Option (TAG) - We have Added an option
No of Blank Cards to be generated = 50 (max input 1000) (0 means disable)
Now in Branch > In advance customer screen > if there is no blank cards available it will create blank cards automatically based on number defined in the TAG. This will work at both HO and Branch
Note:
The HO data service should be accessible at the time of generating the blank card.
Scenario: If the database is large it takes a long time to open "Scheme and Promotion" and "Recipe Master". This happens because it does stock calculation before opening the above master.
Solution : We have given an option in TAG > "Update Stock During Master Creation = Yes / No / Ask"
If it is set to NO, then Recipe and Scheme master will use existing stock table without recalculation, and it will open very fast.
Enhancement in Masters for Indian GST Readiness
Global Option (TAG)
●Check Place of Supply for GST = No / Yes
○You have to set this option to yes in order to make GST calculations applicable.
Scenario: If you are wondering about the accuracy of the customer data being created by the operators, then you might want to get it verified by OTP on SMS.
Solution : We have introduced OTP based Customer Registration.
●In Global Option ( T > A > G) we have added a field called OTP Verification for Customer Creation.
●Set this field to Yes
●Now whenever you will try to create a new customer it will send an OTP via sms to the Mobile Number entered in customer master. In order to save the customer data you need to enter that OTP.
The following option has been added in the Global Option (T>A>G)
●Check CRM Point Balance from = Local / Head Office
Working: If the option is set to Head Office
During Sale - on entering the amount in CRM Point Redeem MOP, balance will be checked from HO database and then balance will be matched with local balance.
●If the there is no connectivity found with HO data, then a message will be shown
"Unable to connect to head office server. Please try again."
In this case, you can not take payment in CRM point redeem MOP.
●If HO and Local point mismatch, message will be shown
"Cannot Redeem Points due to a mismatch in points with head office."
●Rest of the functionality will be same.
i.e. It will save points locally and it will travel to HO via ML as usual.
●Working: If the option is set to Local
There is no changes in the working.
Constraint:
●We can validate the point from HO but can not updated as it's part of transaction. So the transaction has to be saved at the branch. It goes to HO via multi location.
●There can be time lag between status of point at HO and Branch.
●Super Constraint: Consider this scenario > Point Redeem > Data not travel to HO > Again point redeem.
In Global Option, the following has been added
Sale to Purchase Conversion Method = Use Existing Child / Generate New Child ids
A new method of communication called, "Link without IP" has been added in the Global Option.
It is used in the following case
●You can use this method if your internet service provider does not provide you with a fixed IP address.
●If the port forwarding does not work due to router issues.
How to use
●Set "Method of Communication = Link without IP" in global option.
●The RanceLab must be started (login or logout) at the HO server.
●Create link file using "Export Link Settings" and import it in the branch.
FAQ
1. How does it work?
●The HO and branch are directly connected using a link server provided by us. The link server act as an operator to establish a direct link between the ho and the locations.
2. Does the link server stores any data?
●No. It does not store any data. The link server just helps to connect the locations.
●The HO and branch are directly connected.
3. How to check if it is working?
●Try sending and receiving some data in order to check if it is working.
●From the branch, you should be able to modify a master or run the compare data report.
●From Head Office > Check task manager > Check if RanceLabLWOIP.exe is running
4. What needs to be done if it is not working?
Steps for HO
▪Check if RanceLab is started at HO server.
▪Task Manager > Check if RanceLabLWOIP.exe is running.
oThe RanceLabLWOIP exe must be started at the HO server.
oThe RanceLabML.exe is responsible to start LWOIP exe.
oThat means the software must be started at the HO.
▪Go to TG > Click on Remote Service > it should open the data service page.
▪Check www.rancelab.org > it should display > rancelab link server is working.
Steps for Branch
▪Go to TG > Click on Remote Service > it should open the data service page.
If these are ok but the link is still not working then contact the support team.
5. What is the difference in IP and Link without IP?
There is no difference as such, except the LWOIP method uses the link server to connect the ho and branches. All the functions, like compare the data and create masters, available in IP are also available in LWOIP.