BOM Export Guide¶
Generate Bill of Materials for procurement and assembly.
1. Quick Export¶
# CLI
zaptrace export bom --design design.yaml --output bom.csv
# Python
from zaptrace.export import bom
bom.export(design, output="bom.csv")
2. Output Formats¶
CSV (Recommended for procurement)¶
Ref,Value,Footprint,Qty,MPN,Manufacturer,Distributor,SKU
R1,R2,R3,"10k","0603",3,"CRCW060310K0FKEA","Vishay","DigiKey",""
C1,"10µF","0603",1,"CL10A106KP8NNNC","Samsung","DigiKey",""
U1,"ATTiny85","SOIC-8",1,"ATTINY85-20SU","Microchip","DigiKey",""
LED1,"Red","0603",1,"LTST-C190KRKT","Lite-On","DigiKey",""
JSON (Programmatic consumption)¶
{
"components": [
{
"ref": "R1",
"value": "10k",
"footprint": "0603",
"qty": 1,
"mpn": "CRCW060310K0FKEA"
}
],
"metadata": {
"design": "blinker",
"generated": "2026-06-09",
"tool": "zaptrace export bom"
}
}
3. Data Sources¶
BOM data comes from:
- Component library (
zaptrace/library/) — MPN, manufacturer, footprint - Design file (
design.yaml) — reference designator, value - User overrides — via
--bom-overrideflag or inline annotations
4. BOM Merging¶
Identical components (same value, footprint) are grouped:
Before merging:
R1, 10k, 0603
R2, 10k, 0603
R3, 10k, 0603
After merging:
R1,R2,R3, 10k, 0603, Qty: 3
5. Assembly File¶
Generate pick-and-place file alongside BOM: