Importing items on BrickLink with XML

Throughout BrickLink you can import and export items in bulk with in the XML format to quickly add items to your collection, add a catalog inventory, add items to your Wanted List, etc.

Below is an example inventory of the Skeleton with Standard Skull minifigure in the BrickLink XML format:

  • <INVENTORY>
    • <ITEM>
      • <ITEMTYPE>P</ITEMTYPE>
      • <ITEMID>6260</ITEMID>
      • <COLOR>1</COLOR>
      • <QTY>1</QTY>
      • <CONDITION>N</CONDITION>
    • </ITEM>
    • <ITEM>
      • <ITEMTYPE></ITEMTYPE>
      • <ITEMID>3626bpb0001</ITEMID>
      • <COLOR>1</COLOR>
      • <QTY>1</QTY>
      • <CONDITION>N</CONDITION>
    • </ITEM>
    • <ITEM>
      • <ITEMTYPE>P</ITEMTYPE>
      • <ITEMID>6265</ITEMID>
      • <COLOR>1</COLOR>
      • <QTY>2</QTY>
      • <CONDITION>N</CONDITION>
    • </ITEM>
    • <ITEM>
      • <ITEMTYPE>P</ITEMTYPE>
      • <ITEMID>6266</ITEMID>
      • <COLOR>1</COLOR>
      • <QTY>2</QTY>
      • <CONDITION>N</CONDITION>
    • </ITEM>
  • </INVENTORY>

Creating an Inventory in BrickLink XML format

  • A BrickLink XML formatted file cannot have an XML declaration. For example, any line similar to <?xml version="1.0" encoding="UTF-8"> must be removed.
  • A BrickLink XML formatted file must open with an <INVENTORY>; tag and close with a corresponding </INVENTORY> tag. This is known as the INVENTORY element.
  • An item being listed in a BrickLink XML formatted file must open with an <ITEM> tag and close with a corresponding </ITEM> tag. This is known as an ITEM element. One or more ITEM elements must be placed inside the INVENTORY element (i.e., between the <INVENTORY> and </INVENTORY> tags).
  • An item being listed in a BrickLink XML formatted file must contain four required elements and can contain other optional elements. Whether required or optional, these elements must all be placed inside an ITEM element (i.e., between the <ITEM> and </ITEM> tags for a given item). Omitting one or more of the required elements will result in an error during the upload process. The following table summarizes the elements available for use inside an ITEM element.

Below are some guidelines and explanations for each of the available tags in the BrickLink XML format:


Element Usage Details
ITEMTYPE <ITEMTYPE> value</ITEMTYPE> value must be one of the following: S (for a set), P (for a part), M (for a minifigure), B (for a book), G (for a gear item), C (for a catalog), O (for original box), and I (for instructions).

Note: A minifigure inventory can only contain parts.
ITEMID <ITEMID>value</ITEMID> value is the Item No. for this item in the BrickLink catalog.
COLOR <COLOR>value</COLOR> value is a color ID from the Color Guide

Note: If this item is a set, a minifigure, a book, a catalog, an original box, or instructions, value must be 0.
CONDITION <CONDITION>value</CONDITION> value value is the condition of the item.

Valid values are N or U, for New and Used respectively.

Note: Please see the “Items For Sale Condition” article for more info.
SUB-CONDITION <SUBCONDITION>value</SUBCONDITION> value is used for items that contain other items, such as a set.

Valid values are C, I, or S, for Complete, Incomplete, and Sealed respectively.

Note: Please see the “Items For Sale Condition” article for more info.
QTY <QTY>value</QTY> value is a whole number greater than 0 representing the quantity of this item in the inventory.
EXTRA <EXTRA>Y</EXTRA> This element is only needed when this item is an extra item in the inventory. Refer to the Inventory Sections help page to determine if this item is considered an extra item for the purposes of the inventory.

