Calculez le prix requis pour une marge cible
Ce calculateur part du coût du produit et de la marge bénéficiaire que vous souhaitez conserver afin de déterminer le prix de vente minimal.
Lancer gratuitement
Saisissez le coût unitaire et le pourcentage de marge cible pour obtenir un prix à la précision choisie. La marge correspond au bénéfice divisé par le prix de vente, contrairement au taux de marque calculé sur le coût. Le résultat indique aussi le bénéfice unitaire et la marge réelle après arrondi.
Convertissez un objectif de marge en prix
Le calcul repose sur la relation entre coût, chiffre d’affaires et bénéfice. Le bénéfice est égal au prix de vente moins le coût, tandis que la marge divise cette différence par le prix de vente. En isolant le prix, on obtient le coût divisé par un moins la marge cible exprimée sous forme décimale. N’ajoutez pas simplement le pourcentage au coût : ce raccourci calcule un taux fondé sur une autre base. L’outil applique directement la formule de marge et renvoie le prix requis, le bénéfice unitaire et la marge atteinte. Utilisez la même devise pour le coût et le prix. Intégrez tous les frais que vous souhaitez couvrir, notamment le transport, l’emballage et les commissions prévisibles. Si vous les omettez, le résultat peut respecter mathématiquement l’objectif sur le coût saisi tout en laissant à votre entreprise un bénéfice réel inférieur aux attentes. La pertinence du prix dépend donc de la qualité du coût unitaire fourni.
Comprenez l’arrondi vers le haut
Le prix théorique comporte souvent davantage de décimales qu’un commerce ne peut en afficher ou en facturer. Un arrondi classique au nombre le plus proche peut réduire ce prix et placer la marge effective légèrement sous l’objectif. Le calculateur arrondit donc le prix requis vers le haut selon la précision choisie. Avec deux décimales, il fournit le plus petit prix au centime qui ne passe pas sous la marge demandée. Il recalcule ensuite la marge à partir de ce prix afin de montrer l’effet de la précision commerciale. Choisissez zéro décimale pour des montants entiers, deux pour les devises courantes, ou davantage lorsque le gros et les forts volumes le permettent. Cet arrondi protège la marge, mais ne modélise pas automatiquement les prix psychologiques, coupons, taxes, commissions ou frais de paiement. Ajoutez les charges prévisibles au coût ou analysez-les séparément pour utiliser le résultat comme un plancher fiable.
Intégrez le résultat à votre tarification
Considérez le prix cible comme un minimum fondé sur vos données, et non comme une garantie de rentabilité globale. Vérifiez que le coût respecte votre méthode de valorisation des stocks et que le pourcentage saisi représente bien une marge. Celle-ci doit rester inférieure à 100 pour cent, car la formule divise le coût par la part du prix qui subsiste après la marge. À exactement 100 pour cent, cette part vaut zéro et un article à coût positif exigerait un prix infini ; au-delà, aucun prix positif fini ne convient. Le calculateur rejette ces cas, ainsi que les coûts nuls ou négatifs qui ne donnent pas de cible unique et utile. Une fois le résultat obtenu, confrontez-le aux prix concurrents, taxes, remises, règles commerciales et frais de canal. Pour automatiser votre processus, calculez chaque produit pour $0.002 par requête et transmettez les champs stables à une validation ou une mise à jour contrôlée du catalogue.
Cas d’usage
Fixer un nouveau prix de détail
Transformez le coût unitaire complet et votre objectif commercial en prix de vente minimal.
Réagir à une hausse fournisseur
Recalculez les planchers après une hausse des coûts et repérez les prix qui ne protègent plus la marge.
Créer un plancher par canal
Ajoutez les frais prévisibles de chaque canal au coût avant de calculer son prix minimal.
Questions fréquentes
Quelle formule est utilisée ?
Le prix est le coût divisé par un moins la marge cible exprimée sous forme décimale.
La marge équivaut-elle au taux de marque ?
Non. La marge divise le bénéfice par le prix de vente ; l’autre mesure le rapporte au coût.
Pourquoi arrondir vers le haut ?
Ainsi, le prix affiché atteint toujours au moins la marge demandée.
Pourquoi refuser 100 pour cent ?
Un produit à coût positif nécessiterait un prix infini pour atteindre cette marge.
Faut-il inclure les frais dans le coût ?
Incluez toute charge unitaire prévisible que le prix de vente doit couvrir.
Quel est le coût via API ?
Chaque requête coûte $0.002 ; le calcul dans le navigateur est gratuit.
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/ecom/product-margin-target-price \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"cost":40,"target_margin_percent":20}'const res = await fetch("https://api.kit.forhosting.com/ecom/product-margin-target-price", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"cost": 40,
"target_margin_percent": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/ecom/product-margin-target-price",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"cost": 40,
"target_margin_percent": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/ecom/product-margin-target-price", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"cost":40,"target_margin_percent":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"cost":40,"target_margin_percent":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/ecom/product-margin-target-price", 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
{
"cost": 40,
"target_margin_percent": 20
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "ecom.product_margin_target_price",
"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. |