Skip to main content
Deploy XPayLabs with Docker Compose and create your first collection order in under 15 minutes. By the end of this guide, you’ll have a running crypto payment gateway on your own infrastructure with a working test collection.

Prerequisites

  • A server with 8GB RAM / 4 vCPU (Ubuntu 22.04+ recommended)
  • Docker and Docker Compose installed
  • RPC endpoints for the blockchains you want to support (TRON, EVM, SUI)

How to deploy XPayLabs in 4 steps

1

Deploy XPayLabs with Docker Compose

Clone the repository and start all services:
This starts all services including Java backends (xpay-user, xpay-merchant, xpay-eth, xpay-tron, xpay-sui), blockchain scanners, and the checkout UI. Verify everything is running:
All services should show a Up status.
2

Configure your merchant token

XPayLabs authenticates API requests using HMAC-SHA256 signatures. Your merchant token is generated in the gateway dashboard when you create your merchant account.
The merchant token is a shared secret. It never appears in API requests directly — instead, you use it to sign request payloads. Store it securely and never commit it to version control.
3

Create a test collection

Send a POST request to create a collection order. The request body must include a sign field computed over the payload.
See the Authentication page for how to compute the sign value.
4

Verify the collection response

A successful response returns a deposit address and checkout URL:
The address field is where your customer sends funds. The paymentUrl leads to a hosted checkout page with a QR code and payment instructions.

What’s Next?

Authentication

Learn how the HMAC signing algorithm works and how to implement it in your language.

API Reference

Explore all endpoints for collections, payouts, and webhooks.
During development, use testnet networks (TRON Shasta, ETH Sepolia, BSC Testnet) to avoid real gas costs. See the Testing guide for testnet configuration and test token faucets.
Last modified on June 26, 2026