Hack 65 Keep Track of Items You've Sold


Use a simple spreadsheet to record the details of all your closed auctions.

eBay is not your keeper. They won't pick up your room, they won't do your homework, and they won't keep permanent records of your completed auctions.

If you sell on eBay, you'll need to keep some semblance of records of all the items you've sold. You'll need to keep track of who your high bidders are, whether or not they've paid, and whether or not you've shipped. It's very easy to do, and all that's required is a spreadsheet or database (suitable applications include Microsoft Excel and Microsoft Access, respectively, both included with Microsoft Office). If you're not sure which one to use, see Spreadsheet or Database?

Spreadsheet or Database?

Both spreadsheets and databases represent data in a table, a convenient format for keeping track of your auctions. But each type of application has strengths and weaknesses, so you should choose the one that best reflects your needs.

First, if it's too difficult to keep records, then you won't do it. So make sure to choose an application with which you're familiar and comfortable. If you use Excel every day but fear databases, then that comfort level trumps the rest of the considerations that follow (at least for the time being).

A spreadsheet requires minimal setup; just type the column headers explained here across the top, and then start entering the details of your auctions. Spreadsheets are flexible in that they impose few limits on the structure or type of data you enter. For instance, you can drag-and-drop rows to rearrange them, placing multiple auctions won by the same bidder together.

A database is more rigid, enforcing strict rules on the types of information you can place in the various fields. But that rigidity affords certain perks that just aren't available with a spreadsheet. For instance, you can run queries on a database to view sales trends, total spent on eBay fees, and so on, or run reports to make mailing labels. And databases can be much more easily linked to applications (see Chapter 8), making them more scalable. Setup is a little more involved, but if you're comfortable using a database, it's probably the better choice.

If you're diligent about it, you'll never forget to send payment instructions again. You'll always know who has paid (and who hasn't), and you'll know at a glance which items still need to be packed up and shipped.

6.2.1 The Fields

Start by creating a spreadsheet with following columns (or a database with the following fields):

Field name

Data type


End Date


Closing date of the auction.

Item Number


Auction number. In Excel, you can paste the full URL of the auction here, and Excel will create a hyperlink. Next, remove everything except the item number. You can then click the item number to view the auction page.



Auction title or brief description.

Closing Price


The exact amount of the winning bid, not including shipping or any other fees or charges.

Shipping Cost


The estimated cost to ship, as quoted to the bidder. If the actual cost to ship is different, include the difference in the "Fees" column; see [Hack #68] for a way to make sure this never happens.

High Bidder


The user ID of the high bidder. If it's a Dutch auction and you have more than one bidder, include a separate entry (row) for each bidder.

Email Address


The email address of the high bidder. It's important to record this separately from the bidder's user ID, especially if the customer uses a different address than the one registered with eBay.



Mark with a when you've sent payment instructions.

Wrote Back?


Mark with a the first time the bidder writes you.

Have Address?


Mark with a as soon as you have the bidder's mailing address.



The full amount of the bidder's payment. It should equal "Closing Price" + "Shipping Cost," but you could subtract any applicable PayPal fees, for instance, so you have a record of exactly how much money you've taken in. Or use the "Fees" field, below.



Paste the tracking number here as soon as you have shipped the package.



Optional. Any applicable fees imposed by eBay, PayPal, your credit card merchant account, etc.



Any applicable notes, such as the method of shipping, any special requests made by the customer, or related auctions.Also handy for recording the date of a Non-Paying Bidder alert, as described in[Hack #71].

If you're using a spreadsheet, you can set the data type of a field by first selecting the entire column by clicking the column header, and then going to Format Cells Number tab.

If you're using a database and want to print mailing labels, you'll also want to add fields for the customer's Name, Address, City, State/Province, Zip Code, and Country. Refer to your database documentation for details on reports and how they can be used to make mailing labels.

6.2.2 How to Use It

Every time one of your auctions ends, add a row to your spreadsheet or database and fill it with the details of the auction. Keep track of the progress of the transaction: place a in the "Contacted?" column when you send payment instructions, another in the "Wrote Back?" column when the bidder first contacts you, and yet another in the "Have Address?" column when you receive the bidder's full shipping address. Do the same for the "Paid?" and "Shipped?" fields. See Figure 6-1 for an example of how it should look.

Figure 6-1. Keep track of the status of all your closed auctions

6.2.3 Automation

At first, it may seem like a royal pain in the keister to have to write all this stuff down, but it'll quickly get easier. Plus, you'll find that any time you spend on it will be compensated by the time saved in not having to repeatedly wade through your email to figure out who hasn't paid yet.

But for very busy sellers, the task of keeping the spreadsheet or database up to date will quickly get out of hand, and you'll want something less cumbersome. See [Hack #75] and [Hack #76] for some extra-cost, third-party tools that will keep records for you.

But if you're a hacker ? and I think that you are ? you'll probably want to bypass the commercial solutions in favor of something you build yourself. In that case, see [Hack #87] for a custom eBay API-based solution.