Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Linux At the Point of Sale

Posted by kdawson on Sunday February 24, @04:05PM
from the pos-that-refreshes dept.
NegativeK writes "I work at a local comic and games shop, and I've been kicking around what it would take to implement a barcode scanner and more detailed inventory control. Currently, the setup is a low-tech register that tracks general areas of sales: new comics, ccgs, Games Workshop, rpgs, etc. Requirements include FOSS on Linux, the ability to use a cheap scanner, datamining, and output in a useful format (perhaps OpenOffice spreadsheet). The idea hasn't been pitched to the shop owner yet, so ease of use is probably more important than anything — but breaking out the programming books to work on parts isn't out of the question for me. Assuming the actual register stays, what resources are out there for a barcode/inventory implementation?"

Related Stories

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

Linux At the Point of Sale 25 Comments More | Login | Reply /

 Full
 Abbreviated
 Hidden
More | Login | Reply
Keybindings Beta
Q W E
A S D
Loading ... Please wait.
  • Book on this topic (Score:5, Informative)

    by CRCulver (715279) <crculver@christopherculver.com> on Sunday February 24, @04:08PM (#22538222) Homepage
    John Locke's Open-Source Solutions for Small Business Problems [amazon.com] dedicates space to POS issues.
    • Re:Book on this topic (Score:5, Funny)

      by Anonymous Coward on Sunday February 24, @04:20PM (#22538382)
      John Locke? I'm Lost...
    • Re:Book on this topic (Score:5, Informative)

      by Anonymous Coward on Sunday February 24, @04:40PM (#22538564)
      Don't forget that PCI requirements will force any credit card support get certified. If you want to "home brew" you will have to forgo the credit card support and still use the cc machine next to the register. (unless you have $25k laying around to get certified)
      • Re:Book on this topic (Score:5, Informative)

        by Nikker (749551) on Sunday February 24, @04:57PM (#22538720)
        You don't need to be certified to process credit card charges. It really depends on the quantity of processing and how the data is handled. You can be investigated to see if all transactions and data are encrypted to standard. An easy way to get around this is to go with a company that allows access via HTTPS where you submit the holders info and they do all the processing. As long as you keep all data pertaining to credit card numbers and other special account numbers owned by banks encrypted and central to your own physical computer then there is a lot you don't have to do.

        As well unless you are processing millions of charges a year it will not take you 25k to have some one certify you. That is if you are big enough to deal directly with lets say visa or a bank directly is when you need that type of audit. Many companies exist (Eigen is one of them) that will take care of the communication to the bank its self while provided they only allow communications via a certified secure protocol (HTTPS/SSH/SFTP) you are good to go. You are required to sanitize the card numbers by removing the middle digits preserving just the first and last number of the card.
    • Re:Book on this topic (Score:5, Interesting)

      by Ian.Waring (591380) on Sunday February 24, @05:06PM (#22538798) Homepage
      Or you could go ask GNU Solutions [gnu-solutions.com] or PCMS [pcmsdatafit.com] about how they fitted out one grocery retailer in the UK with an end to end Linux Point of Sale system.

      Ian W.
    • Re:Book on this topic (Score:5, Informative)

      by The Snowman (116231) * <john@johngaughan.net> on Sunday February 24, @08:44PM (#22540672) Homepage

      My company develops and supports retail point of sale software for a large number of retail chains. In the interest of ensuring my job security I will not identify my employer, but I can offer some insight.

      The first thing to do is check out JPOS [javapos.com], an open source mini-framework for controlling POS peripherals such as MICRs, sigcaps, pole displays, barcode scanners, MSRs, receipt printers, etc. This will only help if you are using Java, but there may be similar libraries for other languages. Regardless, playing around with JPOS may help you understand the hardware and how all the pieces fit together.

      Please realize that even a small inventory application is a major undertaking. The software I work on has an inventory module, and it is insanely complex to meet the requirements of retail inventory. Hardware abstraction can be a pain too, as you need to code at a high level in your application but deal with low level crap that most devices throw at you. For example, scanning a barcode sounds simple and may be relatively easy for UPCs, but what about SKU or inventory tags that are nonstandard? You can program the scanners to pad zeros, truncate to a specific length, strip or retain check digits, etc. and there are so many pieces of hardware out there that behave slightly differently it will give you a headache.

      If you decide to add credit card processing, my advice: don't. If you have to ask this question to Slashdot, you are not prepared to deal with PCI-DSS [pcisecuritystandards.org] compliance. It costs a lot of time and money to process cards securely and to prove to the payment processors that you can do it securely.

  • Your boss has responded (Score:5, Funny)

    by awkScooby (741257) on Sunday February 24, @04:08PM (#22538230)
    No you may not
      • Re:Your boss has responded (Score:5, Insightful)

        by Skim123 (3322) <mitchell@@@4guysfromrolla...com> on Sunday February 24, @05:07PM (#22538816) Homepage

        Not only that, but if any programming is involved, now the manager is doubly-screwed when this employee finally moves out of his parent's house and quits his comic book shop job. If there's a problem with the system, or some added functionality needed, now he's got to find someone who's both a programmer and willing to work for minimum wage.

        • Re:Your boss has responded (Score:5, Insightful)

          by holophrastic (221104) on Sunday February 24, @06:38PM (#22539686)
          Actually, quite the opposite. In that situation, the manager now needs to pay the programmer a much larger wage to keep working on it, or to train someone new.

          You guys always think of the client's interests, but you seem to forget that the client's interests fall into five areas -- not spending money, not spending time, not spending effort, not learning anything new, and still getting lots of work out of the vendor. That's business.

          The trick with any lock-in style effort is to balance the client's interests with the vendor's interests in order to achieve a relationship that grows both businesses, ultimately giving each side more money with less effort down the road.

          There's nothing wrong with supplying a solution that requires a compatent and trained individual to maintain it. And there's nothing wrong with the original vendor being in the significantly better position to do so. In can actually be a great thing for the client when you consider the extra work that a vendor can do when the vendor knows it's a long-term commitment.

          In my company, we call it "aligned interests". It's the "you lose, we lose; you win, we win" philosophy that ultimately penalizes everyone should either party quit at any stage, and rewards everyone each time either party continues forward.

          It's also called being proud of and empassioned in your work.

          What you guys keep suggesting, by favouring the client in every stage, is more of a "you lose, we lose; you win, we lose" scenario because when everything pans out perfectly for the client, and the solution works, and their business grows, the original vendor is undoubtedly replaced by someone cheaper -- or no one at all.

          Long-term business just doesn't work that way. The business world isn't the cosumer world where you sell a product, and hope to never pseak with the customer again -- because customer service and technical support are expensive to supply -- and hope the product breaks just after the warranty period -- so the customer comes and buys another.

          The idea of "aligned interests" is that the client and the vendor both want the same thing and both benefit from that thing. The client wants a solution that lasts forever. The vendor needs to want that too. The client wants to get the best quality parts. The vendow needs to want that too. Otherwise you get today's consumer computers -- cheap parts, low-quality components, crap customer service, worse techincal support, and really easy to purchase a new one. The companies tend to start with the letters "D", "G", "A", or "H". And of course that's the case, they spend less money, charge more, and profit more. The only people who get screwed are the customers -- who've come to expect the products to be crap, but don't realize why.

          In the business world, you can't throw out your iPod and get a new one when it breaks. In the business world you can't sell an iPod and replace it when it breaks. In the business world, you have to take the broken iPod and not only replace the device, but also replace the data stored on the device. Your clients are not consumers -- they don't consume your product/service. In the business world, the solution that you provide to your clients needs to be reliable enough for your client to base his business on -- if that solution is integral to their business, obviously.
  • Job (Score:5, Funny)

    by DoofusOfDeath (636671) on Sunday February 24, @04:09PM (#22538236)

    "I work at a local comic and games shop,

    Wow, didn't see that coming from a /. reader ;)

  • I guess that settles it (Score:5, Funny)

    by noamsml (868075) <noamsmlNO@SPAMgmail.com> on Sunday February 24, @04:11PM (#22538262) Homepage
    Linux's critics will call it a POS operating system.
  • Try Sourceforge (Score:5, Informative)

    by drewmoney (1133487) on Sunday February 24, @04:12PM (#22538274)
    This one comes to mind: Openbravo [openbravo.com] Again, try sourceforge.
  • Lemon POS (Score:5, Informative)

    by martin-sandsmark (1148615) on Sunday February 24, @04:16PM (#22538336) Homepage
    I think Lemon POS fits the bill quite nicely:
    http://lemonpos.sourceforge.net/ [sourceforge.net]
    It runs on KDE 4 though, so it might not be completely production ready yet.
  • Buy something off the shelf (Score:5, Insightful)

    by Anonymous Coward on Sunday February 24, @04:20PM (#22538380)
    This comment will not be appreciated by Linux die-hards: I recommend you to opt for a relatively affordable and popular off-the shelf product. Why not something that you hack together from a collection of open source libraries? Well, if you will stop working at the shop then at least your boss will have access to support. Yes, I know that there are plenty of forums for support of OS software, but typically these are mainly good if you are already pretty techy.
    In this case, I don't see the need for a religious OS war. Just buy a decent an popular tool, no matter what the OS is.
    • Excellent advice, but let me add... (Score:5, Interesting)

      by rufusdufus (450462) on Sunday February 24, @05:29PM (#22539016)
      I used to own a bookstore and had the exact same idea. Since I am a competent programmer I build my own scanning system. It worked fine. But.
      I wasted a lot of time on that system, and should have just bought an off-the shelf product. But.
      In actual point of fact, the data mined by using the scanner was useless. The reason for this is simple: the manager of a small store who spends a good part of their lives inside will already know what needs to be done, whats selling and whats not. There is little insight gained from the data you gather.
      And.
      It degrades the customer experience in subtle ways. First off, it makes the transaction just a little bit slower. This irritates customers. Next, it adds a level of distraction to the employees whey they have to pay attention to so fine a level of technical detail; the added 'cognitive load' of using and keeping the system up to date fatigues them and makes them more system oriented and less customer oriented.
      In short: this sort of fine level of tracking is net negative to a small retail business.
    • Re:Buy something off the shelf (Score:5, Informative)

      by Anonymous Coward on Sunday February 24, @06:09PM (#22539412)

      I had a similar idea as the poster a year ago with my father's retail shop. Previously they printed prices on products and typed these prices into the register (an old, gloried calculator mind you). Needless to say, with rising prices and 3000+ products, the menu costs [wikipedia.org] were very high!

      Having grown up on FOSS and thinking this would be a "fun" project, at first I seriously considered writing everything from scratch. I then realized how many moving pieces I had to deal with just from the register side: sales, discounts, sales tax, receipts, barcodes, prices, inventorying updating, holding receipts, canceling receipts, etc. Then consider all of the non-register functions: inventory management, ordering, vendor tracking, pricing, customer tracking, labeling, etc. Then consider all of the reports you want! If you're not careful, you'll end up writing your own SQL-like language to allow your boss a user-friendly way to figure out sales over given time periods or whatnot. Oh, don't forget financial integration: you'll want to have your costs and revenues automatically tracked, rolled into income taxes, and then nicely reported each fiscal year. I really could go on.

      Sure, each piece is "simple." It's just the complexity associated with so many moving pieces that have to support transactions, security, and some easy way to backup. When your software makes a mistake, real money is on the line. Oh yeah, you'll have to do this on your free time by yourself.

      It's not something you can do, I hate to say.

      If you're like me, your next step is FOSS. I recall looking at SF last year and was very disappointed by what I saw. No system (not sure which ones) felt stable enough to bet my father's business on. It's ok when firefox crashes (and it does), but it's not ok when my dad can't take credit cards (did you plan that integration?) for even 15 minutes. Maybe things have changed in a year or I overlooked some amazing project. That's one of the great benefits of this community -- it will come out in the comments.

      So, after all was said and done, I decided to just buy QuickBooks POS for dad. We bought Small Business Server for the server machine and run XP Pro on the register computer. The system came pre-configured with the hardware we needed -- the barcode scanner, label printer, receipt printer, and a nifty pole for customers. You can see the features on their website and decide if they fit for you. Dad uses their financial and tax software as well, and he seems to like how things "just work." Did it "cost" more than FOSS? Sure, we outlayed more cash up front. But I saved myself a bunch of time and headache, not to mention dad has an 800 number to call first (there is value to this!).

      My advice, having implemented a POS system for a single-site small business: buy a pre-packaged solution. FOSS is great in some situations, but not yet for mine. It's cheaper than you think if you really need POS.

      I don't work for Intuit, and I'm posting as AC for fear of blaspheming the TCO of FOSS on slashdot.

  • The pieces are all there. (Score:5, Interesting)

    by Chandon Seldon (43083) on Sunday February 24, @04:20PM (#22538384) Homepage

    The pieces to implement any sort of reasonable retail POS setup using FOSS are all available.

    There are two things that it sounds like you're going to have problems with though:

    1. Budget - Doing this sort of project poorly is worse than not doing it at all - you're going to want to cough up the money for a real barcode scanner and a real POS cash drawer to replace your current register.
    2. Realistic features - This problem has already been solved, and well, but if you make up a bunch of random features beforehand (like OO.o spreadsheet output) you can be sure that none of the existing solutions will have the exact feature set that you're imagining. Unless you're prepared to write an entire system from scratch, see what exists and adapt to it.

    The last time I looked into this specific problem the nicest looking piece of software for my requirements was L'âne [l-ane.net], but you'll want to actually do the research yourself (try searching on Freshmeat [freshmeat.net] and Sourceforge [sourceforge.net] at minimum).

    • by xtracto (837672) on Sunday February 24, @04:31PM (#22538478) Journal
      I am so tired of these "look at sourceforge and freshmeat" answers we get everytime someone asks for advice on slashdot. I am sure peope already know those exists. But have you *really* tried looking for a software project in SourceForge lately? I have. And even though the filters are nice, the amount o garbage projects out there is amazing. And there are so many projects that misleadingly have the "stable" or "production ready" labels which are not even on pre-alpha. Or others that say they are focused to "end user" and is a darn API.

      Really, the noise-ratio of SourceForge is amazing, given that everyone and their mother can upload projects. When someone posts in slashdot is to know things that have *worked* and are working currently for other people. Sure, there are thousands of books about dating on amazon, but if you wanted one, you would go ask some people (not in slashdot of course ;-)) which one would they recommend...

      If you are going to recommend to look on SF or FM, then please consider just looking at the next story on slashdot... you really do not add anything useful to the conversation.

      And to the parent, sorry it is nothing personal, but most of the posts I read at the time of my reply are among the same lines. I am also interested in the original question, but as I said before, I am looking for *experiences* from another people using such software rather than only a list of all the "Yet_Another_P0S I_started_for_school_homework.sf.net"
  • Not much of a problem (Score:5, Interesting)

    by Camel Pilot (78781) on Sunday February 24, @04:32PM (#22538482) Homepage Journal
    Except for this part

    more detailed inventory control

    That is where the works... integrating with the rest of the business software.

    I have written an html/cgi Point-Of-Sale for my wife's hot sauce retail shop [sammcgees.com]. Works excellent and is integrated with a custom and much larger web store builder, order manager, and inventory control. This is the hard part and consists of several thousands of lines of perl code.

    As far as bar code reading you just use a wedge or y cable and it acts just like keyboard input. A little javascript to ensure which form field is the active/default field and you are away. Input can come from a bar code scan or keyboard input for those items which are not bar coded.

    Same mechanisms on vendor order receive for inventory maintenance.

  • STOP (Score:5, Insightful)

    by ceroklis (1083863) on Sunday February 24, @04:47PM (#22538628)
    <paternalist advice>

    Don't do it.

    For you it is "kicking around", a fun project, a proof of concept. For your boss it is a tool, essential for his business, that has to work flawlessly.

    Now ask yourself a few questions:

    • How much work does it take to go from a prototype to a fully documented and tested implementation ?
    • Are you going to be paid for this ?
    • When are you going to do it ? On the week-end ?
    • Will your boss expect you to offer 24/24 support, since it was your idea ?

    Besides, realize that POS software is the least exciting thing you could work on. If it is not your job, forget it. If you want to tinker with linux and learn things, do something fun.

    Remember: you are not the first [jwz.org].

    </paternalist advice>

  • Why Open Source? (Score:5, Insightful)

    by DavidD_CA (750156) on Sunday February 24, @04:50PM (#22538666) Homepage
    I realize this is Slashdot, but for your owner's business why does this have to be an open source solution?

    There are plenty of businesses who are quite satisfied with solutions from Intuit or Microsoft that are very affordable, easy to use, and much more "out of the box" than any open product.

    And if your owner is already using QuickBooks or Small Business Accounting, then a POS solution can tie directly into it.

    Remember that your employer is going to pay either way. Either by paying you to piece together a solution for him or by paying for off-the-shelf software. You would be doing a disservice to your employer to only recommend one side of the fence.
      • Re:Jeff Albertson (Score:5, Interesting)

        by cp.tar (871488) <cp.tar.bz2@gmail.com> on Sunday February 24, @05:46PM (#22539204)

        Google it. POS on linux is not at all new, on *nix it is positively ancient.

        Quite. Konzum, the largest Croatian supermarket chain, runs all POSs on Red Hat.
        The owner of the chain saved millions on Windows licences alone.

        I don't like the store, but I was mightily impressed when I first saw the Red Hat login screen on their POS.
        I considered it quite uncommonly sensible business practice, at least for Croatian standards.