Skip to content

Quickstart Guide

Get started with Rach Payments in minutes. This guide will walk you through account creation, KYC verification, and your first API call.

Prerequisites

  • A valid business email address
  • Business registration documents for KYC
  • Basic knowledge of REST APIs

Step 1: Create Your Account

Create a Rach Payments account using our registration API:

code-groupbash

cURL

curl -X POST https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/register
-H "Content-Type: application/json"
-d '{ "email": "your@business.com", "password": "SecurePassword123!", "business_name": "Your Business Ltd", "business_type": "company" }' ``

``javascript [JavaScript] // JavaScript / Node.js const response = await fetch('https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/register', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ email: 'your@business.com', password: 'SecurePassword123!', business_name: 'Your Business Ltd', business_type: 'company' }) });

const result = await response.json(); console.log('Account created:', result); ``

``python [Python]

Python

import requests

response = requests.post( 'https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/register', json={ 'email': 'your@business.com', 'password': 'SecurePassword123!', 'business_name': 'Your Business Ltd', 'business_type': 'company' } )

result = response.json() print('Account created:', result) ``

``go [Go] // Go package main

import ( "bytes" "encoding/json" "net/http" )

func main() { payload := map[string]string{ "email": "your@business.com", "password": "SecurePassword123!", "business_name": "Your Business Ltd", "business_type": "company", }

body, _ := json.Marshal(payload)
resp, _ := http.Post(
    "https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/register",
    "application/json",
    bytes.NewBuffer(body),
)
defer resp.Body.Close()

} ``

``php [PHP] // PHP <?php $ch = curl_init('https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/register'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([ 'email' => 'your@business.com', 'password' => 'SecurePassword123!', 'business_name' => 'Your Business Ltd', 'business_type' => 'company' ])); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch); $result = json_decode($response, true); curl_close($ch);

print_r($result); ?>

Response:json { "message": "Registration successful. Please check your email to verify your account.", "business_id": "biz_abc123xyz" }


Step 2: Verify Your Email

  1. Check your email inbox for a verification email from Rach Payments
  2. Click the verification link or use the verification code
  3. Alternatively, verify programmatically:

bash curl -X POST https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/verify-email \ -H "Content-Type: application/json" \ -d '{ "email": "your@business.com", "verification_code": "123456" }'


Step 3: Submit KYC Documents

Complete KYC verification to receive your API keys. You'll need to provide:

For Companies:

  • Business registration document
  • Director ID/Passport
  • Proof of address (utility bill, bank statement)
  • Business bank statement

For Individuals:

  • Government-issued ID
  • Proof of address
  • Selfie with ID

First, login to get your JWT token:

bash curl -X POST https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/login \ -H "Content-Type: application/json" \ -d '{ "email": "your@business.com", "password": "SecurePassword123!" }'

Response:json { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "business": { "id": "biz_abc123xyz", "name": "Your Business Ltd", "email": "your@business.com" } }

Then submit your KYC information:

code-groupbash

cURL

curl -X POST https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/kyc/submit
-H "Authorization: Bearer YOUR_JWT_TOKEN"
-H "Content-Type: application/json"
-d '{ "account_type": "business", "business_type": "company", "registration_number": "12345678", "registration_country": "GB", "director_name": "John Doe", "director_id_number": "AB123456C", "director_dob": "1990-01-01", "business_address": "123 Business St, London, UK", "documents": { "business_registration": "base64_encoded_document", "director_id": "base64_encoded_document", "proof_of_address": "base64_encoded_document" } }' ``

``javascript [JavaScript] // JavaScript / Node.js const response = await fetch('https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/kyc/submit', { method: 'POST', headers: { 'Authorization': Bearer ${jwtToken}, 'Content-Type': 'application/json' }, body: JSON.stringify({ account_type: 'business', business_type: 'company', registration_number: '12345678', registration_country: 'GB', director_name: 'John Doe', director_id_number: 'AB123456C', director_dob: '1990-01-01', business_address: '123 Business St, London, UK', documents: { business_registration: 'base64_encoded_document', director_id: 'base64_encoded_document', proof_of_address: 'base64_encoded_document' } }) });

const result = await response.json(); ``

``python [Python]

Python

import requests

response = requests.post( 'https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/kyc/submit', headers={'Authorization': f'Bearer {jwt_token}'}, json={ 'account_type': 'business', 'business_type': 'company', 'registration_number': '12345678', 'registration_country': 'GB', 'director_name': 'John Doe', 'director_id_number': 'AB123456C', 'director_dob': '1990-01-01', 'business_address': '123 Business St, London, UK', 'documents': { 'business_registration': 'base64_encoded_document', 'director_id': 'base64_encoded_document', 'proof_of_address': 'base64_encoded_document' } } )

tip KYC Review Time KYC submissions are typically reviewed within 24-48 hours. You'll receive an email notification once approved.


Step 4: Get Your API Keys

Once your KYC is approved, retrieve your API keys:

bash curl -X GET https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/auth/api-key \ -H "Authorization: Bearer YOUR_JWT_TOKEN"

Response:json { "test_key": "test_sk_1234567890abcdef", "production_key": "live_sk_abcdef1234567890", "created_at": "2025-12-22T00:00:00Z" }

warning Keep Your Keys Secure Never expose your API keys in client-side code or public repositories. Store them securely as environment variables.


Step 5: Make Your First API Call

Option A: Create a Crypto Payment Checkout

bash curl -X POST https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/checkout/crypto \ -H "X-API-Key: test_sk_1234567890abcdef" \ -H "Content-Type: application/json" \ -d '{ "amount": 100.00, "currency": "USDT", "network": "BSC", "customer_email": "customer@example.com", "reference": "ORDER-001" }'

Response:json { "checkout_id": "checkout_xyz789", "deposit_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb", "amount": "100.00", "currency": "USDT", "network": "BSC", "qr_code": "data:image/png;base64,iVBORw0KGgo...", "status": "pending", "expires_at": "2025-12-22T01:00:00Z" }

Option B: Create a Wallet for a Customer

bash curl -X POST https://payments-api-dev-966260606560.europe-west2.run.app/api/v1/wallet/customer/create \ -H "X-API-Key: test_sk_1234567890abcdef" \ -H "Content-Type: application/json" \ -d '{ "customer_id": "user_12345", "networks": ["BSC", "ETH", "POL"] }'

Response:json { "wallet_id": "wallet_abc123", "customer_id": "user_12345", "networks": ["BSC", "ETH", "POL"], "addresses": [ { "network": "BSC", "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb", "index": 0 }, { "network": "ETH", "address": "0x8B3192f2f0f0D7E4F5C3A1B9E2D7A6C5B4D3E2F1", "index": 0 }, { "network": "POL", "address": "0x1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P7Q8R9S0T", "index": 0 } ], "created_at": "2025-12-22T00:00:00Z" }


Next Steps

Congratulations! You've successfully:

  • ✅ Created your Rach Payments account
  • ✅ Verified your email
  • ✅ Submitted KYC documents
  • ✅ Retrieved your API keys
  • ✅ Made your first API call

Where to go from here:

For Crypto Payment Gateway:

For Wallet-as-a-Service:

API Reference:


Need Help?

If you encounter any issues during the quickstart process:

Built with ❤️ by Rach Finance