Note: A minifigure inventory cannot contain extra items.
COUNTERPART <COUNTERPART>Y</COUNTERPART> This element is only needed when this item is a counterpart in the inventory. Refer to the Inventory Sections help page to determine if this item is considered a counterpart for the purposes of the inventory.

Note: A minifigure inventory cannot contain counterparts.
ALTERNATE <ALTERNATE>Y</ALTERNATE> This element is only needed when this item is an alternate item in the inventory. Refer to the Inventory Sections help page to determine if this item is considered an alternate item for the purposes of the inventory.

Note: A minifigure inventory cannot contain alternate items.
MATCHID <MATCHID>value</MATCHID> This element is only needed to create a match between one or more alternate items with one or more regular items. Regular items are those that are not extra items, counterparts, or alternate items.

Value is a whole number greater than 0 representing the match ID for a group of items that are matched together in the inventory. value should start at 1 for the first group of items that are matched together and then be incremented by 1 for each additional group of items that are matched together. value must be the same for all items in the same group.

Note: All items with a match ID must be sorted at the bottom of the inventory.
MAXPRICE <MAXPRICE>value</MAXPRICE> This is the maximum price you are willing to pay per piece on an item in your Wanted List.

Value is a currency amount, e.g., 0.43
MINQTY <MINQTY>value</MINQTY> The quantity of an item that you want in your Wanted List.

Value is a numeric value, e.g., 100
QTYFILLED <QTYFILLED>value</QTYFILLED> This is the quantity of the item that you already have.
REMARKS <REMARKS>text</REMARKS> Remarks are any comments you want to leave for yourself to see. This is only visible to you.

Text is any alphanumeric text needed for your comment.
NOTIFY <NOTIFY>Y</NOTIFY> Do you want to be notified when a seller sends new inventory emails out containing this item? Y or N
WANTEDSHOW <WANTEDSHOW>Y</WANTEDSHOW> Leaving blank or entering Y will include this item in item for sale inquiries.

This is only used in Wanted List.
WANTEDLISTID <WANTEDLISTID>value</WANTEDLISTID> The ID of the Wanted List you would like an item to be added to.

Leaving this blank will add the item to your default Wanted List.
CATEGORY <CATEGORY>value</CATEGORY> The category in which your item belongs in the BrickLink Catalog. You can view the Category table here.
PRICE <PRICE>value</PRICE> The price of an item you are selling.

Value is a currency amount, e.g., 0.43
BULK <BULK>value</BULK> The number in which a buyer can purchase your item in bulk, e.g., you have 100 red bricks, and users can purchase them in batches of 10. Your bulk value will be 10.
DESCRIPTION <DESCRIPTION>text</DESCRIPTION> The description of an item that a user can see in your store. This is very useful to note any defects or missing items.
SALE <SALE>value</SALE> You can put items in your store inventory on sale.

Value is a percentage number, e.g., 15 would be 15% off.
STOCKROOM <STOCKROOM>text</STOCKROOM> You can designate an item as a stockroom item. This means that you can keep track of the inventory, but buyers will not see this item in your storefront.
STOCKROOMID <STOCKROOMID>A</STOCKROOMID> If you have multiple stockrooms, you can designate in which item that stockroom belongs.

You can use A, B, or C.
RETAIN <RETAIN>Y</RETAIN> Designate whether you would like to keep items in your store inventory when their quantity reaches 0. If N, the item will be deleted when it reaches 0 quantity.
MYCOST <MYCOST>value</MYCOST> You can keep track of the price you paid for an item in your inventory.
MYWEIGHT <MYWEIGHT>value</MYWEIGHT> You can put in a custom weight for an item that is different from the weight listed in the BrickLink Catalog.

This is measured in grams.
BUYERUSERNAME <BUYERUSERNAME>username</BUYERUSERNAME> If you would like to reserve an item so that only a particular user may purchase it, you can enter their username here.
TQ,TP <TQ1>value</TQ1> <TP1>value</TP1> <TQ2>value</TQ2> <TP2>value</TP2> <TQ3>value</TQ3> <TP3>value</TP3> These tags allow you to assign Tiered Pricing.

