Integrate OrionPay payment gateway into your application with our RESTful API.
All API requests require an API key. Include it in the request header:
X-API-Key: your_api_key_here
⚠️ Get your API key from Merchant Dashboard → API Keys section after admin approval.
https://api.orionpay.com/v1/invoice/create
{
"Content-Type": "application/json",
"X-API-Key": "your_api_key_here"
}
{
"amount": 100.00,
"pay_way": "cashapp",
"customer_email": "customer@example.com",
"customer_name": "John Doe",
"redirect_url": "https://yoursite.com/success",
"webhook_url": "https://yoursite.com/webhook"
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| amount | numeric | ✅ Yes | Amount to charge (min 1, max 10000) |
| pay_way | string | ✅ Yes | cashapp, ecashapp, applepay, googlepay, chime, btcpay, paypal, venmo |
| customer_email | string | ❌ No | Customer email address |
| customer_name | string | ❌ No | Customer name |
| redirect_url | string | ❌ No | Redirect after payment completion |
| webhook_url | string | ❌ No | Webhook URL for payment status updates |
{
"success": true,
"order_id": 123,
"order_no": "API_123456_abc",
"amount": 100.00,
"pay_way": "cashapp",
"payment_url": "https://pay.orionpay.com/xxx",
"expires_at": "2026-01-15 12:00:00",
"status": "processing"
}
{
"success": true,
"order_id": 123,
"order_no": "API_123456_abc",
"amount": 100.00,
"pay_way": "paypal",
"manual_code": "W6X-F1",
"checkout_url": "https://orionpay.com/checkout/123",
"status": "pending_manual",
"message": "Send exactly $100.00 via paypal and use code: W6X-F1"
}
https://api.orionpay.com/v1/invoice/status/{order_id}
{
"order_id": 123,
"order_no": "API_123456_abc",
"amount": 100.00,
"real_amount": 100.00,
"fee": 11.00,
"net": 89.00,
"pay_way": "cashapp",
"status": "success",
"created_at": "2026-01-15T10:00:00.000000Z",
"success_time": "2026-01-15T10:05:00.000000Z",
"expire_time": "2026-01-15T12:00:00.000000Z"
}
OrionPay sends POST requests to your webhook URL when payment status changes.
{
"type": "InvoiceSettled",
"invoiceId": "xxx",
"amount": 10.00,
"currency": "USD"
}
{
"mchOrderNo": "MCH_123456_abc",
"state": 2,
"amount": 10000,
"realAmount": 10000
}
State values: 1=Pending, 2=Success, 3=Failed, 6=Closed
✅ All wallets are supported with automatic or manual settlement.
| Code | Message |
|---|---|
| 401 | API key required / Invalid API key |
| 400 | Payment method not available |
| 404 | Order not found |
| 500 | Failed to create invoice / Internal server error |
Official SDKs available on GitHub. Contact support for custom integration.