MetalAPI
XAU3 997,89−1,54 %XAG53,936−1,51 %XPT1 554,47−0,83 %XPD1 047,03−0,44 %XCU6,5080+2,29 %WTI103,27+3,82 %BRENT111,70−1,30 %EUR1,120400−0,01 %GBP1,337500−0,01 %JPY0,0063761+0,14 %CHF1,213445−0,25 %TRY0,020125−0,12 %BTC80 648,87−0,16 %ETH2 354,03−0,08 %
Tous les articles
OrUnitésBijouterieGuide

Prix de l'or au gramme en devise locale : INR, AED, TRY via API

Le prix de l'or au gramme en INR, AED, TRY, EUR, GBP, SAR ou PKR via API, aux 10 grammes ou au tola, et pourquoi les prix locaux diffèrent du spot.

Par MetalAPI Team··11 min de lecture

Le prix de l'or au gramme dans votre devise locale

Le prix de l'or au gramme est le chiffre que regardent la plupart des acheteurs. Un bijoutier de Chennai, un client du souk de l'or de Dubaï et un épargnant d'Istanbul qui suit le gram altın raisonnent tous en grammes et dans leur propre devise, alors que le marché international cote l'or en dollars américains par once troy. Deux conversions les relient : des onces troy vers les grammes, et des dollars vers la devise locale.

prix de l'or au gramme (local) = prix en USD par once troy ÷ 31,1034768 × unités de devise locale par USD

Ce guide montre comment obtenir ce chiffre avec MetalAPI, comment en déduire les prix aux 10 grammes et au tola que cotent certains marchés, comment le mettre en forme pour des lecteurs locaux, et pourquoi le prix d'une boutique locale correspond rarement au prix spot converti.

Demander le prix de l'or au gramme par API

MetalAPI effectue les deux conversions côté serveur : unit=gram transforme le prix à l'once troy en prix au gramme et base définit la devise. Les deux fonctionnent sur tous les plans, Free compris :

bash
curl "https://metalapi.com/api/v1/latest?base=INR&currencies=XAU&unit=gram" \
  -H "X-API-Key: $METALAPI_KEY"

Le prix se trouve sous la clé qui associe la devise de base et le symbole, ici INRXAU : des roupies par gramme d'or pur. La réponse ci-dessous utilise le cours de l'or d'exemple de la documentation, 3 997,89 USD l'once troy, et un taux supposé de 88,00 roupies par dollar. Ce sont deux illustrations, pas des cotations en direct :

Réponse d'illustration (88,00 INR par USD supposés)
{
  "success": true,
  "timestamp": 1792834892,
  "date": "2026-10-24",
  "base": "INR",
  "unit": "gram",
  "rates": {
    "XAU": 0.00008840878563,
    "INRXAU": 11311.09304
  }
}
  • Un seul instantané. L'or et le taux de change proviennent du même instant : pas d'appel de change séparé, ni de décalage entre les deux.
  • La clé simple est l'inverse. XAU contient ici des grammes d'or par roupie. Affichez la clé préfixée ; le guide des formats de données explique les deux sens.
  • Il n'existe pas d'unité tola ni 10 grammes. unit accepte troy_oz (par défaut), gram, kilogram, ounce, pound, metric_ton et short_ton ; toute autre valeur renvoie l'erreur 209 (invalid_unit). Les deux s'obtiennent par une simple multiplication du prix au gramme.

Prix de l'or au gramme par marché : les formules

Les usages du commerce de détail varient selon les pays. Le tableau indique la cotation habituelle sur plusieurs grands marchés et comment l'obtenir à partir du prix 24K au gramme de l'API. Pour les autres carats, multipliez par K ÷ 24, ou utilisez /carat avec un plan payant.

