Escrow Boutique : Paiements sécurisés pour les propriétaires de boutiques

Lorsqu’un joueur achète un produit dans une boutique appartenant à un utilisateur, le paiement n’est plus envoyé immédiatement au propriétaire de la boutique. Au lieu de cela, les coins sont retenus en escrow par le serveur jusqu’à ce que l’acheteur confirme la réception des marchandises. Ce n’est qu’alors que le propriétaire de la boutique reçoit son paiement — 98% on-chain, avec une commission de 2% pour le serveur.

Pourquoi l’Escrow ?

Sans escrow, un propriétaire de boutique pourrait recevoir le paiement et ne jamais livrer la marchandise. L’acheteur n’aurait aucun recours. L’escrow protège les deux parties :

  • Les acheteurs peuvent contester une commande si les marchandises ne sont pas livrĂ©es ou ne correspondent pas Ă  la description. Le paiement est gelĂ© jusqu’à ce qu’un administrateur examine le cas.
  • Les propriĂ©taires de boutiques sont garantis de recevoir leur paiement une fois que l’acheteur confirme — ou automatiquement après 7 jours si l’acheteur n’agit pas.

Comment ça fonctionne

1 L’acheteur paie
L’acheteur envoie la totalité du paiement à la Wallet opérateur du serveur. Les coins sont retenus en escrow. Le statut de la commande est défini sur escrow.

2 L’acheteur confirme la réception
L’acheteur appelle POST /shop/confirm-receipt pour confirmer qu’il a reçu les marchandises. Le serveur envoie immédiatement 98% du paiement on-chain à la Wallet du propriétaire de la boutique. Le serveur conserve une commission de 2%.

3 Libération automatique après 7 jours
Si l’acheteur ne confirme ni ne conteste dans les 7 jours, le paiement est libéré automatiquement vers le propriétaire de la boutique. Un processus en arrière-plan vérifie toutes les heures les escrows expirés.

4 Résolution des litiges
Si l’acheteur n’est pas satisfait, il peut appeler POST /shop/dispute pour geler le paiement. Un administrateur examine ensuite le cas via POST /shop/admin/resolve-payout et soit :

  • Libère le paiement vers le propriĂ©taire de la boutique, ou
  • Rembourse — le paiement est annulĂ© et les coins restent auprès du serveur (l’acheteur peut ĂŞtre indemnisĂ© manuellement).

Référence des statuts de paiement

StatutSignification
noneBoutique officielle ou aucune commande
escrowCoins retenus par le serveur, en attente de confirmation de l’acheteur
disputedL’acheteur a contesté, examen par un administrateur en attente
paid98% envoyés au propriétaire on-chain
refundedL’administrateur a annulé le paiement, les coins restent auprès du serveur
failedLe transfert on-chain a échoué

Points d’accès API

Point d’accèsQuiObjectif
POST /shop/confirm-receiptAcheteurConfirmer la réception → libérer l’escrow
POST /shop/disputeAcheteurContester la commande → geler l’escrow
POST /shop/admin/resolve-payoutAdministrateurRésoudre le litige (libérer ou rembourser)
GET /shop/my-payoutsPropriétaire de boutiqueConsulter les totaux escrow + payés et l’historique

Sélection de la Wallet

Le paiement est envoyé à la Wallet du propriétaire de la boutique sur la même chaîne que le paiement :

Devise de paiementWallet du propriétaire utilisée
CC (Cash Coins)CC wallet (repli : KC wallet)
KC (Keshe Coins)KC wallet

Répartition des revenus

BénéficiairePart
Propriétaire de la boutique98%
Commission du serveur2%

La commission de 2% couvre les coûts d’infrastructure : les frais de blockchain (le cas échéant), l’hébergement du serveur et le service d’escrow lui-même.

Boutiques officielles

Les boutiques officielles Erleuchtung (appartenant au serveur, owner_id IS NULL) sont exclues du système d’escrow. Les paiements pour les produits des boutiques officielles vont directement au serveur sans répartition de paiement.

Et ensuite ?

Le système d’escrow est désormais en ligne. Les propriétaires de boutiques peuvent suivre leurs soldes d’escrow en attente et leurs gains payés via le point d’accès GET /shop/my-payouts. Un tableau de bord frontend pour gérer les paiements, confirmer les réceptions et déposer des litiges suivra dans une prochaine version.