Categories for items

      Site(s) to use


      Item conditions

      Payment method

      Quantity and Duration



Log in at https://developer.ebay.com/DevZone/account/

Create Sandbox keys

Create a test user:


And a user token:


On login-in, use the test user's email/password

Save it and set them into the ebay.ini


If you want to test your application's ability to list items in an eBay Store, you need to set up a storefront in the Sandbox.


Categories for items

To get a product listed, it must belong to a category. The category id is site-specific and allows or restricts various feature, like payment methods. IDs for US site, e.g., don't match the DE ones, and could be even missing on one.

So, first thing it to find out the categories for the items.


Site(s) to use

Each site has its own rules, so customers needs to decide which site(s) to use, and choose the categories accordingly. From there we can inspect them and check if the items can be added fine.


All listings must have at least one picture of the item. So, no picture, no listing.


Larger side of the picture must be at least 500px.

No borders. No logo. No text. (Explicitely forbidden).

Stock images are fine for items in new or refurbished conditions.

Item conditions

Shops should apparently use ConditionID set at 1000.

Payment method


It looks like CC is allowed, but for now let's say the test account needs a linked paypal account.

Login at https://signin.sandbox.ebay.com with username/password

On top menu, click on My Ebay

Then click on Account in the tabs

Scroll down:

Your PayPal account => Link My PayPal Account

insert email / password

Quantity and Duration

There is the need to specify how much the listing will last and for how many items. Once the items are sold or the duration expires, and depends on the category as well.

Listing durations are a list of available string. E.g.:


 $result = $eBay->submitRequest("GetCategoryFeatures",
         CategoryID => 159006,
         DetailLevel => 'ReturnAll',
         AllFeaturesForCategory => 'true',

For every listing there is a fee to pay, which is returned on the API calls. So first a Verify call has to be done, to check if the fee is acceptable.