Creating booking system for items I am thinking of the best approach for a small website selling only two products - two sets of coin printings - one gold, and one silver. There are only 100 products of each set made, all gold are the same price, all silver too.

I need to create a system of 10 x 10 table (100 items) containing numbers, each one cell can be clicked and "reserved" (by ordering) - then administrator will ship the product and mark the cell as "sold", so each number can be bought only one time.

Now I was thinking of several methods to achieve this:


Using Drupal Commerce, which is quite robust for only two products.
And I do not really want to have 200 same products on site differing
only by ID and cell number.  Maybe having only two products, adding
some kind of field in this product with data of which numbers were
already sold and then providing this field in product display would
do the trick.
Using Webform, products can be nodes, there is no need
for checkout, webform components should contain things like shipping
and billing information and product nodes can have the same field
with table as specified upper. Order mails can also be provided by
webform. 
Some other already made system for things like this, I was
thinking about booking systems, but most of them are locked on dates
I guess.
Other ideas?


Also the only payment method will be paying directly to bank account, nothing else. Back account creditials will be mailed to customer, they only need to contain order number or something because if all the orders are mostly the same amount, it would be hard to recognize which payment belongs to which order.
Shipping method will again be only one, customer only need to be informed.

Thanks in advance.
Assuming this is about D7, here is a blueprint of just another idea (as in your bullet item "4"):


Create a single node for each number, of content type (say "Golden Coin"), so  10x10 = 100 of such nodes.
Use the Views module to display a 10x10 grid of those 100 nodes, and link each of them to there corresponding node.
Use the Flag module for authorized users to "flag" such nodes, to indicate "reserve this one".
Use the Rules module to make the remaining magic happen, using Rules Events such as "When such node is flagged", with Rules Actions such as "Create appropriate notifications (eg towards the admin)".
Repeat the above for "Silver Coin", or add an extra field to the Flag you'll be using, to select between "Silver" and "Gold".