Einkaufsbudget-Tracker
Bei einem Budget von 100 und Milch, Brot, Eiern und Äpfeln für zusammen 10,53 bleiben Ihnen 89,47. Nach jedem Artikel sehen Sie den Restbetrag und erkennen vor der Kasse, welcher Posten das Budget sprengen würde. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Budget
- 100
- Anzahl der Elemente
- 4
- Gesamtausgaben
- 10,53
- Verbleibend
- 89,47
- Überschreitungsbetrag
- 0
Ein Einkaufsbudget-Tracker beantwortet eine praktische Frage vor der Kasse: Wie viel Geld bleibt nach dieser laufenden Liste von Artikelpreisen noch, und haben Sie das Limit bereits überschritten? Käufer, Haushaltsplaner und kleine Retail-Tools brauchen eine deterministische Antwort, die keine Kataloge scrapt und keine Steuersätze erfindet. Dieser Einkaufsbudget-Rechner nimmt ein Gesamtbudget und eine oder mehrere Warenkorbzeilen mit Preisen entgegen, summiert die Ausgaben, zieht sie vom Budget ab und liefert den Restbetrag, ob das Budget überschritten ist, um wie viel, sowie einen laufenden Rest nach jeder Zeile, damit erkennbar ist, welche Zugabe den Warenkorb kippen ließ.
Wie der Restbetrag entsteht
Sie beginnen mit einem Budget in derselben Währung, in der die Preise im Regal stehen. Der Rechner zählt alle Preise Ihrer Liste zusammen und zieht die Summe vom Budget ab. Bleibt der Rest bei null oder darüber, sind Sie im Rahmen; wird er negativ, ist das Budget überschritten. Bei 100 und vier Artikeln für zusammen 10,53 bleiben 89,47. Nach jeder Zeile sehen Sie den laufenden Restbetrag, hier 98,51 nach der Milch und 96,26 nach dem Brot, und bei einem Budget über null auch, welcher Anteil schon verbraucht ist.
Wofür er sich eignet und was er nicht tut
Typisch ist der wöchentliche Lebensmitteleinkauf mit festem Betrag: Sie tragen die Preise beim Gang durch die Regale ein und hören auf, bevor der Wagen das Budget übersteigt. Auch eine Wohngemeinschaft kann eine gemeinsame Liste führen, sodass alle denselben Stand sehen. Der Rechner rechnet weder Steuern hinzu noch Währungen um und durchsucht keine Kataloge. Preise von null, etwa für eine Warenprobe, sind erlaubt und ändern die Summe nicht; negative Preise werden abgelehnt.
Wie Restbetrag und Budgetüberschreitung berechnet werden
Beginnen Sie mit einem nichtnegativen Einkaufsbudget in derselben Währungseinheit, die Sie bereits für Regalpreise nutzen—der Rechner rechnet keine Währungen um und wendet keine Wechselkurse an. Nehmen Sie für jede Warenkorbzeile einen endlichen nichtnegativen Preis; optionale Namen kennzeichnen die Zeile in der Anzeige. Die Gesamtausgaben sind die Summe aller Preise in der Liste.
Der Restbetrag ist das Budget minus diese Summe. Ist der Rest null oder positiv, liegen Sie noch im Budget; ist er streng negativ, ist das Budget überschritten und der Überschreitungsbetrag ist der Absolutwert des Rests. Budget null ist erlaubt: jede positive Ausgabe gilt als Überschreitung—passend zu Umschlagregeln, bei denen die Zuweisung schon erschöpft war.
Gratisproben zum Preis null werden akzeptiert und ändern die Summe nicht. Negative Budgets und Preise werden abgelehnt, weil sie in diesem Produkt weder eine Einkaufszuweisung noch einen Regalpreis beschreiben.
Anwendungsfälle
Wöchentlicher Lebensmitteleumschlag
Geben Sie Ihr wöchentliches Lebensmittelbudget und die Gangpreise beim Einkaufen ein; beobachten Sie den Restbetrag und stoppen Sie, wenn der Warenkorb das Limit überschreiten würde.
Geteilter Haushaltswarenkorb
Mitbewohner veröffentlichen ein gemeinsames Budget und eine gemeinsame Artikelliste, sodass alle dieselbe Ausgabensumme, denselben Rest und dasselbe Überschreitungsflag sehen.
Häufige Fragen
Wie funktioniert der Einkaufsbudget-Rechner?
Senden Sie ein nichtnegatives Budget und eine nichtleere Preisliste.
Dürfen Artikelpreise null sein?
Ja. Gratisproben oder Promo-Zeilen zum Preis 0 sind erlaubt.
Brauche ich Namen auf jeder Warenkorbzeile?
Nein. Namen sind optional. Nackte Zahlen gelten als Preise, und unbenannte Zeilen erhalten stabile Labels wie Item 1 für die Anzeige.
Was passiert, wenn ich das Budget überschreite?
Der Restbetrag wird negativ, der Rechner markiert das Budget als überschritten und zeigt, um wie viel Sie darüber liegen, also den negativen Rest ohne Minuszeichen.
Wie erkenne ich, welcher Artikel das Budget gesprengt hat?
Achten Sie auf den Restbetrag nach jeder Zeile. Die Preise werden der Reihe nach abgezogen, daher ist die erste Zeile, bei der der Rest unter null fällt, der Artikel, der den Warenkorb über das Limit gebracht hat.
Kann ich ein Budget von null eingeben?
Ja. Bei einem Budget von null gilt jede Ausgabe über null als Überschreitung, so wie bei einem Umschlag, dessen Geld schon aufgebraucht ist. Negative Budgets und negative Preise werden dagegen abgelehnt.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/life/shopping-budget \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"budget":100,"items":[{"name":"Milk 1 L","price":1.49},{"name":"Bread","price":2.25},{"name":"Eggs (12)","price":3.8},{"name":"Apples 1 kg","price":2.99}]}'const res = await fetch("https://api.kit.forhosting.com/life/shopping-budget", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"budget": 100,
"items": [
{
"name": "Milk 1 L",
"price": 1.49
},
{
"name": "Bread",
"price": 2.25
},
{
"name": "Eggs (12)",
"price": 3.8
},
{
"name": "Apples 1 kg",
"price": 2.99
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/shopping-budget",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"budget": 100,
"items": [
{
"name": "Milk 1 L",
"price": 1.49
},
{
"name": "Bread",
"price": 2.25
},
{
"name": "Eggs (12)",
"price": 3.8
},
{
"name": "Apples 1 kg",
"price": 2.99
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/shopping-budget", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"budget":100,"items":[{"name":"Milk 1 L","price":1.49},{"name":"Bread","price":2.25},{"name":"Eggs (12)","price":3.8},{"name":"Apples 1 kg","price":2.99}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"budget":100,"items":[{"name":"Milk 1 L","price":1.49},{"name":"Bread","price":2.25},{"name":"Eggs (12)","price":3.8},{"name":"Apples 1 kg","price":2.99}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/shopping-budget", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"budget": 100,
"items": [
{
"name": "Milk 1 L",
"price": 1.49
},
{
"name": "Bread",
"price": 2.25
},
{
"name": "Eggs (12)",
"price": 3.8
},
{
"name": "Apples 1 kg",
"price": 2.99
}
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.shopping_budget",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Fehlgeschlagene Validierung—fehlendes Budget, leere Listen, negative Preise—wird als invalid_input abgelehnt und nicht abgerechnet.
Wie Restbetrag und Budgetüberschreitung berechnet werden
Der Endpoint meldet auch den genutzten Budgetanteil in Prozent, wenn das Budget größer als null ist, sodass ein Warenkorb von dreißig auf ein Limit von hundert dreißig Prozent genutzt anzeigt, ohne dass Clients Verhältnisse neu berechnen müssen. Die feste Rundung auf zwölf Dezimalstellen bei Geldfeldern hält Browser- und API-Goldens über Runtimes byte-stabil, ohne Gleitkommarauschen bei einfachen Summen.
Eingabevertrag, Antwortform und Fehlerverhalten
Jede Zeile kann eine nackte Zahl als Preis sein oder ein Objekt mit Pflichtfeld price und optionalem name. Listen mit mehr als fünfhundert Zeilen werden abgelehnt, um die pure-parse-Arbeit zu begrenzen. Senden Sie per POST einen JSON-Body mit zwei Pflichtfeldern: budget, eine endliche Zahl größer oder gleich null, und items, ein nichtleeres Array von Warenkorbzeilen. Price akzeptiert auch gängige Aliase wie cost oder amount; das Listenfeld akzeptiert cart, prices, lines und list. Budget akzeptiert limit, max, total_budget und allowance, damit Skripte Vokabular anderer Geldwerkzeuge wiederverwenden können. Bei Erfolg spiegelt der Body das Budget, die Artikelanzahl, jede Zeile mit stabilem Namen, gerundetem Preis und laufendem Rest nach dieser Zeile wider, plus total_spent, remaining, over_budget, over_amount, within_budget, percent_used, eine Formelkette, eine lesbare Meldung und geordnete Schritte für Arbeitsblätter. Beispiel: Budget hundert mit Milch zu one point four nine, Brot zu two point two five, Eiern zu three point eight und Äpfeln zu two point nine nine ergibt Gesamtausgaben ten point five three und Rest eighty-nine point four seven mit over_budget false. Wird dasselbe Budget mit Zeilen kombiniert, die über hundert summieren, ist over_budget true und over_amount zeigt, wie weit Sie das Limit überschritten haben—weiterhin eine Erfolgsantwort, kein Fehler, weil die Überschreitung die Frage ist, die der Tracker beantwortet. Fehlendes Budget, leere items, nichtendliche Zahlen oder negative Preise scheitern mit invalid_input unter Nennung des Feldes und werden nicht abgerechnet.
Wo ein Einkaufsbudget-Tracker seinen Nutzen bringt
Haushalts-Apps und geteilte Einkaufslisten nutzen einen Budget-Tracker, damit Mitbewohner den Restbetrag beim Abhaken von Artikeln sehen, ohne eine Tabelle zu öffnen. Retail-Demokioske und POS-Trainingssandboxes brauchen ein deterministisches Restmittel-Orakel, das nie Live-Preis-APIs aufruft. Halten Sie Anfragen klein, pinnen Sie gerundete Summen in Tests und erhalten Sie reproduzierbare Restbeträge für mobile Checklisten, LMS-Plugins und Edge-Worker, ohne eigene Ledger-Infrastruktur aufzubauen. Persönliche Finanzkurse vergeben Übungen Warenkorb gegen Budget; eine API mit geordnetem laufendem Rest nach jeder Zeile lässt bewerten, welche Zugabe zuerst über das Limit ging. Automatisierungsskripte für Wochenmenüs können Zutatenzeilensummen posten und Nachbestellungen stoppen, sobald over_budget true wird. Weil die Implementierung pure parse der Stufe A ist, kostet jeder erfolgreiche Aufruf den veröffentlichten Basispreis $0.002 ohne Modell-Tokens und ohne ausgehendes Netz.
Integrationsbeispiele
Automatisierung des Wochenmenüs
Skripte senden geplante Zutatenpreise gegen ein festes Limit und stoppen die Nachbestellung, sobald over_budget true wird.
Technische Fragen
Was passiert, wenn ich das Budget überschreite?
Der Aufruf ist weiterhin erfolgreich. remaining ist negativ, over_budget ist true und over_amount zeigt, wie weit Sie das Limit überschritten haben. Eine Überschreitung gilt nicht als invalid_input.
Was kostet der Einkaufsbudget-Tracker?
Das Browser-Tool ist kostenlos. API-Anfragen nutzen das vorausbezahlte KIT-Guthaben zu $0.002 pro erfolgreichem Aufruf; ungültige Eingaben werden nicht abgerechnet.