Four SDKs are available: Node.js, Java, PHP and Go, with consistent API parameters, request signing, JSON bodies and callback verification.
Download the ZIP for your language. Each archive includes installation instructions, a client, signing utilities and examples.
Highlights
- Includes createPayinOrder, getPayinOrder, createExclusiveBinding, and createPayoutOrder.
- Request signing matches the server merchant-openapi-signature implementation.
- Callback verification supports checking the raw request body string directly.
- Account top-up example: configuration checks, callback verification and transactional idempotent crediting
Install
npm install ./uugate-nodejs-sdk
Quick Example
import { UUGateClient } from 'uugate-openapi-sdk';
const client = new UUGateClient({
baseUrl: 'https://api.uugate.com',
merchantUid: process.env.UUGATE_MERCHANT_UID,
apiKey: process.env.UUGATE_API_KEY,
});
const order = await client.createPayinOrder({
chainCode: 'TRON',
tokenSymbol: 'USDT',
merchantOrderNo: 'M202604170001',
amount: '100.00',
notifyUrl: 'https://merchant.example.com/api/uugate/payin-notify',
});
Highlights
- Includes createPayinOrder, getPayinOrder, createExclusiveBinding, and createPayoutOrder.
- Success returns the raw business JSON. Handle ordinary JSON errors and HTTP denials with empty bodies separately.
- Verify callbacks using the original order API Key and raw request body bytes.
Install
cd uugate-java-sdk
javac -encoding UTF-8 -d build src/uugate/UUGateClient.java examples/Example.java
java -cp build Example
Quick Example
import uugate.UUGateClient;
import java.util.Map;
UUGateClient client = new UUGateClient("https://api.uugate.com",
System.getenv("UUGATE_MERCHANT_UID"), System.getenv("UUGATE_API_KEY"));
String order = client.createPayinOrder(Map.of(
"chainCode", "TRON", "tokenSymbol", "USDT",
"merchantOrderNo", "M202604170001", "amount", "100.00",
"notifyUrl", "https://merchant.example.com/api/uugate/payin-notify"));
Highlights
- Supports Laravel auto-discovery for ServiceProvider and Facade.
- Supports sending the four OpenAPI requests through UUGateClient or Facade.
- Includes apiKey verification for pay-in and payout callbacks.
Install
composer config repositories.uugate-sdk path ./uugate-php-laravel-sdk
composer require uugate/openapi-laravel-sdk:*@dev
Quick Example
use UUGate\OpenApi\Facades\UUGate;
$order = UUGate::createPayinOrder([
'chainCode' => 'TRON',
'tokenSymbol' => 'USDT',
'merchantOrderNo' => 'M202604170001',
'amount' => '100.00',
'notifyUrl' => 'https://merchant.example.com/api/uugate/payin-notify',
]);
Highlights
- Includes CreatePayinOrder, GetPayinOrder, CreateExclusiveBinding and CreatePayoutOrder
- Success returns the raw business JSON. Handle ordinary JSON errors and HTTP denials with empty bodies separately.
- Verify callbacks using the original order API Key and raw request body bytes.
Install
cd uugate-go-sdk
go test ./...
go run ./examples/basic
Quick Example
import (
"context"
"os"
uugate "uugate.local/openapi"
)
client, err := uugate.NewClient("https://api.uugate.com",
os.Getenv("UUGATE_MERCHANT_UID"), os.Getenv("UUGATE_API_KEY"))
if err != nil { panic(err) }
order, err := client.CreatePayinOrder(context.Background(), map[string]any{
"chainCode": "TRON", "tokenSymbol": "USDT",
"merchantOrderNo": "M202604170001", "amount": "100.00",
"notifyUrl": "https://merchant.example.com/api/uugate/payin-notify",
})
if err != nil { panic(err) }
_ = order