Initialize the Trade System
The Trade System package auto-bootstraps when it is installed into your experience. You do not need to require TradeServer or call an init function manually.
Install Trade System from the Traderie Studio plugin. The package adds:
ServerScriptService/Traderie/TradeSystemReplicatedStorage/Traderie/TradeSystemServerScriptService/Traderie/TradeSystemConfig/InventoryAdapter
The server bootstrap loads ServerScriptService/Traderie/TradeSystemConfig/InventoryAdapter. If that module is missing or invalid, the package falls back to a null adapter and refuses inventory mutations.
Configure Inventory
Edit ServerScriptService/Traderie/TradeSystemConfig/InventoryAdapter to connect the trade system to your game's inventory or profile data. See Inventory Adapter for the full contract.
Client Trade Requests
Client code can use the shared Trade System client at ReplicatedStorage.Traderie.TradeSystem.Client.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Traderie = ReplicatedStorage:WaitForChild("Traderie")
local TradeSystem = Traderie:WaitForChild("TradeSystem")
local TradeClient = require(TradeSystem:WaitForChild("Client"))
TradeClient.initialize()
local response = TradeClient.requestTrade(targetPlayer.UserId)
if not response.ok then
warn("Trade request failed:", response.code)
end
The client exposes request, response, offer, ready, cancel, and inventory helpers. The server validates every action before changing trade state or inventory data.
For a complete walkthrough, see Custom UI.