Zum Hauptinhalt springen

Funktionsdokumentation

Dieses Dokument bietet einen umfassenden Überblick über die Kernfunktionen des Mileston Payment Client SDK. Jede Funktion ist darauf ausgelegt, spezifische Aufgaben im Zusammenhang mit Zahlungen, Benutzerverwaltung und Wallet-Operationen zu übernehmen.

fetchPayment

Ruft Zahlungsdetails vom Server ab. Diese Funktion ist vielseitig und unterstützt das Abrufen von Details für Rechnungen, Zahlungslinks und wiederkehrende Zahlungen.

Verwendung

import { fetchPayment } from "mileston-payment-client";

const paymentDetails = await fetchPayment({
apikey: "Ihr-API-Schlüssel", // Verwenden Sie hier Ihren Checkout-API-Schlüssel
businessid: "Ihre-Geschäfts-ID",
paymentId: "Zahlungs-ID",
paymentType: "invoice", // oder "payment-link", "recurring"
});
console.log(paymentDetails);

Parameter

ParameternameTypBeschreibung
apikeystringIhr API-Schlüssel. Wird für die Authentifizierung benötigt.
businessidstringIhre Geschäfts-ID. Identifiziert Ihr Unternehmen im System.
paymentIdstringDie ID der abzurufenden Zahlung. Eindeutig für jede Zahlung.
paymentTypestringDer Zahlungstyp. Unterstützte Werte:
- "invoice": Für Rechnungszahlungen.
- "payment-link": Für Zahlungen über Zahlungslinks.
- "recurring": Für wiederkehrende Zahlungen.

Rückgabewert

RückgabetypBeschreibung
Promise<object>Ein Promise, das die Zahlungsdetails enthält. Die Struktur hängt vom paymentType ab.

Hinweise

  • Stellen Sie sicher, dass apikey und businessid gültig sind, sonst schlägt die Anfrage fehl.
  • Fehler sollten durch einen try-catch-Block abgefangen werden.

getUserDetails

Ruft Benutzerdetails vom Server ab. Diese Funktion ist nützlich, um Informationen über einen bestimmten Benutzer Ihres Unternehmens zu erhalten.

Verwendung

import { getUserDetails } from "mileston-payment-client";

const userDetails = await getUserDetails("Ihr-API-Schlüssel", "Geschäfts-ID");
console.log(userDetails);

Parameter

ParameternameTypBeschreibung
apikeystringIhr API-Schlüssel. Wird für die Authentifizierung benötigt.
businessIdstringDie Geschäfts-ID für die Header. Pflichtfeld.

Rückgabewert

RückgabetypBeschreibung
Promise<object>Ein Promise, das die Benutzerdetails enthält. Die Antwort enthält benutzerspezifische Informationen wie Name, E-Mail und Rollen.

Hinweise

  • Die Funktion wirft einen Fehler, wenn apikey oder businessId fehlt.
  • Nutzen Sie diese Funktion, um Benutzerinformationen vor sensiblen Aktionen zu prüfen.

MilestonPayButton

Eine Klasse zum Erstellen und Verwalten von Zahlungsbuttons. Diese Klasse bietet einen anpassbaren Button, der sich nahtlos in das Mileston Payment System integriert.

Verwendung

import { MilestonPayButton } from "mileston-payment-client";

const container = document.getElementById("payment-button-container");
const payButton = new MilestonPayButton(container, {
buttonText: "Jetzt bezahlen",
onPaymentComplete: () => console.log("Zahlung abgeschlossen!"),
onPaymentError: (error) => console.error("Zahlungsfehler:", error),
});

Methoden

MethodennameParameterRückgabetypBeschreibung
updateButtonTexttext: stringvoidAktualisiert den Button-Text.
updateButtonStylestyles: Partial<CSSStyleDeclaration>voidAktualisiert das Button-Design für individuelles Styling.
destroyKeinevoidEntfernt den Button aus dem DOM und räumt Event-Listener auf.

Hinweise

  • Die Callbacks onPaymentComplete und onPaymentError sind wichtig für das Event-Handling.
  • Stellen Sie sicher, dass das Container-Element im DOM existiert, bevor Sie den Button initialisieren.

getOnRampData

Ruft Onramp-Daten für Zahlungen ab. Diese Funktion wird verwendet, um Informationen für Onramp-Transaktionen zu erhalten.

Verwendung

import { getOnRampData } from "mileston-payment-client";

const data = await getOnRampData(
{
amount: "100",
recipientWalletAddress: "0xEmpfängerAdresse",
chain: "eth", // oder "avax", "base", "pol", "arb"
},
"Ihr-API-Schlüssel",
"Ihre-Geschäfts-ID"
);
console.log(data);