MarchébaseCotation de détail habituelleÀ partir du prix au gramme de l'API
IndeINR24K et 22K, au gramme et aux 10 grammes× 10 pour 10 g ; × 22 ÷ 24 pour le 22K
PakistanPKR24K et 22K, au tola et aux 10 grammes× 11,6638038 pour un tola ; × 10 pour 10 g
Émirats arabes unis (Dubaï)AED24K, 22K, 21K et 18K au gramme× K ÷ 24, ou /carat?carat=all
Arabie saouditeSAR24K, 22K, 21K et 18K au gramme× K ÷ 24, ou /carat?carat=all
TurquieTRYGram altın : 24K au grammeLe prix au gramme tel que renvoyé
Zone euroEURAu gramme, et au lingot pour l'or d'investissement× poids du lingot en grammes
Royaume-UniGBPAu gramme et à l'once troyLe prix au gramme, ou omettez unit

Appliquées au cours de l'or d'exemple, les formules donnent les chiffres suivants. Les taux de change sont des hypothèses d'illustration, sauf celui de l'euro, qui est l'exemple de la documentation (1,1642 USD par euro) :

DeviseUnités par USD (hypothèse)24K au gramme22K au gramme24K les 10 g24K le tola
INR88,0011 311,0910 368,50113 110,93131 930,37
AED3,6725472,05432,714 720,455 505,84
SAR3,75482,01441,844 820,075 622,03
TRY42,005 398,484 948,6053 984,7662 966,77
PKR280,0035 989,8432 990,69359 898,41419 778,45
EUR0,8590110,41101,211 104,061 287,76
GBP0,7596,4088,37964,011 124,41
USD1128,54117,821 285,351 499,21

L'article sur la conversion des unités donne les facteurs exacts derrière les colonnes au gramme et au tola.

Prix de l'or au gramme en roupies indiennes

En Inde, l'or est généralement coté pour l'or 24 carats (999) et pour l'or 22 carats (916), le standard de la bijouterie. base=INR&unit=gram renvoie le prix 24K au gramme. Pour le 22K, multipliez par 22 ÷ 24, ou demandez-le à /carat avec un plan payant :

bash
curl "https://metalapi.com/api/v1/carat?carat=22&unit=gram&base=INR" \
  -H "X-API-Key: $METALAPI_KEY"

Au taux d'illustration, 11 311,09 roupies par gramme d'or 24K deviennent 10 368,50 par gramme de 22K. Les prix de l'or par carat expliqués couvre les facteurs de pureté et les poinçons de titre comme 916 et 750.

Le cours de l'or aux 10 grammes

De nombreux tableaux de cours, journaux et comparateurs indiens cotent l'or aux 10 grammes, et les cours pakistanais affichent souvent un prix aux 10 grammes à côté du prix au tola. Demandez des grammes et multipliez par 10, en multipliant avant d'arrondir : arrondir d'abord le prix au gramme à la roupie près peut décaler le prix aux 10 grammes de jusqu'à cinq roupies.

rates.py
import os
from decimal import Decimal, ROUND_HALF_UP

import requests

TOLA_G = Decimal("11.6638038")  # 180 grains
RUPEE = Decimal("1")

r = requests.get(
    "https://metalapi.com/api/v1/latest",
    params={"base": "INR", "currencies": "XAU", "unit": "gram"},
    headers={"X-API-Key": os.environ["METALAPI_KEY"]},
    timeout=10,
)
data = r.json(parse_float=Decimal)
if not data["success"]:
    raise RuntimeError(data["error"])

per_gram = data["rates"]["INRXAU"]  # 24K, roupies par gramme
for karat in (24, 22):
    g = per_gram * karat / 24
    print(
        f"{karat}K  1 g: {g.quantize(RUPEE, ROUND_HALF_UP)}"
        f"  10 g: {(g * 10).quantize(RUPEE, ROUND_HALF_UP)}"
        f"  1 tola: {(g * TOLA_G).quantize(RUPEE, ROUND_HALF_UP)}"
    )

Avec la réponse d'illustration ci-dessus, il affiche 11311, 113111 et 131930 roupies pour le 24K, puis 10369, 103685 et 120936 pour le 22K. parse_float=Decimal évite que les prix passent par des flottants binaires, ce qui compte dès qu'un nombre arrive sur une facture.

Le prix de l'or au tola

Le tola est l'unité de poids traditionnelle de l'or en Asie du Sud. Il reste très utilisé au Pakistan et au Népal ainsi que sur les marchés du Golfe, où les lingots de dix tolas (116,64 g) sont un produit courant. Il est défini comme 180 grains : exactement 11,6638038 grammes, soit trois huitièmes d'once troy. Faute d'unité tola dans l'API, convertissez dans un sens ou dans l'autre :

