Use our checkout or build your own.
Work efficiently using our developer portal.
The Ping Payments API gives you full control over the entire payment flow—from payment to allocation and settlement.

Designed for Developers
Developer First, from the Ground Up
Ping was built by an experienced in-house team in Sweden using Elixir as its foundation. The result is a modern, scalable, and robust payment platform with clear
APIs, high reliability, and an integration experience that developers appreciate.
RESTful API
Modern, secure APIs in JSON.
Webhooks
Get real-time notifications when something happens.
Sandbox
Feel free to test it in our sandbox environment.
Full control
Establish rules, allocate funds, and follow up.
# Skapa en betalning curl -X POST https://api.pingpayments.com/v1/payment_orders -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{ "amount": 15000, "currency": "SEK" }'
{
"payment_id": "pay_123456789",
"status": "created",
"amount": 15000,
"currency": "SEK"
}
# Skapa en betalning import requests requests.post( "https://api.pingpayments.com/v1/payment_orders", headers={"Authorization": "Bearer YOUR_API_KEY"}, json={"amount": 15000, "currency": "SEK"}, )
{
"payment_id": "pay_123456789",
"status": "created"
}
// Create a payment $ch = curl_init("https://api.pingpayments.com/v1/payment_orders"); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_HTTPHEADER => ["Authorization: Bearer YOUR_API_KEY"], CURLOPT_POSTFIELDS => json_encode([ "amount" => 15000, "currency" => "SEK", "reference" => "ORDER-12345", ]), ]); $res = curl_exec($ch);
{
"payment_id": "pay_123456789",
"status": "created",
"amount": 15000,
"currency": "SEK"
}
// Skapa en betalning await fetch("https://api.pingpayments.com/v1/payment_orders", { method: "POST", headers: { Authorization: "Bearer YOUR_API_KEY" }, body: JSON.stringify({ amount: 15000, currency: "SEK" }), });
{
"payment_id": "pay_123456789",
"status": "created"
}
// Skapa en betalning var client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY"); var body = new { amount = 15000, currency = "SEK", reference = "ORDER-12345" }; await client.PostAsJsonAsync( "https://api.pingpayments.com/v1/payment_orders", body);
{
"payment_id": "pay_123456789",
"status": "created",
"amount": 15000,
"currency": "SEK"
}
Manage keys and permissions.
Stable APIs with generous limits.
Clear version control and changelog.
Technical support when you need it.