Community mailing list archives

community@mail.odoo.com

Re: POS with local storage on disconnected networks

by
Cody Kitterman
- 06/20/2016 23:16:39
Nhomar:

"We used to work with SAP POS and they work in huge Supermarkets and the way it is working is a end-day process where they push thousands of invoices thorught syncronization processes."

Can you give me a realistic edge case for a large retailer? I've been giving some thought to the 'random number'/hash that I proposed and I want to do some math to ensure there wont be any collisions.

If I can figure something out, I'll add it to Odoo's Issues section, and lay it out there.

Respectfully,
Cody K.

P.S.

Correction to last email: 
The invoice you turn in to the tax man would be identical to the one you issued to the customer, except that it would list the "no-gap", 
in addition to the invoice number provided to the customers copy.

Like Mr. Caudal, said:

"I think Cody proposal matches the requirements as far as I can understand: 2 independent sequence numbers (one for the ticket and one for the invoice).
* Ticket displays the random number
* Invoice display random+standard no gap invoice number

You have full traceability in both direction"

In other words, the records will match with the document provided to the customer. No one will be accusing you of tax evasion and/or dishonest tax reporting.

Clarification of 'competitors knowing your business':
'You do not want to expose sequential pkeys/fkeys. Unless your comfortable with your competitors knowing your business...'

Scenario: You own a small convenience store that issues invoices/receipts listing sequential no-gap invoice number. 

There's a competitor that owns a convenience store across town from yours who's looking to expand. Eyeing a location down the street from yours, he wonders: "I wonder what sort of traffic he's getting..." 

1) He's the first person to enter your store and buys the cheapest item you have: a pack of gum.

2) Looking at the invoice/receipt, which lists #1000 as the 'no-gap' number, he wonders if he can't deduce your morning traffic/"rush-hour" business.

3) He returns at noon, buys another pack of gum, and notes that the new receipt/invoice reads #1250. 

"Ergo!", he says, because he now knows you had roughly 250 customers that morning, and what did it cost him: .50 cents? 

4) He waits. He buys another pack after your customers return back to work after their lunch hour....

Do we see? Gauging from the sequential numbering of your invoices/receipts, your competitor can now know for certain as whether or not it would be a good idea to open his next location down the street from yours.

If he watches long enough, he can know the effect of your marketing campaigns, etc...

On Fri, Jun 17, 2016 at 6:35 PM, Cody Kitterman <ckitterm@gmail.com> wrote:
Car Wash:

This can be achieved using proper hardware: proper modem (anything with cellular fall-over), UPS/battery backup. I can tell you that's what the big boys in the U.S. use―Wyndham Hotel & Resorts, Walmart, Cintas, Food Lion, etc―because I've worked with them.

In other words, take it to the bank...

R/S
Cody K.


Mr. Paz:

"As pointed by Mr. Blanco, wherever you are, your records must match with the document you provided the customer... or you will go to Jail for TAX evasion and dishonest tax reporting."


Tax time must get pretty interesting for you: having to ask all your customers for their receipts back, and all.

You're not doing that, of course, and you're not understanding what I'm proposing, sir. I'm not proposing you turn in the "pro forma" invoice. The invoice you turn in to the tax man would be identical to the one you issued to the customer, except that it would list the "no-gap".

For the third time, you do not want to expose sequential pkeys/fkeys. Unless your comfortable with your competitors knowing your business...






On Friday, June 17, 2016, Car Wash Sales <sales@autowash.me> wrote:
This is what I am looking for in Odoo POS as some stores have intermittent internet.

Wonder if they are using same technical concepts.



ALWAYS ON MODE

Continue processing payments and orders to keep businesses up and running even when the Internet or power is out.


https://www.vendhq.com/tour/point-of-sale 

Sell in-store on Mac or PC

Vend is the web-based point of sale system that makes it simple to sell to your customers, and keep them coming back to your store. It works on Mac or PC, online and offline


Cloud-based All data is synced in the cloud and is accessible from anywhere, on iPad, Mac or PC. Works offline POS keeps working even if the internet connection fails. Keep making sales until connectivity is restored.


On Fri, Jun 17, 2016 at 6:11 AM, Carlos Paz <phoenixsampras@gmail.com> wrote:
Then again, ODOO POS offline features, works fine for small, remote, low transaction Shops.

You cant rely hundreds of offline order sales to the web storage in the browser, wich has a 5MB size by design, because it is not persistent, if your browser crashes, or you cannot syn in time... YOU LOST all that information. Then what are going to do?? Invent all the information??

As pointed by Mr. Blanco, wherever you are, your records must match with the document you provided the customer... or you will go to Jail for TAX evasion and dishonest tax reporting.

So for serious business, you will not consider Odoo Pos Offline.

Good Luck!!

On Fri, Jun 17, 2016 at 1:37 AM, Cody Kitterman <ckitterm@gmail.com> wrote:

