Répartissez un budget cadeaux selon les priorités
Prévoir des cadeaux pour plusieurs personnes devient délicat lorsque toutes n’ont pas la même priorité.
Lancer gratuitement
Ce calculateur transforme un budget global et des coefficients relatifs en un montant concret pour chaque destinataire. Il conserve la totalité du budget au centime près, rend la méthode transparente et évite les ajustements répétés dans un tableur. Vous pouvez choisir des coefficients simples comme 3, 2 et 1 : seule leur proportion compte, sans calcul préalable de pourcentages.
Choisissez des coefficients qui traduisent vos priorités
Commencez par indiquer la somme que vous pouvez consacrer à l’ensemble des cadeaux. Ajoutez ensuite chaque destinataire et attribuez-lui un coefficient strictement positif. Ce coefficient n’est pas une somme d’argent et le total des coefficients n’a aucune valeur imposée : il exprime uniquement une importance relative. Si Alex a un coefficient de 4 et Blair de 2, Alex reçoit deux fois plus. Les valeurs 2 et 1, ou 40 et 20, donnent exactement le même résultat. Cette souplesse facilite la discussion tant que le projet évolue encore. Vous pouvez retenir une valeur élevée pour la famille proche, une valeur moyenne pour de bons amis et une valeur plus faible pour d’autres attentions. N’utilisez pas zéro pour écarter quelqu’un : retirez plutôt cette personne afin que le périmètre soit explicite. Le calculateur vérifie les valeurs, les additionne, puis rapporte chacune à leur total. Les noms restent dans l’ordre saisi pour faciliter la comparaison avec votre liste initiale.
Comprenez la répartition exacte des centimes
Un calcul proportionnel produit souvent des fractions de centime. Arrondir séparément la part de chaque personne peut alors faire dépasser le budget ou laisser un écart. Ce calculateur supprime ce problème. Il arrondit d’abord le budget global en centimes, calcule la part théorique exacte de chaque destinataire, puis attribue tous les centimes entiers. Les centimes encore disponibles reviennent aux personnes dont la fraction restante est la plus grande. Cette technique est appelée méthode des plus forts restes. Chaque montant comporte ainsi deux décimales et leur somme correspond exactement au budget renvoyé. Si deux personnes ont le même reste, celle qui figure la première dans la liste obtient le centime supplémentaire : le départage reste donc stable et déterministe. Le résultat fournit aussi la proportion normalisée, par exemple 0.5 pour la moitié, ainsi que le total des coefficients. Vous pouvez ainsi contrôler le calcul, le justifier auprès d’autres participants ou le reproduire dans un tableau d’achats sans ambiguïté sur les arrondis.
Transformez les montants en plan d’achat réaliste
Considérez chaque montant comme un plafond ou un objectif, et non comme l’obligation de trouver un article exactement à ce prix. Recherchez des cadeaux adaptés dans cette limite et tenez compte des taxes, de la livraison, de l’emballage et des achats communs. Si ces frais font partie de l’enveloppe, réservez-les avant de saisir le budget ou intégrez-les dans le prix comparé à chaque montant. Vous pouvez relancer le calcul si la liste change, si un cadeau collectif s’ajoute ou si la somme disponible augmente ou diminue. Les mêmes coefficients conservant les mêmes rapports, vous n’avez pas à reconstruire le plan lorsque seul le total évolue. Dans une famille, un comité ou une collecte professionnelle, conservez les coefficients avec le résultat afin de documenter les priorités convenues. L’outil ne juge pas les relations et ne recommande aucun produit ; il applique une règle arithmétique cohérente. Une requête API coûte $0.002, tandis que l’utilisation dans le navigateur convient aux besoins ponctuels. Aucun réseau, hasard ou date courante n’influence le résultat.
Cas d’usage
Préparer les cadeaux de famille
Accordez plus de poids aux proches tout en respectant une enveloppe saisonnière unique.
Répartir une collecte commune
Ventilez l’argent réuni entre plusieurs cadeaux de remerciement selon les priorités du groupe.
Rééquilibrer un budget modifié
Conservez les priorités et recalculez immédiatement chaque montant lorsque l’enveloppe change.
Questions fréquentes
Que représente un coefficient de priorité ?
Il s’agit d’une valeur relative. Une personne de coefficient 6 reçoit deux fois la part d’une personne de coefficient 3.
Les coefficients doivent-ils totaliser 100 ?
Non. Toute série de valeurs positives convient, car chaque coefficient est divisé par leur somme.
Les montants correspondent-ils exactement au budget ?
Oui. Le total est arrondi en centimes, puis les centimes restants suivent les plus grandes fractions.
Comment départagez-vous deux personnes pour un centime ?
La personne placée en premier dans la liste le reçoit, ce qui rend le résultat déterministe.
Puis-je saisir un budget nul ou négatif ?
Non. Le budget doit être un nombre fini positif et représenter au moins un centime après arrondi.
Quel est le tarif d’une requête API ?
Chaque requête coûte $0.002. Le calculateur reste aussi disponible gratuitement dans le navigateur.
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/life/gift-budget-split \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total_budget":240,"recipients":[{"name":"Alex","priority_weight":3},{"name":"Blair","priority_weight":2},{"name":"Casey","priority_weight":1}]}'const res = await fetch("https://api.kit.forhosting.com/life/gift-budget-split", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total_budget": 240,
"recipients": [
{
"name": "Alex",
"priority_weight": 3
},
{
"name": "Blair",
"priority_weight": 2
},
{
"name": "Casey",
"priority_weight": 1
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/gift-budget-split",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total_budget": 240,
"recipients": [
{
"name": "Alex",
"priority_weight": 3
},
{
"name": "Blair",
"priority_weight": 2
},
{
"name": "Casey",
"priority_weight": 1
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/gift-budget-split", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total_budget":240,"recipients":[{"name":"Alex","priority_weight":3},{"name":"Blair","priority_weight":2},{"name":"Casey","priority_weight":1}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total_budget":240,"recipients":[{"name":"Alex","priority_weight":3},{"name":"Blair","priority_weight":2},{"name":"Casey","priority_weight":1}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/gift-budget-split", 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,
"recipients": [
{
"name": "Alex",
"priority_weight": 3
},
{
"name": "Blair",
"priority_weight": 2
},
{
"name": "Casey",
"priority_weight": 1
}
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.gift_budget_split",
"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.
Limites
max_items | 1000 |
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. |