Hey all,

I'm getting ready to (possibly) pitch a project here in town for a local bookseller. She wants to develop an inventorying system for her site backend that lets her add inventory records based on an ISBN number only.

Obviously I'm going to need some sort of hefty database or (more likely) some sort of subscription based web service (SOAP or RIFT I imagine) that makes a books-in-print database portable...

However despite many google searches, I can't seem to find anything even remotely affordable for a local bookstore - in fact nothing that isn't serious overkill.

The question is, have any of you or has someone you know developed a site for a local bookstore where they were able to employ ISBN searching from a web service.

Any points in the right direction as to where this data could be accessible would be greatly appreciated. Obviously as a for-profit entity, I don't expect it to be free, but I can't even find a commercial service.


Try rolling your own. You don't need anything super fancy, a basic MySQL/PHP on a rented box would work fine. I've got old 400mhz boxes purring along with a million mysql records in them and they search and display fine.

What you WILL want is a USB barcode reader (like Cobra) to read the ISBN barcode and turn it into a normal number. That way staff can scan books without typing names and searching etc.

If you are selling online, you will probably want to add some fields like "description", "reviews", "cover_picture", etc but you can get started with a table that has:
id (incrementing)
isbn (unique) that'll catch any double accidental entries!

Then the web site can search on whatever.

Later when they love you, adapt it to be their point of sale as well so they only manage inventory in one place and both website and cash register are integrated.

That's pretty much the plan, but I thought I'd share a resource that I've found since this post for the longevity of the forum.

The Library of Congree (LoC) has (as one would imagine) a great database of metadata on virtually every book published in the US. These records (called MARC records) are accessed via an international protocol standard (largely managed by the LoC due to their primary use of it) called Z39.50.

There's a PECL pacakge produced by http://indexdata.dk/ called PHP/YAZ which is an Z39.50 client for PHP written in C. It rocks, and lets you call querys to Z39.50 servers on several methods, including ISBN/EIN. The protocol is fast, and the servers are public and pletiful. For a list, check out http://www.loc.gov/z3950/ -- the LoC's local server, Voyager, has about 14 million records, and the other libraries often have records that the LoC itself lacks.

The PHP/YAZ extension obscures most of the extreme complexity of Z39.50, and in a fairly short script (40 or so lines) you can query one or multiple servers and

From 1972 to present (excluding some very new publications) you can retreive a MARC record on an ISBN alone. I've had good results with consumer texts and academic textbooks alike.

This method is fast, robust, and although not entirely complete, pretty damned near so. A SOAP/REST service would be easier to implement, but the lack of available services makes more sense to me now that I know about MARC and library lookups. The information is available, just via an atypical protocol for data portability.

Examples can be found abounds. Check out a google search for PHP/YAZ to get started. It's helped me.

And, in relation to the project, this allows their inventory backend to do quick lookups with about 96% completion, on the ISBNs in their store. A simple "No result found" with an alternative to manually enter the information completes the needs of bookseller SME's well without having to sacrifice themselves to using the web services of an e-commerce juggernaut like Half.com or Amazon and, subsequently, forking over a percentage of profits.

Once the data is retreived, it will be stored in a local MySQL database that will represent the store's actual inventory and ta-da! -- easy e-commerce integration with mySQL based suites like MIVA.

Should be a thing of beauty... ask me again in 6 weeks when the project comes due how it turned out :)


Thank you for following up. This information helps me. Your follow up post is what many threads are missing--a final solution follow up to help the community of seekers that come after you. Thanks!

Hey, it's the least I can do. Forums like this place are where I learned what little I do know :) (Thanks Dani!)