Parameter

ParameternameTypBeschreibung
amountstringDer Betrag für das Onramp.
recipientWalletAddressstringDie Wallet-Adresse des Empfängers.
chainstringDas Blockchain-Netzwerk (z.B. "eth").
apikeystringIhr API-Schlüssel.
businessidstringIhre Geschäfts-ID.

Rückgabewert

RückgabetypBeschreibung
Promise<object>Ein Promise, das die Onramp-Daten enthält. Die Antwort enthält z.B. Zahlungslinks und Transaktionsmetadaten.

Hinweise

  • Diese Funktion ist essenziell für die Integration von Onramp-Services.
  • Prüfen Sie das params-Objekt auf alle erforderlichen Felder.

getPaymentWallet

Verwaltet Wallet-bezogene Zahlungsoperationen. Diese Funktion ruft Informationen zu einem bestimmten Wallet-Typ ab.

Verwendung

import { getPaymentWallet } from "mileston-payment-client";

const walletData = await getPaymentWallet({
apikey: "Ihr-API-Schlüssel",
businessid: "Ihre-Geschäfts-ID",
walletType: "sui", // oder "evm"
});
console.log(walletData);

Parameter

ParameternameTypBeschreibung
apikeystringIhr API-Schlüssel.
businessidstringIhre Geschäfts-ID.
walletTypestringDer Wallet-Typ.

Rückgabewert

RückgabetypBeschreibung
Promise<object>Ein Promise, das die Wallet-Daten enthält. Die Antwort enthält Details wie Saldo und Transaktionshistorie.

Hinweise

  • Nutzen Sie diese Funktion, um Wallet-Informationen vor Transaktionen zu prüfen.
  • Fehler sollten benutzerfreundlich behandelt werden.

savePayment

Speichert Zahlungsdetails auf dem Server. Diese Funktion dient dazu, Zahlungsinformationen für spätere Referenz oder Verarbeitung zu speichern.

Verwendung

import { savePayment } from "mileston-payment-client";

const response = await savePayment({
apikey: "Ihr-API-Schlüssel",
businessid: "Ihre-Geschäfts-ID",
type: "invoice", // oder "payment-link", "recurring"
body: {
/* Zahlungsdetails */
},
nativeTokens: "optionale-native-tokens",
});
console.log(response);

Parameter

ParameternameTypBeschreibung
apikeystringIhr API-Schlüssel.
businessidstringIhre Geschäfts-ID.
typestringDer Zahlungstyp (z.B. "invoice", "payment-link", "recurring").
bodyobjectDie Zahlungsdetails.
nativeTokensstringNative Tokens für die Zahlung (optional).

Rückgabewert

RückgabetypBeschreibung
Promise<object>Ein Promise, das die Serverantwort enthält. Die Antwort bestätigt die gespeicherte Zahlung.

Hinweise

  • Das body-Objekt muss alle erforderlichen Felder für den jeweiligen Zahlungstyp enthalten.
  • Diese Funktion ist entscheidend für die sichere Speicherung von Zahlungsdaten.

handlePayWithEVMWalletConnect

Verarbeitet Zahlungstransaktionen mit EVM-kompatiblen Wallets über WalletConnect. Unterstützt sowohl native Tokens (z.B. AVAX, POL, ETH) als auch ERC-20 Tokens (z.B. USDC, USDT).

Verwendung

import { handlePayWithEVMWalletConnect } from "mileston-payment-client";

const result = await handlePayWithEVMWalletConnect({
env: "prod",
evm: "eth",
recipientAddress: "0xEmpfängerAdresse",
amount: "100",
token: "USDC",
});
console.log(result.txHash, result.payerAddress);

Parameter

ParameternameTypBeschreibung
envstringDie Umgebung (z.B. "test", "prod").
evmstringDie EVM-Chain-ID (z.B. "eth", "pol").
recipientAddressstringDie Wallet-Adresse des Empfängers.
amountstringDer zu sendende Betrag (in Token-Einheiten, nicht Wei).
tokenstringDer Token-Typ (z.B. "AVAX", "ETH", "USDC", "USDT").

Rückgabewert

RückgabetypBeschreibung
Promise<object>Ein Promise mit den Transaktionsdetails, inkl. txHash, feeHash und payerAddress.

Beispiel

const result = await handlePayWithEVMWalletConnect({
env: "prod",
evm: "eth",
recipientAddress: "0xEmpfängerAdresse",
amount: "100",
token: "USDC",
});
console.log(result.txHash, result.payerAddress);