Mr. Caudal:


Thank you, sir! 

Mr. Blanco:

"This is mostly not acceptable by tax entity. "

I suppose it depends on which tax entity you're referring to. I know for a fact that it's legal in the United States, and I'm not a tax attorney, but it seems to meet the VAT req's for the UK.

"The voucher issued to the customer, call it invoice, receipt, etc should match exactly with your sale records."

Don't take this the wrong way, but in many cases it actually shouldn't. Again, exposing sequential primary keys/fkeys is generally a terrible idea. I've included good sources and so see below:


In fact, if one of you jokers want to poney up to the table and lay down some money, I can demonstrate it with a .ASP web application: Every customer, including their address. 100% legal... 100% open source... It's that serious... 

Still, there are the security risks associated with "fuzzing" —which is less than legal....

If you want a real world example, you can Google "weev" and read about how he compromised 100,000 AT&T customers:
(Courts overturned the conviction , btw)

"(Number, date (time sometimes) type of document)."
 That would come from the "proforma invoice".


RESPECTFULLY,
Cody K.


On Thursday, June 16, 2016, Eric Caudal <eric.caudal@elico-corp.com> wrote:

I think Cody proposal matches the requirements as far as I can understand: 2 independent sequence numbers (one for the ticket and one for the invoice).
* Ticket displays the random number
* Invoice display random+standard no gap invoice number

You have full traceability in both direction

--
Eric Caudal [Founder and CEO]
Skype: elico.corp. Phone: + 86 186 2136 1670 (Cell), + 86 21 6211 8017/27/37 (Office)
Elico Shanghai (Hong Kong/Shenzhen/Singapore) Odoo Gold Partner, best Odoo Partner 2014 for APAC
On 06/17/2016 10:12 AM, Daniel Blanco wrote:
This is mostly not acceptable by tax entity. The voucher issued to the customer, call it invoice, receipt, etc should match exactly with your sale records. (Number, date (time sometimes) type of document). In Some countries are subject to cross controls.

El jue., jun. 16, 2016 19:17, Cody Kitterman <ckitterm@gmail.com> escribió:
Nhomar:
     
"I do not know if you are following the thread in same way I am doing it."

Let me try again:

"How will you respect the No Gap Sequence of Invoices Being Off Line?"


I wont. I'll generate a "proforma invoice" in the "field", which would list a random number (I would have to give more thought to the seed); hand it to the customer, shake their hand, and go about my business.  

Then, wherever/whenever the connection is restored, I have Odoo "push thousands of invoices thorught syncronization processes", storing the random number alongside the "No Gap Sequence".

Now, you're talking about a supermarket, but the concept is identical.

"- What about Customers?"
   I use the random number.


"- What about accounting?"
   They use the "No Gap Sequence", because that's what the tax man wants.

R/S
Cody K.

On Thu, Jun 16, 2016 at 5:52 PM, Ronald Wopereis <woepwoep@gmail.com> wrote:
this helps !
a great deal of supermarket clients in biological stores say no when asked if they want a ticket.
as a matter of fact, we're looking for a module that enables a button in the POS screen asking if customer wants a printed ticket (with the EPSON printer *not* printing by default, but only when the button is pressed).
do you know of such a module for v8.0?
thx, Ron
2016-06-16 23:46 GMT+02:00 Nhomar Hernandez <nhomar@vauxoo.com>:

On Thu, Jun 16, 2016 at 4:38 PM, Carlos Paz <phoenixsampras@gmail.com> wrote:
Well, normally the company must print the invoice in the moment that occurs the transaction (probably most of business have to do this anywhere, europe, usa, latin america, etc), so, by design ODOO POS, cannot generate the Invoice Offline, therefore, the offline feature is mostly useless, you have to be all the time online to sell goods.

Do not Confuse "invoice" with "ticket" in EEUU the ticket is given (and it can be doe properly off-line) and the invoice is asynchornous (frequently sent by email afterwards).


--
Nhomar Hernandez
CEO Vauxoo.
Twitter: @nhomar
Odoo Gold Partner
Skype: nhomar00 (Envia mail previo no lo superviso siempre).
Móvil Venezuela:
+58 4144110269
Móvil México:
+52 1 4773933942

_______________________________________________

_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe

_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe

--
Quedo atento a sus comentarios. Saludos:



Ing. Daniel Blanco
Director
Blanco Martín & Asociados
Skype: hdanielb
Twitter: hdanielb

Chile: 
Blanco Martín EIRL
Apoquindo 6410 Of 212
Las Condes - Región Metropolitana

Argentina:
BMyA S.A.
Nicasio 6970. Córdoba
Argüello - Córdoba



_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe


_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe

_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe


_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe


_______________________________________________
Mailing-List: https://www.odoo.com/groups/community-59
Post to: mailto:community@mail.odoo.com
Unsubscribe: https://www.odoo.com/groups?unsubscribe