curl --request GET \
--url https://api.oneclickdz.com/v3/ocpay/checkPayment/OCPL-A1B2C3-D4E5 \
--header 'X-Access-Token: YOUR_API_KEY'
const response = await fetch(
"https://api.oneclickdz.com/v3/ocpay/checkPayment/OCPL-A1B2C3-D4E5",
{
method: "GET",
headers: {
"X-Access-Token": "YOUR_API_KEY",
},
}
);
const data = await response.json();
console.log("Payment Status:", data.data.status);
console.log("Message:", data.data.message);
import requests
ref = "OCPL-A1B2C3-D4E5"
url = f"https://api.oneclickdz.com/v3/ocpay/checkPayment/{ref}"
headers = {
"X-Access-Token": "YOUR_API_KEY"
}
response = requests.get(url, headers=headers)
data = response.json()
print(f"Payment Status: {data['data']['status']}")
print(f"Message: {data['data']['message']}")
<?php
$ref = 'OCPL-A1B2C3-D4E5';
$url = "https://api.oneclickdz.com/v3/ocpay/checkPayment/{$ref}";
$headers = [
'X-Access-Token: YOUR_API_KEY'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
$data = json_decode($response, true);
echo "Payment Status: " . $data['data']['status'] . "\n";
echo "Message: " . $data['data']['message'] . "\n";
?>
{
"success": true,
"data": {
"status": "CONFIRMED",
"message": "Payment confirmed successfully",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false,
"createdDate": "2025-01-15T10:30:00Z"
}
},
"meta": {
"timestamp": "2025-01-15T10:35:00Z",
"requestId": "req_abc123xyz"
}
}
{
"success": true,
"data": {
"status": "PENDING",
"message": "Payment not yet initiated",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false
}
},
"meta": {
"timestamp": "2025-01-15T10:32:00Z",
"requestId": "req_abc123xyz"
}
}
{
"success": true,
"data": {
"status": "FAILED",
"message": "Payment failed",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false,
"createdDate": "2025-01-15T10:30:00Z"
}
},
"meta": {
"timestamp": "2025-01-15T10:35:00Z",
"requestId": "req_abc123xyz"
}
}
Navio
Vérifier le Statut du Paiement
Vérifiez le statut actuel d’un paiement à l’aide de son code de référence
GET
/
v3
/
ocpay
/
checkPayment
/
:ref
curl --request GET \
--url https://api.oneclickdz.com/v3/ocpay/checkPayment/OCPL-A1B2C3-D4E5 \
--header 'X-Access-Token: YOUR_API_KEY'
const response = await fetch(
"https://api.oneclickdz.com/v3/ocpay/checkPayment/OCPL-A1B2C3-D4E5",
{
method: "GET",
headers: {
"X-Access-Token": "YOUR_API_KEY",
},
}
);
const data = await response.json();
console.log("Payment Status:", data.data.status);
console.log("Message:", data.data.message);
import requests
ref = "OCPL-A1B2C3-D4E5"
url = f"https://api.oneclickdz.com/v3/ocpay/checkPayment/{ref}"
headers = {
"X-Access-Token": "YOUR_API_KEY"
}
response = requests.get(url, headers=headers)
data = response.json()
print(f"Payment Status: {data['data']['status']}")
print(f"Message: {data['data']['message']}")
<?php
$ref = 'OCPL-A1B2C3-D4E5';
$url = "https://api.oneclickdz.com/v3/ocpay/checkPayment/{$ref}";
$headers = [
'X-Access-Token: YOUR_API_KEY'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
$data = json_decode($response, true);
echo "Payment Status: " . $data['data']['status'] . "\n";
echo "Message: " . $data['data']['message'] . "\n";
?>
{
"success": true,
"data": {
"status": "CONFIRMED",
"message": "Payment confirmed successfully",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false,
"createdDate": "2025-01-15T10:30:00Z"
}
},
"meta": {
"timestamp": "2025-01-15T10:35:00Z",
"requestId": "req_abc123xyz"
}
}
{
"success": true,
"data": {
"status": "PENDING",
"message": "Payment not yet initiated",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false
}
},
"meta": {
"timestamp": "2025-01-15T10:32:00Z",
"requestId": "req_abc123xyz"
}
}
{
"success": true,
"data": {
"status": "FAILED",
"message": "Payment failed",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false,
"createdDate": "2025-01-15T10:30:00Z"
}
},
"meta": {
"timestamp": "2025-01-15T10:35:00Z",
"requestId": "req_abc123xyz"
}
}
Vue d’ensemble
Vérifiez le statut du paiement en temps réel à l’aide de la référence de paiement. Indispensable pour le traitement des commandes, l’interrogation du statut et la vérification des paiements.Détection automatique de l’environnement : Cet endpoint vérifie automatiquement les transactions de production (SATIM) et sandbox en fonction de l’endroit où le paiement a été créé.
Paramètres de chemin
string
requis
Code de référence du paiement (format :
OCPL-XXXXXX-YYYY)Il s’agit du
paymentRef retourné lors de la création du lien de paiementRéponse
boolean
Indique si l’opération a réussi
object
Informations sur le statut du paiement
Afficher propriétés de data
Afficher propriétés de data
string
Statut actuel du paiement -
PENDING - Paiement non encore initié ou en cours de traitement - CONFIRMED - Paiement réussi - FAILED - Paiement échoué ou lien expiréstring
Description lisible du statut
string
Code de référence du paiement
object
Explication des valeurs de statut
PENDING
PENDING
Quand vous voyez ceci :
- Le client n’a pas encore commencé le processus de paiement
- Le paiement est en cours de traitement par la banque
- Le lien vient d’être créé et n’a pas encore été utilisé
- Continuez d’interroger pour les mises à jour de statut
- Affichez “Paiement en attente” au client
- Ne confirmez pas la commande encore
CONFIRMED
CONFIRMED
Quand vous voyez ceci : - Paiement effectué avec succès - Les fonds seront crédités sur votre solde OneClickQue faire :
- Marquez la commande comme payée dans votre système
- Traitez la commande/fournissez le service
- Envoyez une confirmation au client
FAILED
FAILED
Quand vous voyez ceci :
- Le paiement a été refusé ou a échoué
- Le lien de paiement a expiré (20 minutes)
- Le client a annulé le paiement
- Marquez la commande comme échouée/annulée
- Créez un nouveau lien de paiement si le client souhaite réessayer
- Ne traitez pas la commande
Expiration du lien
Les liens de paiement expirent 20 minutes après la création si aucun paiement n’est initié. Après expiration, le statut sera
FAILED.curl --request GET \
--url https://api.oneclickdz.com/v3/ocpay/checkPayment/OCPL-A1B2C3-D4E5 \
--header 'X-Access-Token: YOUR_API_KEY'
const response = await fetch(
"https://api.oneclickdz.com/v3/ocpay/checkPayment/OCPL-A1B2C3-D4E5",
{
method: "GET",
headers: {
"X-Access-Token": "YOUR_API_KEY",
},
}
);
const data = await response.json();
console.log("Payment Status:", data.data.status);
console.log("Message:", data.data.message);
import requests
ref = "OCPL-A1B2C3-D4E5"
url = f"https://api.oneclickdz.com/v3/ocpay/checkPayment/{ref}"
headers = {
"X-Access-Token": "YOUR_API_KEY"
}
response = requests.get(url, headers=headers)
data = response.json()
print(f"Payment Status: {data['data']['status']}")
print(f"Message: {data['data']['message']}")
<?php
$ref = 'OCPL-A1B2C3-D4E5';
$url = "https://api.oneclickdz.com/v3/ocpay/checkPayment/{$ref}";
$headers = [
'X-Access-Token: YOUR_API_KEY'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
$data = json_decode($response, true);
echo "Payment Status: " . $data['data']['status'] . "\n";
echo "Message: " . $data['data']['message'] . "\n";
?>
{
"success": true,
"data": {
"status": "CONFIRMED",
"message": "Payment confirmed successfully",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false,
"createdDate": "2025-01-15T10:30:00Z"
}
},
"meta": {
"timestamp": "2025-01-15T10:35:00Z",
"requestId": "req_abc123xyz"
}
}
{
"success": true,
"data": {
"status": "PENDING",
"message": "Payment not yet initiated",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false
}
},
"meta": {
"timestamp": "2025-01-15T10:32:00Z",
"requestId": "req_abc123xyz"
}
}
{
"success": true,
"data": {
"status": "FAILED",
"message": "Payment failed",
"paymentRef": "OCPL-A1B2C3-D4E5",
"transactionDetails": {
"amount": 5000,
"currency": "DZD",
"isSandbox": false,
"createdDate": "2025-01-15T10:30:00Z"
}
},
"meta": {
"timestamp": "2025-01-15T10:35:00Z",
"requestId": "req_abc123xyz"
}
}
Exemple d’intégration
Voici comment implémenter la vérification du statut dans votre système de commandes :async function checkOrderPayment(orderId) {
// Récupérer la référence de paiement depuis votre base de données
const order = await db.orders.findOne({ id: orderId });
if (!order || !order.paymentRef) {
throw new Error("Order not found or no payment link");
}
// Check payment status
const response = await fetch(
`https://api.oneclickdz.com/v3/ocpay/checkPayment/${order.paymentRef}`,
{
headers: { "X-Access-Token": process.env.ONECLICK_API_KEY },
}
);
const data = await response.json();
// Mettre à jour le statut de la commande selon le statut du paiement
switch (data.data.status) {
case "CONFIRMED":
await db.orders.update(orderId, {
status: "paid",
paidAt: new Date(),
});
await fulfillOrder(orderId);
break;
case "FAILED":
await db.orders.update(orderId, {
status: "payment_failed",
});
break;
case "PENDING":
// Continuer à vérifier
break;
}
return data.data;
}
Étapes suivantes
Créer un lien de paiement
Apprendre à créer des liens de paiement
Guide d'intégration
Guide complet d’intégration Navio

