Developer API

Start integrating with Ciro Pay in minutes

Modern APIs and integrated tools to help you embed payments quickly and securely. From Sandbox to production in clear steps.


< 1 dayIntegration time
99.9%Uptime
150msAvg response
ciro-pay.js
نسخ|تشغيل
import CiroPay from '@ciro/pay-sdk';
// تهيئة العميل
const client = new CiroPay({
apiKey: process.env.CIRO_SECRET_KEY,
env: 'production'
});
// إنشاء عملية دفع
const payment = await client.payments.create({
amount: 12500, // بالهللة
currency: 'SAR',
source: req.body.token,
description: 'طلب رقم 4529'
});
200 OKpayment.captured → id: pay_B1HbK7...
Integration Products

Every API you need in one place

We've brought everything together — from integration to analytics, all in one platform.

Payment Processing Interface

Payment APIs

Authorize, capture, verify, and refund Saudi financial transactions end to end.

  • Create payment requests
  • Verify & cancel
  • Mada & Visa card support
  • 3DS Secure 2.0 support

Soft-POS

SoftPOS APIs

Read Tap-on-Phone cards on Android apps with full NFC SDK support.

  • NFC reader integration
  • EMV contactless flow
  • Mastercard / Visa certified
  • POS reporting

Analytics Interface

Analytics APIs

Extract sales data, settlements, installment balances, and accurate financial reports.

  • Real-time revenue
  • Settlement reports
  • Branch performance tracking
Supported Environments

Integrate with Your Favorite Language

Ready-made libraries for every popular environment — with interactive docs and real examples for every SDK.

Ciro Pay
TypeScript
TypeScript
Go
Go
JavaScript
JavaScript
Java
Java
Python
Python
Vue
Vue
PHP
PHP
React
React
Code Samples

Start in a Few Lines

From sandbox to production, Ciro Pay provides all the tools and APIs you need to build a complete, scalable payment experience.

import ciropay
import os
ciropay.api_key = os.environ['CIRO_SECRET_KEY']
ciropay.environment = 'sandbox'
payment = ciropay.Payment.create(
amount=12500,
currency='SAR',
source=request.json['token'],
)
Developer Tools

Professional Tools for Every Stage

From initial testing to production monitoring — the right tools at your fingertips.

API Explorer

Test any endpoint directly from the browser — send real requests, see responses, and understand how the API works.

POST/v1/payments
تشغيل
amount: 5000
currency: "SAR"

Sandbox Environment

A fully isolated testing environment. Test cards for every scenario — success, decline, 3DS, expiry.

sandbox.ciropay.sa
ناجح دائماً – 1111 1111 1111 4111
مرفوض – 4000 0000 0000 0002
DS يطلب 3 – 3184 6000 0027 40003D

Request Inspector

A complete log of every request and response — headers, payload, response time, and HTTP code. Instant diagnosis.

Request Log
POST/payments200148ms
GET/payments/pay_01H…20062ms
POST/refunds201203ms

Webhook Testing

Test Webhooks by sending instant test events to your endpoint — payment.captured, payment.failed, refund.created.

Recent Events
nowpayment.captured
2 minpayment.failed
5 minrefund.created
Documentation Hub

Everything You Need to Know

Comprehensive documentation and integrated developer tools to help you build and scale payment solutions fast — with practical examples and detailed guides for every step.

Video

Video Tutorials

Lessons for building real integrations from scratch.

  • Create & process payments
  • Authorize & cancel
  • Partial & full refunds
  • 3D Secure 2.0 support

payment.succeeded

Delivered • 0.8s ago

20+ guides

Guides & Walkthroughs

Step-by-step for every possible payment scenario.

  • Create & process payments
  • Authorize & cancel
  • Partial & full refunds
  • 3D Secure 2.0 support

POST /v1/payments

200 OK • 118ms

60+ endpoints

API Reference

Complete docs for every endpoint with interactive examples.

  • Detailed docs for every endpoint
  • Ready-made request & response examples
  • Error codes & status handling
  • Full sandbox & production support

Sandbox API endpoint //

https://sandbox-api.ciropay.com

15+ events

Webhooks

Full list of all events and payload structure.

  • Create & process payments
  • Authorize & cancel
  • Partial & full refunds
  • 3D Secure 2.0 support

payment.completed

Delivered • 1.2s ago

8 languages

SDK Docs

Full reference with changelog and upgrade instructions.

  • Create & process payments
  • Authorize & cancel
  • Partial & full refunds
  • 3D Secure 2.0 support

JavaScript SDK

v3.4.2 • Latest

GitHub

Sample Projects

Complete apps ready to clone and deploy.

  • Create & process payments
  • Authorize & cancel
  • Partial & full refunds
  • 3D Secure 2.0 support

React Starter

Ready to Deploy

Quick Start

From Sign-up to First Payment

Five clear steps — from creating your account to receiving your first real transaction.

Active Account01

Create Your Account

Register your company details and get instant access to the dashboard and testing environment.

01
CCreate Ciro Pay Account

Company Name

Advanced Tech Co.

Email

dev@company.sa

Phone Number

+966 5X XXX XXXX

Business Type

E-Commerce
Sandbox Access Enabled Account Created
API KeysSandbox Mode

Publishable Key

pk_test_••••••••••••••••••••

Secret Key

sk_test_••••••••••••••••••••
CIRO_SECRET_KEY=sk_test_xxxxx
02
Sandbox Mode02

Get Your API Keys

Generate test and production keys to manage secure communication between your system and Ciro Pay.

200 OK • 118ms03

Use the Sandbox

Safely test payment flows using test data before going live.

03
>_ Sandbox Console Connected
Test Card4111 1111 1111 1111
AmountSAR 100.00
CurrencySAR — Saudi Riyal
Payment Statuscaptured ✓

200 OK payment.captured • 118ms

"status": "captured"

Webhook Inspector
payment.created
Delivered • 0.2s
payment.completed
Delivered • 0.8s
payment.failed
Skipped
payment.completed Delivered • 0.8s ago
04
Delivered04

Test Your Integration

Verify requests succeed, Webhooks are received, and transaction states are handled correctly.

Live05

Go Live

Switch to production and start accepting real payments from your customers across multiple channels.

05
✅ Go Live ChecklistProduction
Verification Complete
Production Keys Active
Payment Methods Enabled
First Live Payment Received

Live Payment

SAR 450.00

✓ Completed

Security for Developers

Secure by Design

Every integration layer is built to protect your customers and minimize your legal liability.

PCI DSS Scope Zero

Never touch raw card data — full Tokenization. Completely out of PCI scope.

Webhook Signing

Every Webhook carries HMAC-SHA256. Verify it before processing.

TLS 1.3 Encryption

All connections are encrypted. Older versions are rejected automatically.

Dual-Key Auth

Publishable Key for the browser. Secret for the server only. Never exposed to the client.

Verify Webhook SignatureNode.js
const crypto = require('crypto');
 
function verifyWebhook(payload, signature, secret) {
const computed = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
 
return crypto.timingSafeEqual(
Buffer.from(computed),
Buffer.from(signature)
);
}
 
app.post('/webhook', (req, res) => {
const sig = req.headers['ciro-signature'];
if (!verifyWebhook(req.rawBody, sig, process.env.WEBHOOK_SECRET))
return res.status(400).send('Invalid signature');
// عالج الحدث...
});
Get started now

Make your first payment in minutes

Get your API keys now and start integrating in Sandbox for free — no credit card required.

  • Free Sandbox instantly
  • PCI DSS Level 1
  • 99.9% Uptime