Zum Inhalt springen

Solana und Tron

Solana- und Tron-Netzwerke werden in GET /api/v1/networks neben EVM-Netzwerken aufgeführt, mit family auf solana oder tron gesetzt. Lesen Sie deren Token, Dezimalstellen und minimum_payment aus der API; führen Sie keine eigene Liste. Adressen in diesen Netzwerken verwenden ihr eigenes Base58-Format in Anfragen, Antworten und Webhooks.

EVM Solana Tron
Zahlungsadresse Eine Contract-Adresse. Der Empfänger ist beim Erstellen der Adresse on-chain fest zugewiesen. Ein Schlüssel pro Zahlung, gehalten vom Invoise-Signer. Ein Schlüssel pro Zahlung, gehalten vom Invoise-Signer.
Verwahrung Mittel können nur an den on-chain fest zugewiesenen Empfänger gehen, abzüglich der Gebühr. Invoise hält eine Zahlung nur, bis sie an Ihren Empfänger weitergeleitet wird. Invoise hält eine Zahlung, bis sie weitergeleitet wird. Es gibt keinen Zahlungscontract.
Empfänger Der recipient des Shops PUT /shops/{shop_id}/solana-recipient PUT /shops/{shop_id}/tron-recipient
Delegierter Optional Keiner Keiner
Sandbox-Shop Ja Nein: 400 solana_sandbox_unavailable Ja

Invoise schaltet Tron für einen Händler auf Anfrage frei; fragen Sie den Support. Seine minimum_payment ist höher als bei anderen Netzwerken.

Ein Shop benötigt einen Solana- oder Tron-Empfänger, bevor er in diesem Netzwerk ausstellen kann. Ohne einen gibt das Erstellen einer Rechnung oder Einzahlung 400 solana_setup_required oder 400 tron_setup_required zurück.

Terminal-Fenster
curl -X PUT 'https://platform.invoise.me/api/v1/shops/{shop_id}/solana-recipient' \
-H 'Authorization: Bearer <session-token>' \
-H 'Idempotency-Key: <saved-unique-key>' \
-H 'Content-Type: application/json' \
-d '{"address":"<your-solana-wallet>"}'

Verwenden Sie /tron-recipient für Tron. Das Festlegen erfordert eine Inhaber-Sitzung; ein Shop-API-Schlüssel kann ihn nur lesen. GET auf demselben Pfad gibt {"address":"..."} zurück, mit einer leeren Adresse, bis eine festgelegt wird.

Der Empfänger wird einmalig festgelegt. Das erneute Senden derselben Adresse ist erfolgreich; eine andere Adresse gibt 400 shop_addresses_immutable zurück. Prüfen Sie die Adresse, bevor Sie sie speichern.

Netzwerk Regeln
Solana Verwenden Sie eine gewöhnliche Wallet, keine Program Derived Address und keine Invoise-Adresse: invalid_solana_address. Die Wallet muss bereits ein Konto für den Token besitzen; andernfalls gibt das Erstellen einer Rechnung oder Einzahlung solana_recipient_token_account_required zurück. Empfangen Sie diesen Token dort zunächst einmal.
Tron Eine fehlerhafte Adresse gibt invalid_tron_address oder invalid_tron_checksum zurück; eine Invoise-Adresse gibt invalid_tron_recipient zurück. Der Händler benötigt aktiviertes Tron, sonst merchant_network_disabled.

Die Invoise-Wallet läuft auf EVM-Netzwerken. Ein mit dem Auszahlungsziel wallet erstellter Shop sendet auch seine Solana-Zahlungen dorthin: Invoise überbrückt sie in die Wallet auf einem EVM-Netzwerk. Wenn eine Überbrückung nicht möglich ist, gibt das Ausstellen auf Solana 400 solana_bridge_unavailable zurück. GET /merchants/{merchant_id}/networks zeigt wallet_bridge: true bei einem Solana-Netzwerk, das überbrücken kann.

Tron-Zahlungen erreichen die Wallet nicht. Die Wahl der Wallet für Tron wird abgelehnt, solange keine Tron-Bridge bereit ist, und das Ausstellen auf Tron für einen Shop, dessen Tron-Auszahlungen an die Wallet gehen, gibt 400 tron_bridge_unavailable zurück. Belassen Sie Tron bei einer eigenen Adresse.

Wählen Sie pro Netzwerkfamilie mit PATCH /shops/{shop_id}: solana_payout_target und tron_payout_target nehmen address oder wallet entgegen. Siehe die API-Referenz.