Budget de courses par repas et par catégorie
Transformez le montant total consacré aux courses en objectif pratique pour chaque repas prévu.
Lancer gratuitement
Indiquez la somme disponible et le nombre de repas à couvrir : vous obtenez une moyenne par repas ainsi que des cibles pour les protéines, les fruits et légumes et les autres achats. La répartition standard réserve 30 pour cent aux protéines, 30 pour cent aux fruits et légumes et 40 pour cent au reste. Le calcul est indépendant de la devise, à condition que vous utilisiez toujours la même.
Partez du montant réellement disponible
Saisissez la totalité du budget du séjour ou de la période à planifier, et non un montant idéal ou un revenu futur. Comptez ensuite les repas que ces courses devront couvrir pendant exactement la même période. Une semaine peut comprendre sept petits-déjeuners, cinq déjeuners préparés et sept dîners, avec deux déjeuners pris ailleurs, soit dix-neuf repas. Le calculateur divise la somme par ce nombre et arrondit au centime le plus proche. Il s'agit d'une moyenne utile, pas d'une obligation de dépenser autant pour chaque assiette. Une soupe économique peut dégager une marge pour un dîner plus coûteux. Intégrez les collations, boissons et réserves soit au nombre de repas, soit dans la catégorie autres, mais gardez une méthode cohérente. Un budget nul est accepté pour tester un scénario, alors que le nombre de repas doit être un entier positif. Faire coïncider les périodes évite de diviser un budget mensuel par une seule semaine et d'obtenir une cible trompeuse.
Considérez les catégories comme des repères
La vue détaillée attribue 30 pour cent aux protéines, 30 pour cent aux fruits et légumes et 40 pour cent aux autres courses. Les protéines peuvent être viande, poisson, œufs, laitages, tofu ou légumineuses. Les produits végétaux peuvent être frais, surgelés ou en conserve. La dernière catégorie couvre céréales, pain, huiles, épices, sauces, boissons, collations et produits de base. Ces montants sont des repères financiers, et non des prescriptions nutritionnelles : ils indiquent une enveloppe, pas des calories ni des portions. Les prix étant variables, un foyer végétarien peut rester sous la cible protéines et réaffecter la différence. Une bouteille d'huile peut aussi dépasser ponctuellement la cible autres tout en servant plusieurs mois. Examinez donc toute la période plutôt qu'un seul ticket. Les calculs sont effectués en centimes et l'éventuel écart d'arrondi reste dans autres afin que les trois totaux correspondent exactement au budget saisi. Une moyenne par repas accompagne également chaque catégorie.
Passez du résultat au menu et aux achats
Une fois la moyenne connue, listez les repas et estimez leurs ingrédients. Vous pouvez conserver des plats coûteux s'ils sont compensés par des flocons d'avoine, des lentilles, des pâtes ou des restes. Avant le passage en caisse, comparez la liste aux enveloppes protéines et fruits et légumes. Si l'une est dépassée, cherchez d'abord une substitution dans cette catégorie : remplacez une pièce haut de gamme, choisissez des légumes de saison, utilisez des surgelés ou privilégiez des ingrédients communs à plusieurs recettes. Le résultat ne garantit pas les prix locaux : il ignore tarifs, conditionnements, régimes, coupons, placards et nombre de convives. Il fournit plutôt une base stable pour éclairer ces choix. Recalculez après toute modification du budget ou des repas, notamment en cas de voyage, d'invités, d'école ou de sortie. Le même calcul déterministe est disponible via l'API à $0.002 par requête. Sans données externes, des entrées identiques donnent toujours les mêmes montants.
Cas d’usage
Préparer les courses de la semaine
Convertissez une enveloppe hebdomadaire en moyenne réaliste pour chaque repas préparé.
Vérifier l'équilibre des catégories
Comparez votre liste aux cibles distinctes avant de valider votre panier.
Comparer plusieurs scénarios
Modifiez le total ou les repas lorsque le calendrier, les invités ou les ressources changent.
Questions fréquentes
Quelle répartition est appliquée ?
Le calcul réserve 30 pour cent aux protéines, 30 pour cent aux fruits et légumes et 40 pour cent aux autres produits.
Une devise particulière est-elle imposée ?
Non. Vous pouvez choisir toute devise, à condition de conserver la même pour le total et les comparaisons.
Pourquoi faut-il un entier positif pour les repas ?
Une moyenne exige au moins un repas, et les repas planifiés sont comptés comme événements entiers.
Ces cibles sont-elles des conseils nutritionnels ?
Non. Ce sont uniquement des repères de dépenses, sans valeur de conseil alimentaire ou médical.
Quel est le prix d'une requête API ?
L'API coûte $0.002 par requête. Le calcul fixe ne consulte aucun prix en direct.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/final3/grocery-budget-per-meal \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total_budget":240,"meals":20}'const res = await fetch("https://api.kit.forhosting.com/final3/grocery-budget-per-meal", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total_budget": 240,
"meals": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/final3/grocery-budget-per-meal",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total_budget": 240,
"meals": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/final3/grocery-budget-per-meal", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total_budget":240,"meals":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total_budget":240,"meals":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/final3/grocery-budget-per-meal", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"total_budget": 240,
"meals": 20
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "final3.grocery_budget_per_meal",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |