OpenViSTAI · Agents · Blockchain · Crypto
Menu
Payments & Stablecoins

Pay

Pay is an open-source Web3 merchant payment system for decentralized applications. It creates payment orders, redirects customers to a payment page for wallet payment, tracks transaction status using order and blockchain transaction details, and notifies the merchant system.

Independent OpenViST project profile, based on linked sources.

Pay — OpenViST project profile in Payments & Stablecoins.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Pay when building a merchant checkout or integrating third-party Web3 payment handling, and when you can operate the documented backend services and configure merchant credentials and RPC nodes.

Who it is for

  • Teams adding cryptocurrency checkout to a decentralized application.
  • Merchants that need order creation, transaction tracking, and payment callbacks.
  • Developers prepared to configure and operate a Go backend with database, cache, and blockchain RPC connections.

Documented uses

  • Create a payment order from an application or merchant system.
  • Redirect a customer to a wallet-based payment flow.
  • Track payment status and the associated blockchain transaction hash.
  • Notify a merchant system of payment outcomes through callbacks.
Before you choose

Requirements & limits

  • The documented stack requires Go, MySQL, Redis, and Node.js for the listed setup.
  • RPC node endpoints must be configured; the README gives examples for EVM, Tron, and Solana.
  • The repository describes merchant API keys and secret-key callback signature verification.
  • The project is licensed under MIT.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up the Pay server and web interface

Prepare the documented backend and frontend build on a system meeting Pay's listed environment requirements.

Before you start

  • Go 1.20 or later
  • MySQL 5.7 or later and Redis 6.2 or later
  • Node.js 16 or later
  • Database tables from cheemshappypay.sql
  • Configured database, Redis, credentials, and applicable RPC node endpoints

Steps

  1. Clone the repository and enter the Pay directory.

  2. Run go mod tidy, then build the server from cmd/server and start it with the documented demo configuration.

  3. In the web directory, install dependencies with npm install and start the frontend with npm run dev.

Expected outcome

The documented server binary and development frontend are prepared to run with configured services.

Guide limitations

  • The README provides setup commands but this guide does not verify successful deployment.
  • RPC endpoints must be configured; the README does not establish a complete supported network or asset list.
Source-based practical guide

Create a merchant payment order

Use the documented order-creation request shape to connect a merchant checkout to Pay.

Before you start

  • A running Pay server
  • A merchant API key
  • An order number, merchant ID, coin, amount, return URL, chain identifier, and timeout

Steps

  1. Prepare the order data using the fields shown in the README example.

  2. Send a JSON request to the documented /v1/order/create path with the merchant API key in the Authorization header.

  3. Use the resulting payment flow to redirect the customer to the payment page, as described by the README.

Expected outcome

The documented integration pattern creates an order and routes the customer toward wallet payment.

Guide limitations

  • The README's sample uses a localhost address and does not document a response schema or a complete API reference.
  • Network and coin support depend on the configured service and are not comprehensively specified.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
15 October 2026
Original website title
CheemsHappyCoin/Pay · Official homepage title · retained in its source language