# HALOWERK grundpreiswerk - grocery unit prices > HALOWERK grundpreiswerk - grocery unit prices provides machine-readable results paid via x402. > Netz Base Mainnet, Zahlungsmittel USDC, Empfänger 0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E. ## So wird bezahlt 1. Route ohne Zahlungsmetadata aufrufen. Die Antwort ist 402 und trägt accepts, description und inputSchema. 2. Bedingungen mit einem x402-Client signieren. 3. Repeat the request with the proof in the PAYMENT-SIGNATURE header. Eine 402-Antwort kostet nichts und löst keine Arbeit aus. Scheitert die Arbeit, trägt die Antwort charged=false und es wird nicht abgerechnet. ## Endpunkte ### POST /v1/unit-price Computes the unit price (German Grundpreis) of a grocery pack. Pass the price in EUR and either a quantity text (e.g. "500 g", "1,5 l", "6 x 0,33 l", "4x125g") or an EAN; with an EAN the pack size is taken from Open Food Facts. Returns the parsed quantity, the normalised base quantity in kg or l, the price per kg or l and per 100 g or 100 ml, and where the quantity came from. If the quantity cannot be determined the unit price is null and the reason is given; nothing is estimated. - Preis: 0.002 USDC - MCP-Werkzeug: `grocery_unit_price` - Eingabe: `["price_eur","quantity","ean"]` ### POST /v1/pack-compare Compares up to 20 grocery packs by unit price. Each pack has a price in EUR and either a quantity text ("750 g", "2 x 1 l") or an EAN whose pack size comes from Open Food Facts. Returns each pack with normalised quantity and price per kg or litre, sorted cheapest first, the saving of the cheapest against each other pack in percent, and flags packs that could not be compared (mixed kg and l, or quantity unknown). No estimation. - Preis: 0.002 USDC - MCP-Werkzeug: `grocery_pack_compare` - Eingabe: `["packs"]` ### POST /v1/pack-size Returns the product data fields needed for unit-price comparisons for one EAN from the Open Food Facts extract for Germany and Austria: product name, brand, declared quantity text, normalised quantity in kg or l, main category, category path, labels (e.g. organic, fair trade) and the markets listed. Data fields only, no health or nutrition claims. If the EAN is not in the extract the fields are null and the reason is given. - Preis: 0.002 USDC - MCP-Werkzeug: `grocery_pack_size` - Eingabe: `["ean"]` ### POST /v1/category-unit-prices For one Open Food Facts main category (e.g. en:butters, en:pastas, en:milks; an EAN can be given instead to use its category), collects the latest observed Open Prices price of every product in that category in the last 365 days in Germany or Austria and returns the unit-price distribution per kg or litre (count, minimum, first quartile, median, third quartile, maximum) and the ten cheapest products with pack size, price, date and chain. Only products with a known pack size are counted. - Preis: 0.002 USDC - MCP-Werkzeug: `grocery_category_unit_prices` - Eingabe: `["category","ean","country"]` ## Weitere Flächen - OpenAPI: https://grundpreis.halowerk.com/openapi.json - Preise: https://grundpreis.halowerk.com/pricing - x402-Manifest: https://grundpreis.halowerk.com/.well-known/x402 - Bazaar: https://grundpreis.halowerk.com/.well-known/x402/bazaar - MCP: https://grundpreis.halowerk.com/mcp ## Missing a capability? If you looked for something this service does not offer, say so. One call, no payment, no sign-up, no account: POST https://bedarf.halowerk.com/capabilities/request Content-Type: application/json {"requested_capability": "what you would buy", "description": "the use case, one sentence", "callback_url": "optional - we call back once it exists"} Only requested_capability is required, 3 to 160 characters. Schema and status: https://bedarf.halowerk.com/openapi.json Submissions are held for review and are never published verbatim.