We have improved our existing loyalty system and make lots of enhancement. In new system, referral customer and employee will be tracked and get benefits of sales occurred from Sales Order or POS.
Loyalty point begin when customer start purchasing above Purchase Limit and then after customer will always get point on every purchase. In configuration, there are some general configuration for getting points for each one. It is easy to define accounts for discount and cash out.
In Sales Order form, you can select Referral Customer and enter how many points to redeem. Redeem points will be automatically converted into discount amount.
Points will be added in customer after invoice will be paid. (created from sales order).
Referral customer and employee (sales person) will earn points.
You can select Referral Customer from POS and redeem points.
It will print redeem point in POS Receipt.
It will make separate journal entry for redeem points entered from POS.
We can have all points information in customer form also like below images.
Employee will get commission amount in their salary as per their sales during a month and job position in company. Multiplier value will be use for calculation of monthly commission amount. Employee contract must have Working Schedule define.
At time of creating employee payslip, employee points will be automatically selected and use in calculation.
Once employee payslip is confirmed, we will have corresponding points entry in employee form.
In this system, its possible to provide CASH amount to customer instead of discount during purchase and also generating valid accounting entries.
Cash Out will make entry same like redeem point for customer.
Currently odoo has inbuilt option for providing discount on sales order and invoices. But this feature is flawed as it only lets you give discount on each specific order line. In many cases of retail business, the company needs to give discount on final amount of sale order or invoice. So for this scenario we developed a feature called “Global Discount”
Above is a simple sale quotation with global discount feature. We can see on the bottom left part, there is option to apply discount on the whole sale order amount. There are two ways to apply discount as mentioned below: Percentage – This will discount the sale order untaxed total by the percentage amount entered in “Discount” field. Fixed – This will deduct the value entered in “Discount” field directly from the Sale Order untaxed total.
In above shot, we can see a global discount of 10 percent applied to the order, similarly we can also apply a fixed type discount. The flow will also continue when we create an invoice from sale order.
Now lets confirm and create invoice from sale order.
We can see that all the details of discount is carried forward to invoice also, so that we can also change them if we like from the invoice also.
Sometimes a business requires that invoice is created after delivery order, in that case also global discount will work when Invoice Mode is “On Delivery Order”.
In above sale order the Invoice mode is “On Delivery Order”, so first we need to finish delivery.
Now we confirm Delivery Order and then create Invoice.
The invoice created from delivery order will also hold the values for discount that was applied on sale time. So that we can adjust it from invoice also.
Once we validate the Invoice, we would also want to manage the accounting entries related to discount in a proper way. For this we have added an option in the company form as below.
User just need to define which account he wants to use for managing accounting entries for the discounts provided in the field “Select Account for Discount”.
So when we validate the invoice and register payment, it will use the account defined in Company to create related journal items. So we can keep track of discounts provided to our customers.
We have implemented Odoo 8 with BluePay with more functionalities compare to V7 that we did. BluePay with OpenERP V7 In this development we have also made changes for POS Transaction. It is working based on TOKEN concept so it is storing only TOKEN into odoo database and that token will be use for future transactions.
After installing module, it requires to configure Bluepay credentials into Odoo. It is also require to enable accounting journal for BluePay.
There are 2 ways to generate TOKEN and make transactions.
(1) Generate Token from customer form
(2) Generate Token during payment process.
We have added new tab ‘Credit Card’ into customer form which is giving information that how many tokens stored into database with last 4 digits of credit card number.
There is one button ‘Get Token’ into credit card TAB which is asking for information related to credit card and send token request to Bluepay server and store it into database.
After generating token, you can check available balance with customer credit card and get appropriate message from server.
During payment process from POS, first it requires to select journal which is enable for Bluepay transactions. And you will get following screen for credit card payment. You can register new credit card during transaction and it will store into customer credit card token list.
After successfull transaction, it is printing transaction id and auth code on POS receipt.
You can check all information in POS record and make refund or cancel transaction.
You can return order from POS interface based on receipt number and also move them to Scrap location.
Same operations are possible to perform from Customer Payment form. (normal accounting process of Odoo)