3.3 KiB
3.3 KiB
Monetarisierung - dgray.io
Preismodell
1 Anzeige = 1 Monat = 1 EUR/USD/CHF/GBP (oder 200 JPY)
- Einfach, transparent, fair
- Power-User (mit Reputation): 2 Monate Laufzeit
- Bezahlung ausschließlich via Monero (XMR) über eigenen BTCpay-Server
Reputation & Trust-System
Sichtbarkeit
- Anzeigen von Accounts mit erfolgreichen Verkäufen werden höher gerankt
- Neue Accounts erscheinen weiter unten in Suchergebnissen
Reputation-Stufen
| Stufe | Deals | Vorteile |
|---|---|---|
| Neu | 0 | Standard (1 Monat Laufzeit) |
| Verifizierter Verkäufer | 5+ | Badge, bessere Sichtbarkeit |
| Power-User | 15+ | 2 Monate Laufzeit, höheres Ranking |
| Top Seller | 50+ | Badge, Priority-Ranking, maximale Sichtbarkeit |
- Käufer bestätigt erfolgreichen Abschluss
- Deals werden erst nach Käufer-Bestätigung gezählt
Proof of Wallet (optional)
- Einmalige Monero-Mikrozahlung als Verifikation
- Zeigt: "Wallet verifiziert" im Profil
- Freiwillig, keine Pflicht
Anti-Abuse Maßnahmen
Rate-Limiting
- Max. 3 neue Anzeigen pro Tag für neue Accounts
- Limit erhöht sich mit Reputation
Captcha (Eigenes PoW)
- Proof-of-Work basiert, kein Tracking
- Keine externe Abhängigkeit, keine Lizenzkosten
- Client löst SHA256-Challenge (Difficulty 4, ~1-3 Sek)
- Bei Account-Erstellung (immer)
- Bei Anzeigen-Erstellung (nur neue Accounts ohne bisherige Listings)
- Bei Login (nur nach 3+ Fehlversuchen)
- Implementierung:
js/services/pow-captcha.js,js/components/pow-captcha.js
Payment-Integration
- Provider: BTCpay Server (self-hosted)
- URL: https://pay.xmr.rocks/
- Proxy:
pow.dgray.io— alle API-Aufrufe laufen über den PHP-Proxy (BTCPay API-Key bleibt serverseitig) - Primär: Monero (XMR)
- Alternativ: Andere Kryptos via Trocador-Plugin (automatischer Swap zu XMR)
- Preisumrechnung: Live XMR-Kurs via Kraken API
- EUR, USD, CHF, GBP, JPY
- Bestätigung: Nach 1 Blockchain-Confirmation (via Webhook)
Flow: Draft → Processing → Published
- User erstellt Listing → wird als
draftmitpayment_status: unpaidgespeichert - BTCPay Invoice wird über
pow.dgray.io/btcpay/invoiceerstellt - BTCPay Checkout-Modal öffnet sich im Frontend (
js/services/btcpay.js) - Nach Zahlung:
- Frontend: Prüft Status via
pow.dgray.io/btcpay/statusnach Modal-Close - Webhook:
pow.dgray.io/btcpay/webhookempfängt BTCPay Events, setztstatus: published+payment_status: paidnach 1 Confirmation
- Frontend: Prüft Status via
- Listing wird veröffentlicht (30 Tage Laufzeit,
expires_atwird gesetzt)
Endpunkte (pow.dgray.io)
| Endpoint | Methode | Beschreibung |
|---|---|---|
/btcpay/invoice |
POST | Invoice erstellen (listingId, currency) |
/btcpay/status?id={id} |
GET | Invoice-Status abfragen |
/btcpay/webhook |
POST | BTCPay Webhook (auto-publish nach Confirmation) |
Offene Fragen
BTCpay Server Setup & Hosting→ https://pay.xmr.rocks/XMR-Kurs API für Umrechnung→ Kraken APIAnzahl Deals für Power-User Status→ 5/15/50 StufenCaptcha-Lösung→ Eigenes PoW-Captcha (keine Lizenzkosten)Payment-Proxy→pow.dgray.io(PHP, API-Key serverseitig)Webhook für Auto-Publish→btcpay-webhook.phpaufpow.dgray.io