Robux-Überweisungen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Robux-Überweisungen ermöglichen es Roblox Plus Abonnenten, Robux direkt an andere Benutzer zu senden.

Um Überweisungen in deinem Spiel zu unterstützen, rufe PromptRobuxTransferAsync auf, um die Überweisungsaufforderung zu öffnen, und verwende BindReceiptHandler, um Überweisungsbelege zu verarbeiten. Wenn ein Abonnent eine Überweisung abschließt, verdient dein Spiel 10% der gesendeten Robux und der Empfänger erhält die verbleibenden 90%. Zum Beispiel zahlt eine Robux-Überweisung von 100 Robux 90 Robux an den Empfänger und 10 Robux an dein Spiel.

Die Robux, die dein Spiel aus Überweisungen verdient, sind berechtigt für das DevEx-Programm. Roblox erhebt keine Gebühren für diese Überweisungen.

Als Ersteller hast du keinen Zugriff auf Überweisungsdetails oder Kontrolle über die Ausführung. Alle Robux-Überweisungen werden von der Roblox-Plattform verarbeitet und verwaltet, und alle Aktionen von Sender und Empfänger unterliegen denselben Sicherheits- und Berechtigungskontrollen. Innerhalb deines Spiels werden Überweisungen durch eine von Roblox gesteuerte Benutzeroberfläche abgeschlossen, um sicherzustellen, dass sie sicher und richtlinienkonform sind.

Robux-Überweisungen anfordern

Um eine Robux-Überweisung innerhalb deines Spiels zu initiieren:

  1. Rufe PromptRobuxTransferAsync aus einem serverseitigen Skript auf.
  2. Übergebe die erforderlichen Parameter:
    • sender: Der Spieler, der die Überweisung initiiert.
    • receiverUserId: Die Benutzer-ID des Empfängers.
    • amount: Der Betrag an Robux, der transferiert werden soll.
  3. Speichere die zurückgegebene transferRequestId, die die Überweisungsanfrage identifiziert und später verwendet werden kann, um die Überweisung mit Belegen zu verknüpfen.

Das folgende Beispiel initiiert eine Robux-Überweisung zwischen zwei Benutzern:


local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
-- Überweist Robux, wenn ein Benutzer ein RemoteEvent auslöst
local transferEvent = game.ReplicatedStorage:WaitForChild("RequestTransfer")
transferEvent.OnServerEvent:Connect(function(sender, receiverUserId, amount)
-- Validiert die Eingaben
if not sender or not sender:IsA("Player") then
return
end
if typeof(receiverUserId) ~= "number" or receiverUserId <= 0 then
warn("Ungültige receiverUserId")
return
end
if typeof(amount) ~= "number" or amount <= 0 then
warn("Ungültiger Betrag")
return
end
local success, result = pcall(function()
return MarketplaceService:PromptRobuxTransferAsync(sender, receiverUserId, amount)
end)
if success then
print(`Überweisung initiiert mit TransferRequestId: {result}`)
else
warn(`Überweisung fehlgeschlagen: {result}`)
end
end)

Überweisungsbelege verarbeiten

Nach einer erfolgreichen Überweisung generiert Roblox Belege sowohl für den Sender als auch für den Empfänger. Du kannst diese Belege mit BindReceiptHandler verarbeiten, um zu bestätigen, dass die Überweisung erfolgreich abgeschlossen wurde.

Um zu ermutigen, dass Plus-Abonnenten Robux innerhalb deines Spiels transferieren, kannst du für jede erfolgreiche Überweisung Gegenstände oder andere Vorteile anbieten. Falls du das tust, verarbeite den Beleg, bevor du die Belohnung gewährst, um sicherzustellen, dass sie nur für abgeschlossene Überweisungen vergeben wird.

Um Robux-Überweisungsbelege zu verarbeiten:

  1. Verwende BindReceiptHandler, um einen Handler für RobuxTransferSender zu registrieren, der Belege für den Benutzer behandelt, der die Überweisung initiiert hat.
  2. Registriere einen zweiten Handler für RobuxTransferReceiver, der Belege für den Benutzer behandelt, der die Robux erhalten hat.
  3. Untersuche in jedem Handler die Beleginformationen, einschließlich PlayerId und TransferRequestId. Beide Belegtypen enthalten eine TransferRequestId, die mit der transferRequestId übereinstimmt, die von PromptRobuxTransferAsync zurückgegeben wurde.
  4. Gib einen Enum.ReceiptDecision-Wert von deinem Handler zurück:
    • Gib Processed zurück, nachdem du den Beleg bearbeitet hast. Dies markiert den Beleg als abgeschlossen und bestätigt, dass die Robux-Überweisung erfolgreich war.
    • Gib NotProcessedYet zurück, wenn der Beleg noch nicht verarbeitet werden kann (zum Beispiel, wenn der Benutzer nicht mehr auf dem Server ist). Dies lässt den Beleg ungelöst, sodass er später zugestellt werden kann (zum Beispiel, wenn der Benutzer wieder dem Server beitritt).

Das folgende Beispiel registriert Handler für sowohl Sender- als auch Empfängerbelege:


local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
-- Bearbeitet Senderbelege (der Benutzer, der die Robux gesendet hat)
local senderConnection = MarketplaceService:BindReceiptHandler(
Enum.ReceiptType.RobuxTransferSender,
function(receiptInfo)
local player = Players:GetPlayerByUserId(receiptInfo.PlayerId)
if not player then
-- Benutzer hat den Server verlassen - die Belegverarbeitung wird aufgeschoben, bis der Benutzer dem Server erneut beitritt
return Enum.ReceiptDecision.NotProcessedYet
end
print(`{player.Name} hat Robux gesendet (TransferRequestId: {receiptInfo.TransferRequestId})`)
-- Du kannst hier eine Bestätigung für die Sender-Seite gewähren oder die Benutzeroberfläche aktualisieren
return Enum.ReceiptDecision.Processed
end
)
-- Bearbeitet Empfängerbelege (der Benutzer, der die Robux erhalten hat)
local receiverConnection = MarketplaceService:BindReceiptHandler(
Enum.ReceiptType.RobuxTransferReceiver,
function(receiptInfo)
local player = Players:GetPlayerByUserId(receiptInfo.PlayerId)
if not player then
return Enum.ReceiptDecision.NotProcessedYet
end
print(`{player.Name} hat Robux erhalten (TransferRequestId: {receiptInfo.TransferRequestId})`)
-- Du kannst hier Vorteile für die Empfänger-Seite gewähren oder die Benutzeroberfläche aktualisieren
return Enum.ReceiptDecision.Processed
end
)
©2026 Roblox Corporation. Roblox, das Roblox-Logo und "Powering Imagination" gehören zu unseren eingetragenen und nicht eingetragenen Markenzeichen in den USA und anderen Ländern.