Gamma Markets
Gamma Markets est un ensemble de conventions e-commerce construites directement sur les annonces classées NIP-99, développées de manière collaborative par un groupe de travail de développeurs de places de marché Nostr : les équipes derrière Shopstr, Cypher, Plebeian Market et Conduit Market. Il comble les conventions d’expédition, de flux de commandes, de collections et d’avis que NIP-99 lui-même laisse indéfinies.
Fonctionnement
Gamma Markets ajoute cinq types d’events autour de l’event d’annonce kind 30402 existant de NIP-99, sans modifier la forme de cet event :
- Kind 30405 - collections de produits, regroupant plusieurs annonces ensemble via des tags
a - Kind 30406 - options d’expédition, avec tarification par pays et règles de coût optionnelles basées sur le poids ou la distance
- Kind 16 - messages de commande : création (type 1), demandes de paiement (type 2), mises à jour de statut (type 3) et mises à jour d’expédition (type 4)
- Kind 14 - communication générale acheteur/vendeur
- Kind 17 - reçus de paiement
- Kind 31555 - avis sur les produits, adressés à un pubkey vendeur spécifique et au tag
dde l’annonce
Les préférences de paiement d’un vendeur sont déclarées via un tag payment_preference sur ses métadonnées de profil kind 0, et les clients découvrent les applications compatibles via les recommandations d’applications NIP-89. La communication des commandes s’appuie sur les messages privés NIP-17, sans nouveau schéma de chiffrement propre.
Le choix de conception déterminant de la spécification est que rien ne se propage en cascade : une annonce qui appartient à une collection, ou qui utilise une option d’expédition, la référence explicitement avec un tag a au lieu d’hériter automatiquement des paramètres de son parent. C’est un départ délibéré de l’ancien modèle de stall NIP-15, où un produit héritait silencieusement de la devise et du tableau d’expédition de son stall.
Exemple : création de commande (kind 16, type 1)
{
"kind": 16,
"content": "Please leave the package with the doorman.",
"tags": [
["p", "<merchant-pubkey>"],
["subject", "New order"],
["type", "1"],
["order", "order-8f21"],
["amount", "115000"],
["item", "30402:<merchant-pubkey>:keyboard-mx-blue-01", "1"],
["shipping", "30406:<merchant-pubkey>:standard-regional"]
]
}
Pourquoi c’est important
NIP-99 seul ne standardise que l’annonce elle-même, une petite annonce signée et adressable. Avant Gamma Markets, chaque client construisant du véritable e-commerce sur NIP-99 inventait ses propres conventions privées pour l’expédition, le paiement et les avis, ce qui signifiait que deux clients conformes à NIP-99 pouvaient chacun afficher une annonce correctement mais n’avaient aucun moyen partagé de finaliser une commande entre eux. Gamma Markets comble cette lacune sans toucher au format d’annonce NIP-99 lui-même, de sorte que les annonces NIP-99 existantes restent valides sans modification.
Implémentations
- Shopstr - place de marché Nostr, l’un des quatre projets ayant rédigé la spécification
- Conduit Mono - protocole de place de marché construisant son propre flux d’état des commandes et de paiement dans le même espace de conception
Sources primaires :
- Dépôt de la spécification Gamma Markets
- Extension de cas d’utilisation e-commerce NIP-99, PR #1784 - lien fusionné depuis le document canonique NIP-99 vers la spécification Gamma Markets
Mentionné dans :
Voir aussi :