Introduction
Welcome to the Precium Payment Orchestration API documentation. This comprehensive guide provides everything you need to integrate Precium's payment orchestration platform into your application, enabling you to accept payments across multiple payment methods through a single, unified API.
What is Precium?
Precium is a payment orchestration platform that simplifies payment acceptance by providing:
- Unified API — Single integration for multiple payment methods
- Hosted Checkout — Secure, PCI-compliant payment pages
- Payment Links — Quick payment collection via shareable links
- Recurring Billing — Automated subscription management
- Multi-Method Support — Cards, EFT, Instant EFT, DebiCheck, and more
Who Is This Documentation For?
This documentation is designed for:
- E-commerce Developers building online stores and checkout experiences
- SaaS Platforms implementing subscription billing
- Mobile App Developers adding payment capabilities
- Business Systems Integrators connecting billing and accounting systems
- Marketplace Operators managing multi-party payments
Integration Options
Precium offers flexible integration approaches to match your technical requirements and PCI compliance level:
|Integration Type|PCI Scope|Description|Best For|
|---|---|---|---|
|**Hosted Checkout**|SAQ-A|Redirect to Precium-hosted payment page|Fastest integration, minimal compliance burden|
|**Payment Links**|SAQ-A|Generate shareable payment URLs|Invoicing, email payments, manual billing|
|**Direct Post**|SAQ A-EP|Custom checkout with form POST to Precium|Branded checkout experience|
|**Server-to-Server**|SAQ-D|Full API control with card data handling|PSPs and enterprise with full PCI compliance|
Note: This documentation covers Hosted Checkout, Payment Links, and Direct Post integrations. For Server-to-Server (S2S) integration requiring PCI SAQ-D compliance, refer to the S2S Integration Guide by reaching out to your sales/account manager.
Supported Payment Methods
Cards
- Visa
- Mastercard
- Maestro
- American Express (where available)
Instant EFT
Bank Debit
- DebiCheck (authenticated debit orders)
- Debit Order (traditional EFT debit)
Bank Credit
- SSVS - Same day value service allowing push payments to bank accounts
- BEFT - Dated electronic bank transfer allowing next day push payments to bank accounts
Mobile Wallets
Other
- Capitec Pay Recurring
- Manual EFT with payment reference
API Overview
Base URL
https://gate.reviopay.com/api/v1/
Authentication
All API requests require Bearer token authentication:
BASH
curl -X GET "https://gate.reviopay.com/api/v1/purchases/" \
-H "Authorization: Bearer YOUR_API_KEY"
Core Resources
|Resource|Description|
|---|---|
|`/clients/`|Customer records with contact and billing information|
|`/purchases/`|Payment transactions and invoices|
|`/billing_templates/`|Subscription and recurring billing configurations|
|`/webhooks/`|Event notification subscriptions|
|`/payouts/`|Disbursements to recipients|
Key Concepts
Clients
A Client represents a customer in your system. Creating a client record enables:
- Pre-filled checkout information
- Stored payment methods for one-click payments
- Recurring billing associations
- Transaction history tracking
Purchases
A Purchase represents a payment request. Each purchase includes:
- Products/line items with pricing
- Currency and total amount
- Payment method restrictions (optional)
- Redirect URLs for payment completion
- Checkout URL for hosted payment page
Billing Templates
A Billing Template defines recurring billing rules:
- Subscription periods and pricing
- Payment method requirements
- Automated charge scheduling
- Trial period configuration
Recurring Tokens
When a customer pays with force_recurring: true, their payment method is tokenized for future charges without requiring re-entry of payment details.
Integration Architecture
flowchart LR
subgraph Your["Your Application"]
A[Backend Server]
B[Frontend/Website]
end
subgraph Precium["Precium Platform"]
C[API Gateway]
D[Hosted Checkout]
E[Payment Processing]
end
subgraph Methods["Payment Methods"]
F[Card Networks]
G[Bank Partners]
H[Wallet Providers]
end
A -->|API Calls| C
B -->|Redirect| D
C --> E
E --> F
E --> G
E --> H
D -->|Callback| A
D -->|Redirect| B
Documentation Structure
This documentation suite consists of the following guides:
|Document|Description|
|---|---|
|**Quick Start**|Get your first payment working in minutes|
|**Integration Guide**|Complete reference for all payment scenarios|
|**Error Reference**|Error codes, causes, and resolution steps|
|**Code Examples**|Production-ready code in multiple languages|
|**Reconciliation**|Settlement and financial reporting|
|**Testing Guide**|Test scenarios and sandbox testing|
|**Troubleshooting**|Common issues and solutions|
|**Glossary**|Payment terminology definitions|
Getting Started
Prerequisites
Before integrating, ensure you have:
- Precium Account — Sign up at https://gate.reviopay.com/login
- API Credentials — Obtain from your Precium Dashboard
- Brand Configuration — Set up your brand. Multiple brands can be created
- Webhook Endpoint — (Recommended) URL to receive payment notifications
Quick Integration Path
flowchart TD
A[1. Create Client] --> B[2. Create Purchase]
B --> C[3. Redirect to checkout_url]
C --> D{Payment Completed?}
D -->|Success| E[4. Receive Webhook]
D -->|Failure| F[Handle Failure]
E --> G[5. Fulfill Order]
Your First Payment
BASH
# 1. Create a purchase
curl -X POST "https://gate.reviopay.com/api/v1/purchases/" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"client": {
"email": "customer@example.com"
},
"purchase": {
"currency": "ZAR",
"products": [
{
"name": "Product Name",
"price": 10000
}
]
},
"brand_id": "YOUR_BRAND_ID",
"success_redirect": "https://yoursite.com/success",
"failure_redirect": "https://yoursite.com/failure"
}'
# Response includes checkout_url - redirect customer there
Environment Information
|Environment|Base URL|Purpose|
|---|---|---|
|**Sandbox**|`https://gate.reviopay.com/api/v1/`|Testing and development|
|**Production**|`https://gate.reviopay.com/api/v1/`|Live transactions|
Note: Sandbox and Production use the same base URL but different API credentials. Ensure you use sandbox credentials for testing.
Test Card Details
For sandbox testing:
|Field|Value|
|---|---|
|Card Number|`4444 3333 2222 1111`|
|Expiry|Any future date|
|CVC|`123`|
|Cardholder|Any name (Latin characters)|
Support & Resources
|Resource|Description|
|---|---|
|**API Reference**|[gate.reviopay.com/api/](https://gate.reviopay.com/api/)|
|**Dashboard**|[https://gate.reviopay.com/login](https://dashboard.precium.com/)|
|**Support Email**|[support@precium.com](mailto:support@precium.com)|
Next Steps
Ready to integrate? Start with the Quick Start Guide to process your first test payment in minutes.
© 2026 Precium. All rights reserved.