prix au tola = prix au gramme × 11,6638038 = prix à l'once troy × 0,375

Les deux donnent 1 499,21 USD le tola au prix d'exemple. Si une liste de prix ou un contrat utilise un poids de tola arrondi, faites du poids en grammes une valeur de configuration, affichez-le sur la page et ne le mélangez jamais avec le tola exact dans un même tableau.

Prix de l'or au gramme à Dubaï (AED)

Les bijouteries de Dubaï et les tableaux de cours publiés affichent les prix au gramme en dirhams, généralement pour le 24K, le 22K, le 21K et le 18K. Avec un plan payant, une seule requête /carat renvoie tous les carats ; sur Free, demandez base=AED&unit=gram à /latest et appliquez vous-même K ÷ 24 :

bash
curl "https://metalapi.com/api/v1/carat?carat=all&unit=gram&base=AED" \
  -H "X-API-Key: $METALAPI_KEY"

Le dirham des Émirats est arrimé au dollar américain à 3,6725 : les prix de l'or en dirhams suivent donc presque exactement le prix en dollars, soit environ 472,05 AED par gramme de 24K et 432,71 pour le 22K au prix d'exemple. Le riyal saoudien (arrimé à 3,75), le riyal qatari, le dinar bahreïni et le rial omanais sont eux aussi arrimés au dollar. Utilisez tout de même le taux de l'API plutôt qu'une parité codée en dur, pour que le code reste identique pour toutes les devises.

Gram altın : le prix de l'or au gramme en livres turques

En Turquie, le gram altın, c'est-à-dire le prix d'un gramme d'or 24 carats en livres, est la cotation de l'or la plus suivie, avec les prix des pièces comme le çeyrek. base=TRY&unit=gram le renvoie sous TRYXAU : 5 398,48 livres par gramme avec le cours de l'or d'exemple et un taux supposé de 42,00 livres par dollar.

