PHP
Node.js
Python
Go
1. Create Checkout Session
Initialize a new payment by sending order details to our API.
HTTP Request
$payload = [
'amount' => '100.00',
'currency' => 'USD',
'order_id' => 'ORD-99'
];
$response = atrium_api_call('/checkout', $payload);
const atrium = require('atrium-pay');
const session = await atrium.checkout.create({
amount: '100.00',
currency: 'USD',
order_id: 'ORD-99'
});
import atrium
session = atrium.Checkout.create(
amount='100.00',
currency='USD',
order_id='ORD-99'
)
params := &atrium.CheckoutParams{
Amount: "100.00",
Currency: "USD",
OrderID: "ORD-99",
}
session, _ := checkout.New(params)
API Response (JSON)
{
"status": "success",
"payment_url": "https://pay.atriumpay.com/xH82j...",
"token": "tok_live_abc123",
"expires_at": 1710934567
}
2. Handle Webhook Callback
Securely receive payment notifications on your server.
Webhook Payload (POST)
{
"event": "payment.completed",
"order_id": "ORD-99",
"amount_received": 100.00,
"hash": "0x..."
}
Your Server Response
// Return 200 OK
http_response_code(200);
echo json_encode(["received" => true]);
// Return 200 OK
res.status(200).send({
received: true
});
# Return 200 OK
return jsonify({"received": True}), 200
// Return 200 OK
w.WriteHeader(http.StatusOK)
json.NewEncoder(w).Encode(map[string]bool{
"received": true,
})