Gruppenessen-Kostenanteile
Eine Pizza für zwei, ein Steak für einen und ein Salat für drei ergeben mit 18 % Trinkgeld und 8,5 % Steuer 110,06, davon zahlt der Steak-Gast 59,45. Jedes Gericht wird nur unter denen geteilt, die davon gegessen haben. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Läuft direkt in Ihrem Browser – kostenlos. Ihre Datei verlässt Ihren Browser nicht und wird an keinen Server übertragen.
Gruppenessen zerbrechen an der Rechnung, wenn manche eine Pizza teilen, ein Gast ein Solo-Steak bestellt und alle ein faires Trinkgeld wollen. Eine gleiche Kopfteilung zwingt Salatesser, Meeresfrüchte-Türme mitzufinanzieren; ganze Zeilen einer einzigen Person zuzuweisen scheitert, wenn zwei Freunde wirklich eine Vorspeise geteilt haben. Dieser Rechner für Gruppenessen-Kostenanteile nimmt jedes Gericht mit Preis und der genauen Liste der Gäste, die es gegessen haben, teilt dieses Gericht nur unter diesen Teilern, summiert den Essensanteil jedes Gastes und wendet optionale Trinkgeld- und Steuerprozente auf diesen Anteil an.
Wie die gleiche Teilung pro Gericht nur unter den Teilern funktioniert
Beginnen Sie mit der Speisekarte als Liste von Tellern statt mit einer einzigen Gesamtsumme für den Tisch. Der Rechner teilt den Preis dieses Gerichts zu gleichen Teilen nur unter diesen aufgeführten Gästen, niemals unter Personen, die am Tisch saßen, den Gang aber nicht berührt haben. Ein Gast, der auf drei geteilten Tellern erscheint, sammelt drei Teilanteile; ein Gast mit nur einem Solo-Hauptgericht zahlt dieses Hauptgericht vollständig und nichts für Gänge, die er ausgelassen hat.
Nach der Zuteilung jedes Gerichts hat jeder Gast einen Essensanteil gleich der Summe seiner Teile pro Gericht. Die gleiche Teilung der gesamten Rechnung unter N Plätzen ist eine andere Produktabsicht; die Zuweisung von Zeilen an eine einzelne Person mit proportionaler absoluter Steuer und Service ist ebenfalls eine andere. Hier liegt der SEO-Fokus ausdrücklich auf Gruppenessen-Kostenanteilen, wenn Gerichte heterogene Teilungsgruppen haben.
Wenn jeder Preis null ist und beide Prozentsätze null sind, ist jeder Gast-Gesamtbetrag null und der Aufruf gelingt dennoch der Vollständigkeit halber. Doppelte Namen auf einem Gericht werden zusammengeführt, damit eine Person nicht zweimal für denselben Teller belastet wird.
Wo ein Rechner für Gruppenessen-Anteile seinen Nutzen zeigt
Familienfeiern, Team-Abendessen im Coworking und geteilte Degustationsmenüs brauchen eine neutrale Aufschlüsselung, die jeder Gericht für Gericht prüfen kann, statt über gleiche Hälften zu streiten, die ignorieren, wer den Weinflug bestellt hat. Ausgaben- und Erstattungs-Bots können dieselbe strukturierte Nutzlast annehmen, die ein Mobilformular sammelt, und Pro-Gast-Summen zurückgeben, bereit für eine Abrechnungsmeldung oder einen Buchungssatz. Hospitality-Demos und Schulungswerkzeuge für die Kasse können zeigen, wie eine geteilte Pizza und ein Solo-Steak unterschiedliche faire Beträge erzeugen, ohne Personal zu zwingen, Zeilen von Hand zu teilen.
Halten Sie Gerichtslisten in gewöhnlichen Tischgrößen, pinnen Sie gerundete Gastsummen in Tests, und Sie erhalten reproduzierbare Abrechnungen für Gruppenchats, LMS-Beispiele und Edge-Worker, ohne eine Tabelle aufzusetzen oder ad-hoc-Trinkgeldmathematik für jede Sprache zu erfinden, die Sie ausliefern. Kombinieren Sie diese Fähigkeit mit einem reinen Trinkgeld-Gleichteiler, wenn der Tisch wirklich Kopf-Fairness will; nutzen Sie diese, wenn Teilungsgruppen je Gang unterschiedlich sind.
Anwendungsfälle
Familien- oder Freundesessen mit geteilten Tellern
Listen Sie jeden Gang mit den tatsächlichen Teilern, fügen Sie Trinkgeld- und Steuerprozente vom Beleg hinzu und sehen Sie, was jeder Gast schuldet, ohne die ganze Rechnung gleich zu teilen.
Team-Mittagessen und Degustationsmenüs
Ordnen Sie geteilte Vorspeisen und Solo-Hauptgerichte Kolleginnen und Kollegen zu und verteilen Sie Trinkgeld und Steuer auf den Essensanteil jeder Person für eine transparente Erstattung.
Ausgaben-Bots und Abrechnungs-Apps
Rufen Sie einen stabilen vorausbezahlten Endpunkt auf, der Pro-Gast-Summen liefert, bereit für Chats, Bücher oder Split-Anfrage-Oberflächen, wenn Gerichte gemischte Teiler haben.
Häufige Fragen
Wie funktioniert der Rechner für Gruppenessen-Kostenanteile?
Jeder Gerichtspreis wird nur unter den auf diesem Gericht gelisteten Gästen gleich geteilt; Trinkgeld und Steuer multiplizieren den Essensanteil jedes Gastes.
Was, wenn nur einige Gäste ein Gericht geteilt haben?
Personen, die dieses Gericht nicht geteilt haben, zahlen keinen Teil seines Preises.
Wird das Trinkgeld auf die ganze Rechnung oder auf jeden Anteil berechnet?
Auf den Essensanteil jedes Gastes. Wer mehr gegessen hat, zahlt mehr Trinkgeld und Steuer, und niemand zahlt einen gleichen Kopfbetrag für Gerichte, die er nicht angerührt hat.
Was passiert, wenn ich denselben Gast zweimal bei einem Gericht eintrage?
Der doppelte Name wird ignoriert, und diese Person zahlt das Gericht nur einmal. Jedes Gericht wird unter den verschiedenen eingetragenen Namen geteilt.
Wann sollte ich die Rechnung lieber gleichmäßig teilen?
Wenn der ganze Tisch wirklich pro Kopf teilen möchte. Nutzen Sie dieses Werkzeug, wenn verschiedene Gruppen verschiedene Gänge geteilt haben, etwa eine Pizza zu zweit neben einem Steak für eine Person.
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/dinner-split-by-share \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"dishes":[{"name":"Margherita pizza","price":24,"shared_by":["Alice","Bob"]},{"name":"Ribeye steak","price":36,"shared_by":["Carol"]},{"name":"Caesar salad","price":15,"shared_by":["Alice","Bob","Carol"]},{"name":"Tiramisu","price":12,"shared_by":["Alice","Carol"]}]}'const res = await fetch("https://api.kit.forhosting.com/life/dinner-split-by-share", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"dishes": [
{
"name": "Margherita pizza",
"price": 24,
"shared_by": [
"Alice",
"Bob"
]
},
{
"name": "Ribeye steak",
"price": 36,
"shared_by": [
"Carol"
]
},
{
"name": "Caesar salad",
"price": 15,
"shared_by": [
"Alice",
"Bob",
"Carol"
]
},
{
"name": "Tiramisu",
"price": 12,
"shared_by": [
"Alice",
"Carol"
]
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/dinner-split-by-share",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"dishes": [
{
"name": "Margherita pizza",
"price": 24,
"shared_by": [
"Alice",
"Bob"
]
},
{
"name": "Ribeye steak",
"price": 36,
"shared_by": [
"Carol"
]
},
{
"name": "Caesar salad",
"price": 15,
"shared_by": [
"Alice",
"Bob",
"Carol"
]
},
{
"name": "Tiramisu",
"price": 12,
"shared_by": [
"Alice",
"Carol"
]
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/dinner-split-by-share", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"dishes":[{"name":"Margherita pizza","price":24,"shared_by":["Alice","Bob"]},{"name":"Ribeye steak","price":36,"shared_by":["Carol"]},{"name":"Caesar salad","price":15,"shared_by":["Alice","Bob","Carol"]},{"name":"Tiramisu","price":12,"shared_by":["Alice","Carol"]}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"dishes":[{"name":"Margherita pizza","price":24,"shared_by":["Alice","Bob"]},{"name":"Ribeye steak","price":36,"shared_by":["Carol"]},{"name":"Caesar salad","price":15,"shared_by":["Alice","Bob","Carol"]},{"name":"Tiramisu","price":12,"shared_by":["Alice","Carol"]}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/dinner-split-by-share", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"dishes": [
{
"name": "Margherita pizza",
"price": 24,
"shared_by": [
"Alice",
"Bob"
]
},
{
"name": "Ribeye steak",
"price": 36,
"shared_by": [
"Carol"
]
},
{
"name": "Caesar salad",
"price": 15,
"shared_by": [
"Alice",
"Bob",
"Carol"
]
},
{
"name": "Tiramisu",
"price": 12,
"shared_by": [
"Alice",
"Carol"
]
}
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.dinner_split_by_share",
"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
Leere Gerichtslisten, negative Preise, leere Gästenamen, leere shared_by-Listen und Prozentwerte außerhalb des Bereichs scheitern mit einem klaren invalid_input-Fehler und werden nicht berechnet.
Wie die gleiche Teilung pro Gericht nur unter den Teilern funktioniert
Jedes Gericht trägt einen Preis in einer einzigen Währung und eine shared_by-Liste von Namen oder kurzen IDs der Gäste, die diesen Teller wirklich gemeinsam gegessen oder bestellt haben. Die optionalen tip_percent und tax_percent multiplizieren dann diesen Essensanteil, sodass stärkere Esser mehr Trinkgeld und Steuer tragen, ohne eine gleiche Kopfsteuer zu erfinden. Das ist das faire Muster, das man bereits auf Servietten skizziert, wenn die Hälfte des Tisches das Brot geteilt hat und die andere nicht – aber ohne manuelle Rundungsfehler, die Centbeträge unklar lassen.
Eingabevertrag, Antwortfelder und Validierungsregeln
Beide Prozentfelder müssen zwischen null und hundert einschließlich liegen. Senden Sie per POST einen JSON-Body mit einem erforderlichen dishes-Array von einem bis zweihundert Objekten. Jedes Objekt braucht price als endliche nichtnegative Zahl und shared_by als nichtleeres Array von Gastnamen-Zeichenketten; der optionale name beschriftet das Gericht in der zurückgegebenen Aufschlüsselung. Aliase items, lines, courses und plates werden für das Array akzeptiert, wenn Ihr Client diese Schlüssel bereits verwendet. shared_by akzeptiert auch sharers, guests, people und who und kann als kommagetrennte Zeichenkette für einfache Formulare ankommen. Das optionale tip_percent ist standardmäßig null und akzeptiert tip_pct, gratuity_percent und tip; das optionale tax_percent ist standardmäßig null und akzeptiert tax_pct, vat_percent und tax. Fehlende dishes, leere Arrays, negative Preise, leere Gästenamen, leere shared_by-Listen, Prozentwerte außerhalb des Bereichs und nichtendliche Zahlen scheitern mit invalid_input und nennen das Problem; diese Fehlschläge verbrauchen nie vorausbezahltes Guthaben. Bei Erfolg liefert der Body dish_count, guest_count, die normalisierte dishes-Liste mit index, optionalem name, price, shared_by und per_person_share, food_total, tip_percent, tip_total, tax_percent, tax_total, grand_total und ein guests-Array, geordnet nach dem ersten Erscheinen jedes Gastes über die Gerichte. Jede guests-Zeile enthält guest, food_share, tip_share, tax_share, total und dish_count. Geldfelder nutzen half-up-Rundung auf zwei Dezimalstellen mit Restkorrektur beim letzten Gast mit positivem food_share, sodass gerundete Trinkgeldanteile tip_total, Steueranteile tax_total und Gastsummen grand_total ergeben. method ist per_dish_equal_share und formula stellt die Zuteilungsregel zur Anzeige neben dem Ergebnis dar.
Wo ein Rechner für Gruppenessen-Anteile seinen Nutzen zeigt
Weil die Implementierung analytische Tier-A-Arithmetik ohne Modell-Tokens und ohne ausgehendes Netz ist, kostet jeder erfolgreiche Aufruf den veröffentlichten Basispreis $0.002, und Validierungsfehler sind kostenlos.
Technische Fragen
Sind Trinkgeld und Steuer Prozentsätze oder absolute Geldbeträge?
Prozentsätze des Essensanteils jedes Gastes (0–100). Die Engine multipliziert food_share mit tip_percent/100 und tax_percent/100, nachdem die Gerichte zugeteilt wurden.
Welche Fehler gibt der Rechner zurück?
invalid_input bei leeren dishes, negativen Preisen, leeren Gästenamen, leeren shared_by-Listen oder Trinkgeld-/Steuerprozenten außerhalb von 0–100. Diese Fehlschläge werden nicht berechnet.
Was kostet der Rechner für Gruppenessen-Kostenanteile?
Das Browser-Werkzeug ist kostenlos. API-Anfragen nutzen vorausbezahltes KIT-Guthaben zu $0.002 pro erfolgreichem Aufruf; ungültige Eingabe wird nicht berechnet.