TQ is the quantity of item in the tier.
TP is the price of that tier.
EXTENDED <EXTENDED>text</EXTENDED> This is the extended description that users can see for an item in your storefront.

This is only available for sets and unsorted lots.
INVDIMX <INVDIMX>value</INVDIMX> This is a custom X Packing Dimension of an item.

This is measured in mm when using XML/CSV.

You can learn more about Packing Dimensions here.
INVDIMY <INVDIMY>value</INVDIMY> This is a custom Y Packing Dimension of an item.

This is measured in mm when using XML/CSV.

You can learn more about Packing Dimensions here.
INVDIMZ <INVDIMZ>value</INVDIMZ> This is a custom Z Packing Dimension of an item.

This is measured in mm when using XML/CSV.

You can learn more about Packing Dimensions here.
SUPERLOTID <SUPERLOTID>value</SUPERLOTID> The numerical ID of a superlot in your store inventory.
Must be the same for all items in your superlot.
STOCKROOM, RETAIN, and BUYERUSERNAME must also all be the same for all items in your superlot.
SUPERLOTQTY <SUPERLOTQTY>value</SUPERLOTQTY> Number of items in your superlot. Must be the same for all items in the same superlot.
SUPERLOTTYPE <SUPERLOTTYPE>value</SUPERLSUPERLOTTYPEOTQTY> Valid values:
  • General bulk lots: 6
  • Paired parts: 2
  • Door on door frame: 14
  • Glass on window: 13
  • Tire on wheel: 3
SUPERLOTREMARKS <SUPERLOTREMARKS>text</SUPERLOTREMARKS> Remarks that are only visible to you.

25 characters maximum.

Supported tags for features that allow XML bulk upload:

Wanted List

Element Required?
ITEMTYPE Yes
ITEMID Yes
COLOR Yes
MAXPRICE No
MINQTY Yes
QTYFILLED No
CONDITION No
REMARKS No
NOTIFY No
WANTEDSHOW No
WANTEDLISTID No

My Collection

Element Required?
ITEMTYPE Yes
ITEMID Yes
CONDITION Yes
SUBCONDITION Yes (For sets only)
QTY Yes

Adding a Catalog item inventory

Element Required?
ITEMTYPE Yes
ITEMID Yes
COLOR Yes
QTY Yes
EXTRA No
COUNTERPART No
ALTERNATE No
MATCHID No

Adding a store inventory

Element Required?
ITEMTYPE Yes
ITEMID Yes
CATEGORY Yes (if ITEMID is blank)
COLOR Yes
PRICE Yes
QTY Yes
SUBCONDITION Yes (for sets only)
BULK No
DESCRIPTION Yes (if ITEMID is blank)
EXTENDED No
SALE No
REMARKS No
BUYERUSERNAME No
STOCKROOM No
STOCKROOMID No
RETAIN No
MYCOST No
MYWEIGHT No
INVDIMX No
INVDIMY No
INVDIMZ No
TQ1, TP1
TQ2, TP2
TQ3, TP3
No
Must include all 6 or none at all
SUPERLOTID Yes for superlots
SUPERLOTQTY Yes for superlots
SUPERLOTTYPE Yes for superlots
SUPERLOTREMARKS No

Updating a store inventory

Element Required?
LOTID Yes
DELETE No
PRICE No
QTY No
Must include a - (minus) or a + (plus) in front of the number to modify the quantity.
BULK No
DESCRIPTION No
EXTENDED No
CONDITION No
SUBCONDITION No
SALE No
REMARKS No
STOCKROOM No
STOCKROOMID No
RETAIN No
MYCOST No
MYWEIGHT No
TQ1, TP1
TQ2, TP2
TQ3, TP3
NO
Must include all 6 or none at all.