Un prix de l'or en livres combine l'or en dollars et le dollar en livres : il peut donc monter alors que l'or lui-même reste stable. Pour expliquer une variation, /change?currencies=XAU,TRY avec la base par défaut USD renvoie la variation en pourcentage de l'or en dollars (USDXAU) et des livres par dollar (TRY) entre deux dates. La variation du gram altın vaut (1 + variation de l'or) × (1 + variation de la devise) − 1.

Exemple de code : plusieurs marchés en une requête

Un tableau multi-pays n'a pas besoin d'un appel par devise. Gardez la base par défaut USD et demandez l'or au gramme en même temps que les devises : unit ne modifie que le prix du métal, et chaque clé de devise, comme rates.INR, contient des unités de cette devise par dollar. Leur produit donne le prix local au gramme, et le tableau entier ne coûte qu'une requête :

gold-board.mjs
const TOLA_GRAMS = 11.6638038;

// Chaque marché : devise, locale d'affichage, carats et poids (en grammes) à afficher
const MARKETS = [
  { currency: "INR", locale: "en-IN", karats: [24, 22], weights: { gram: 1, "10 g": 10 } },
  { currency: "PKR", locale: "en-PK", karats: [24, 22], weights: { tola: TOLA_GRAMS, "10 g": 10 } },
  { currency: "AED", locale: "en-AE", karats: [24, 22, 21, 18], weights: { gram: 1 } },
  { currency: "TRY", locale: "tr-TR", karats: [24], weights: { gram: 1 } },
  { currency: "EUR", locale: "de-DE", karats: [24], weights: { gram: 1 } },
];

const url = new URL("https://metalapi.com/api/v1/latest");
url.searchParams.set("currencies", ["XAU", ...MARKETS.map((m) => m.currency)].join(","));
url.searchParams.set("unit", "gram"); // n'affecte que XAU ; les taux de change ne changent pas

const res = await fetch(url, { headers: { "X-API-Key": process.env.METALAPI_KEY } });
const data = await res.json();
if (!data.success) throw new Error(`${data.error.code}: ${data.error.info}`);

const usdPerGram = data.rates.USDXAU; // or 24K, USD par gramme
for (const m of MARKETS) {
  const perUsd = data.rates[m.currency]; // unités de la devise pour 1 USD
  if (perUsd === undefined) continue;
  const fmt = new Intl.NumberFormat(m.locale, { style: "currency", currency: m.currency });
  for (const karat of m.karats) {
    for (const [label, grams] of Object.entries(m.weights)) {
      const price = usdPerGram * perUsd * grams * (karat / 24); // arrondi uniquement par format()
      console.log(`${m.currency} ${karat}K per ${label}: ${fmt.format(price)}`);
    }
  }
}
// p. ex. "INR 24K per 10 g: ₹1,13,110.93" au taux d'illustration de 88.00 INR par USD
console.log("As of", new Date(data.timestamp * 1000).toISOString());

Pourquoi les prix locaux de l'or diffèrent du prix spot converti

L'API renvoie le prix spot international de l'or pur, converti au taux de change du marché. Le tableau d'un bijoutier ou le cours quotidien d'une association de négociants part de cette référence et y ajoute des coûts locaux, si bien qu'il est généralement plus élevé :

  • Droits d'importation. Les pays qui importent l'essentiel de leur or y appliquent souvent des droits de douane, ce qui place le prix de gros local au-dessus du prix international converti. Les taux évoluent au gré des budgets et de la politique commerciale.
  • GST et TVA. L'Inde applique la GST à l'or, des États du Golfe comme les Émirats arabes unis et l'Arabie saoudite appliquent la TVA, et l'UE exonère de TVA l'or d'investissement, mais pas les bijoux. De nombreux régimes traitent les lingots et les pièces différemment des bijoux et de la façon.
  • Façon et pertes. La main-d'œuvre est facturée au gramme, en pourcentage ou à la pièce, et certains marchés ajoutent une provision pour les pertes de métal.
  • Primes et spreads des négociants. Les négociants vendent au-dessus de la référence et rachètent en dessous, et les petits lingots et les pièces supportent des primes au gramme plus élevées que les gros lingots.
  • Offre et demande locales. Une forte demande ou des restrictions à l'importation peuvent porter le prix local au-dessus du prix international rendu sur place ; une demande faible peut le faire passer en dessous.
  • Moment et taux de change. Les cours locaux sont souvent fixés une ou quelques fois par jour avec le taux de change propre d'une banque ou d'une association, alors que le spot évolue en continu.
  • Pureté. Une cotation locale peut porter sur des lingots 995 ou de l'or de bijouterie 22K, alors que INRXAU correspond à l'or pur. Comparez ce qui est comparable.

Modélisez ces éléments sous forme de paramètres nommés et documentés appliqués au prix de l'API, plutôt que sous forme d'une majoration opaque unique, et prenez les taux de droits et de taxes auprès de sources officielles ou de votre conseiller fiscal. Décrivez ensuite précisément ce que vous publiez : « prix spot international, converti en INR » n'affirme pas la même chose que « cours de l'or du jour à Mumbai ».

Cet article explique des calculs. Il ne constitue pas un conseil en investissement, en tarification ou en fiscalité.

Conseils d'affichage : formats numériques locaux

  • Utilisez le format numérique de la locale. L'anglais indien groupe les chiffres en lakhs et en crores (₹1,13,110.93), le turc utilise un point pour les milliers et une virgule pour les décimales (₺5.398,48), et l'allemand place le symbole de l'euro à la fin (110,41 €). Laissez Intl.NumberFormat ou la bibliothèque de localisation de votre plateforme s'en charger.
  • Choisissez délibérément le nombre de décimales. La plupart des devises utilisent deux décimales ; le dinar koweïtien, le dinar bahreïni et le rial omanais en utilisent trois. Les tableaux en roupies aux 10 grammes ou au tola affichent généralement des roupies entières : passez-y maximumFractionDigits: 0.
  • Choisissez le système de chiffres. Certaines locales arabes, comme ar-SA, utilisent par défaut les chiffres arabes orientaux. Pour des chiffres latins, utilisez une locale comme ar-SA-u-nu-latn.
  • Indiquez le carat, le poids et la devise. « 22K, les 10 g, INR » ne laisse aucune place au doute.
  • Affichez l'heure locale. timestamp est en UTC ; formatez-le dans Asia/Kolkata, Asia/Dubai ou Europe/Istanbul. L'or au comptant ferme le vendredi à 17:00, heure de New York, et rouvre le dimanche à 17:00 : présentez donc le prix du week-end comme le cours de clôture du marché.

Historique du prix de l'or au gramme en devise locale

base et unit fonctionnent aussi sur les endpoints historiques : un graphique de l'or au gramme en roupies ou en dirhams ne demande donc aucune conversion supplémentaire. L'historique quotidien remonte à 2000 pour les métaux et à 1999 pour les devises, sur tous les plans ; une requête /timeframe couvre jusqu'à 30 jours sur Free et 365 sur les plans payants :

bash
curl "https://metalapi.com/api/v1/timeframe?base=INR&currencies=XAU&unit=gram&start_date=2026-09-24&end_date=2026-10-23" \
  -H "X-API-Key: $METALAPI_KEY"

Les valeurs sont des clôtures quotidiennes ; les week-ends et les jours fériés peuvent manquer, et les prix des métaux antérieurs à octobre 2026 sont dérivés des contrats à terme de première échéance : ils peuvent donc différer légèrement du spot.

Obtenez le prix de l'or au gramme pour votre marché

Pour créer une page de cours de l'or locale, inscrivez-vous pour obtenir une clé gratuite, demandez unit=gram avec votre devise comme base, puis déduisez les prix aux 10 grammes, au tola et par carat comme indiqué plus haut. Le plan Free inclut 100 requêtes par mois avec des mises à jour quotidiennes, ce qui suffit pour construire et tester. Pour un tableau en direct, Lite met à jour les prix toutes les 30 minutes et ajoute /carat, Standard toutes les 10 minutes et ajoute les prix bid et ask, et le plan le plus rapide toutes les 5 secondes. La page des tarifs compare les plans, et la page des symboles liste toutes les devises prises en charge.

Questions fréquentes

L'API renvoie-t-elle le prix de l'or au tola ou aux 10 grammes ?

Pas sous forme d'unités. Demandez unit=gram et multipliez par 10, ou par 11,6638038 pour un tola ; ou multipliez le prix par défaut à l'once troy par 0,375. unit=tola renvoie l'erreur 209.

Pourquoi le prix de l'API est-il inférieur au cours de l'or de mon bijoutier ?

L'API renvoie le prix spot international de l'or pur au taux de change du marché. Les cours locaux ajoutent les droits d'importation, la GST ou la TVA, la façon, les primes des négociants et l'effet de l'offre et de la demande locales, et peuvent porter sur une pureté inférieure ou sur une fixation antérieure.

Quelles devises locales sont prises en charge ?

57 devises, dont INR, PKR, BDT et LKR en Asie du Sud, AED, SAR, QAR, KWD, BHD et OMR dans le Golfe, ainsi que TRY, EGP, EUR et GBP. Chacune peut servir de base, et /api/v1/symbols renvoie la liste complète sans être décompté de votre quota.

À quelle fréquence le prix de l'or au gramme est-il mis à jour ?

Aussi souvent que votre plan le permet : une fois par jour sur Free, toutes les 30 minutes sur Lite, toutes les 10 minutes sur Standard, toutes les 60 secondes sur Advanced et Pro, toutes les 15 secondes sur Ultra et Business, et toutes les 5 secondes sur Enterprise. Le week-end, le prix reste à la clôture du vendredi.

Puis-je obtenir le prix de l'or 22K ou 21K au gramme dans ma devise ?

Oui. Avec les plans payants, /carat avec carat=22, carat=21 ou carat=all, plus unit=gram et votre base, renvoie des prix par carat prêts à l'emploi. Sur Free, multipliez le prix 24K au gramme par K ÷ 24.

Essayez avec vos propres données

Créez un compte gratuit et envoyez votre première requête en moins de deux minutes. 100 requêtes par mois, sans carte bancaire.

À lire aussi