Code examples
Copy a sample, replace YOUR_API_KEY, and run it from your own server.
These docs never call the API for you.
List products
curl -sS "https://api.topupzonex.com/products" \
-H "X-Api-Key: YOUR_API_KEY"
import requests
r = requests.get(
"https://api.topupzonex.com/products",
headers={"X-Api-Key": "YOUR_API_KEY"},
timeout=30,
)
print(r.json())
const res = await fetch("https://api.topupzonex.com/products", {
headers: { "X-Api-Key": "YOUR_API_KEY" },
});
console.log(await res.json());
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.topupzonex.com/products"))
.header("X-Api-Key", "YOUR_API_KEY")
.GET()
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
Place order
curl -sS -X POST "https://api.topupzonex.com/orders" \
-H "Content-Type: application/json" \
-H "X-Api-Key: YOUR_API_KEY" \
-d '{
"trxid": "MERCHANT-ORDER-1001",
"pid": "TZP60",
"userId": "5123456789"
}'
import requests
r = requests.post(
"https://api.topupzonex.com/orders",
headers={
"X-Api-Key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"trxid": "MERCHANT-ORDER-1001",
"pid": "TZP60",
"userId": "5123456789",
},
timeout=60,
)
print(r.json())
const res = await fetch("https://api.topupzonex.com/orders", {
method: "POST",
headers: {
"X-Api-Key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
trxid: "MERCHANT-ORDER-1001",
pid: "TZP60",
userId: "5123456789",
}),
});
console.log(await res.json());
String body = """
{
"trxid": "MERCHANT-ORDER-1001",
"pid": "TZP60",
"userId": "5123456789"
}
""";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.topupzonex.com/orders"))
.header("X-Api-Key", "YOUR_API_KEY")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
Poll status until done
curl -sS "https://api.topupzonex.com/orders/TZAPI-PU-1A-AB12CD34" \
-H "X-Api-Key: YOUR_API_KEY"
import time
import requests
BASE = "https://api.topupzonex.com"
HEADERS = {"X-Api-Key": "YOUR_API_KEY"}
order_id = "TZAPI-PU-1A-AB12CD34"
while True:
data = requests.get(f"{BASE}/orders/{order_id}", headers=HEADERS, timeout=30).json()
status = data.get("status")
print(status, data.get("amountUsd"))
if status in ("completed", "cancelled"):
break
time.sleep(5)
const BASE = "https://api.topupzonex.com";
const headers = { "X-Api-Key": "YOUR_API_KEY" };
const orderId = "TZAPI-PU-1A-AB12CD34";
async function poll() {
while (true) {
const res = await fetch(`${BASE}/orders/${orderId}`, { headers });
const data = await res.json();
console.log(data.status, data.amountUsd);
if (data.status === "completed" || data.status === "cancelled") break;
await new Promise((r) => setTimeout(r, 5000));
}
}
await poll();
String orderId = "TZAPI-PU-1A-AB12CD34";
HttpClient client = HttpClient.newHttpClient();
while (true) {
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.topupzonex.com/orders/" + orderId))
.header("X-Api-Key", "YOUR_API_KEY")
.GET()
.build();
String body = client.send(request, HttpResponse.BodyHandlers.ofString()).body();
System.out.println(body);
if (body.contains("\"completed\"") || body.contains("\"cancelled\"")) break;
Thread.sleep(5000);
}
Store your real API key in environment variables on your server.