Integration Guide

Zero to Production
in 10 Minutes.

Four steps. Minimal configuration. Dedicated support at every stage.

How Every Ping Flows

Your app calls one endpoint. CardPing routes to the right network, runs fraud scoring, and returns a clean JSON response.

🖥 Your App ⚡ CardPing Edge (24 PoPs) 🤖 AI Fraud Engine 🌐 Card Networks
📦 JSON Response ✓ Scored + Validated 💳 Live Balance Data
<80ms
End-to-end
TLS 1.3
Encrypted
99.99%
Uptime

The Integration Process

01

Create Your Account

Sign up in under 60 seconds. Receive a live API key and sandbox key immediately — no credit card required for the free tier.

  • Email verification only — no KYC for free tier
  • Sandbox with 100 free test pings
  • Live key active immediately
  • Dashboard with real-time usage stats
Create Account →
Your API Keys
// Available immediately after signup
{
  "live_key":    "cp_live_sk_••••••••••",
  "sandbox_key": "cp_test_sk_••••••••••",
  "plan":         "starter",
  "quota":        1000
}
02

Install the SDK

Official SDKs for JS, PHP, Python, Ruby, Go, and Java. Or call the REST API directly with any HTTP client.

  • npm, Composer, pip, gem, go get
  • Full TypeScript definitions
  • OpenAPI 3.1 spec available
Install
# npm
npm install @cardping/sdk

# Composer (PHP)
composer require cardping/sdk

# pip
pip install cardping

# go
go get github.com/cardping/go-sdk
03

Make Your First Ping

POST a card number, PIN, and network ID. Get back balance, status, expiry, and real-time fraud score in one clean JSON object.

  • RESTful JSON — consistent across all networks
  • Unified error schema
  • Idempotency key support for safe retries
Full API Docs →
first_ping.js
const result = await client.ping({
  cardNumber: '6006-4913-0000-0011',
  pin:        '1234',
  network:    'visa_gift'
});

// Full response in one call
console.log(result.balance);     // 47.50
console.log(result.status);      // "active"
console.log(result.expiry);      // "2027-03"
console.log(result.fraudScore);  // 0.02
04

Deploy to Production

Swap your sandbox key for a live key, set up your webhook endpoint, and go live. Full monitoring from day one.

  • Zero-downtime key rotation
  • Webhook delivery with automatic retries
  • IP allowlist for extra security
  • Dedicated Slack channel (Growth+)
Start Free →
webhook.js
// Receive fraud alerts in real time
const event = client.webhooks.verify(
  req.rawBody,
  req.headers['cp-signature'],
  process.env.WEBHOOK_SECRET
);

if (event.type === 'fraud.high_risk') {
  await blockCard(event.data.card_id);
}

Common Questions

Is there a sandbox for testing?

Yes — every account includes a sandbox environment with test cards and simulated responses. Free with no quota.

What if a card network goes down?

Our redundant routing automatically switches to backup connectors. Network status is always visible in your dashboard.

Do you store card numbers?

Never. Card data is processed in memory and discarded immediately after the network response. Nothing is persisted.

Can I check cards in bulk?

Yes. Our Batch API accepts up to 1,000 cards per request with async processing and webhook delivery on completion.

What rate limits apply?

Free: 10 req/s. Growth: 200 req/s. Enterprise: custom. Burst allowances are included on all plans.

How does fraud scoring work?

Every check passes through our ML model which returns a 0.00–1.00 score. You set the threshold for blocking in your dashboard.