Hex Pay Docs

Getting Started

Hex Pay - Accept crypto as easy As a card

Quick Start Guide

1. Create Your Store

Set up your store using our Telegram bot to get started with accepting cryptocurrency payments.

Create Store via Telegram Bot

Learn how to create your store and get your API key through our Telegram bot

2. Add Payment Methods

Configure which cryptocurrencies and blockchain networks you want to accept.

Add Payment Methods

Set up your wallet addresses and choose supported cryptocurrencies

3. Start Creating Payments

Choose how you want to create payments - through Telegram bot or API.

Base URL

All API endpoints are relative to our production server:

https://api.hexpay.io

A demo environment is also available at https://api.demo.hexpay.io.

Authentication

After creating your store via Telegram bot, you'll receive a JWT token that's valid for one year. Include it in your API requests:

Authorization: Bearer your_jwt_token_here

Learn more about authentication →

Payment Creation Options

HexPay offers flexible payment creation methods to suit different business needs:

🤖 Telegram Bot Invoices

Perfect for non-technical users

Create payment links instantly through our intuitive chat interface. No coding skills required!

Key Benefits:

  • ⚡ Instant payment generation in seconds
  • 💬 User-friendly chat-based workflow
  • 🎯 Perfect for quick one-off payments

Start creating payments via bot →

🔧 API Integration Options

Choose the mode that best fits your checkout flow:

Customer Choice (Recommended)

Set the amount and currency — the customer picks their preferred coin and network at checkout. HexPay calculates the exact crypto amount automatically.

Perfect for: E-commerce stores, SaaS businesses, service providers

How it works: You set amount: "99.99", currency: "USD" → Customer selects a payment method → HexPay resolves the deposit address and coin amount

View implementation →

Preselected Method

Pin the exact coin and network yourself. The deposit address is resolved immediately — the customer sees it right away without any selection step.

Perfect for: Streamlined checkouts, custom interfaces, targeted payment flows

How it works: You set amount, currency, and payment_options.methods: [{coin, chain}] → Payment is created in pending status with the deposit address ready

View implementation →