API Reference
Welcome to the Rach Payments API Reference. All endpoints are organized by category below.
Base URL
Production: https://payments-api-dev-966260606560.europe-west2.run.app
Sandbox: https://api-sandbox.rach.finance (coming soon)Authentication
Rach Payments uses two authentication methods:
1. JWT Tokens (User Authentication)
For account management, KYC submission, and accessing your business details.
Header:
Authorization: Bearer YOUR_JWT_TOKENGet JWT: Login via /api/v1/auth/login
2. API Keys (Payment Operations)
For creating checkouts, remittances, and other payment operations.
Header:
X-API-Key: YOUR_API_KEYGet API Key: After KYC approval via /api/v1/auth/api-key
Quick Links
Authentication
- POST /api/v1/auth/register - Create account
- POST /api/v1/auth/login - Get JWT tokens
- POST /api/v1/auth/verify-email - Verify email
- GET /api/v1/auth/api-key - Get API key
###KYC
- POST /api/v1/kyc/submit - Submit KYC documents
- GET /api/v1/kyc/status - Check KYC status
Crypto Payments
- POST /api/v1/checkout/crypto - Create crypto checkout
- GET /api/v1/checkout/:id - Get checkout status
Rate Limits
| Plan | Rate Limit |
|---|---|
| Sandbox | 100 requests/minute |
| Production | 1000 requests/minute |
| Enterprise | Custom |
Response Codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Created |
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid/missing authentication |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error |
Error Response Format
json
{
"error": "Descriptive error message",
"code": "ERROR_CODE",
"details": {
"field": "specific_field_with_error"
}
}