Dernière mise à jour 19/11/2015

6. Requête Directe (Direct Query): demander le statut d’une commande

Une demande d’interrogation directe (direct query) à partir de votre application vous permet de demander le statut d’une commande automatiquement (plutôt que manuellement dans votre module de gestion (back-office)). Vous ne pouvez envoyer des interrogations qu’une à la fois, et ne recevrez qu’un nombre limité de données par rapport à cette commande.

Si vous désirez plus d’informations sur la commande, vous pouvez vérifier la transaction dans le module de gestion (back-office) ou effectuer un téléchargement de fichier automatique ou manuel (cf. Consultez vos transactions et guide d’intégration avancé Batch).

6.1 Demande de requête

6.1.1 URL de requête

  • L’URL de requête dans l’environnement de TEST est https://ogone.test.v-psp.com/ncol/test/querydirect.asp
  • L’URL de requête dans l’environnement de PRODUCTION est https://secure.ogone.com/ncol/prod/querydirect.asp

Important

N’oubliez pas de remplacer “test” par “prod” dans l’URL de requête lorsque vous passez votre compte en PRODUCTION.

6.1.2 Paramètres de requête

Le tableau ci-dessous comprend les paramètres de requête obligatoires pour effectuer une interrogation directe (direct query):

Champ
Usage
ORDERID

Vous pouvez envoyer le PAYID ou l’ORDERID afin d’identifier la commande originale. Nous recommandons l’utilisation du PAYID.

PAYID
PAYIDSUB
Vous pouvez indiquer l’ID de niveau d’historique si vous utilise le PAYID pour identifier la commande originale (optionnel).
PSPID
PSPID de votre compte Ingenico ePayments
PSWD
Mot de passe de votre utilisateur API
USERID
Votre utilisateur API

6.1.3 Page de test

Un exemple (page de test) d’une requête d’interrogation directe (‘) peut être trouvé à l’adresse: https://ogone.test.v-psp.com/ncol/test/testdq.asp.

6.2 Réponse de requête

Notre serveur renvoie une réponse XML à la requête:

Exemple d’une réponse XML response à une interrogation directe (direct query):

<?xml version=”1.0”?>
<ncresponse orderID=”99999” PAYID=”1111111” PAYIDSUB=”3” NCSTATUS=”0” NCERROR=”” NCERRORPLUS=”” ACCEPTANCE=”12345” STATUS="9" ECI=”7” amount="125" currency="EUR" PM="CreditCard" BRAND="VISA" CARDNO="XXXXXXXXXXXX1111" IP="212.33.102.55"/>

Le tableau ci-dessous comprend une liste des attributs de tag “ncresponse”:

Champ
Usage
ACCEPTANCE Code d’acceptance renvoyé par l’acquéreur
amount Montant de la commande (non multiplié par 100)
BRAND Type de carte ou information similaire pour d’autres moyens de paiement
CARDNO Le numéro de carte de credit masqué
currency Devise de la commande
ECI Indicateur de Commerce Electronique (Electronic Commerce Indicator)
IP Adresse IP du client, telle que détectée par notre système dans une intégration en mode 3 tiers, ou envoyée via une intégration en mode 2 tiers
NCERROR Code d’erreur
NCERRORPLUS Explication du code d’erreur
NCSTATUS Statut lié au code NCERROR
orderID Votre référence de commande
PAYID Référence de paiement dans notre système
PAYIDSUB L’ID de niveau dans l’historique des opérations de maintenance du PAYID
PM Moyen de paiement
STATUS Statut de la transaction

Les paramètres du champ standards libellés ncresponse sont identiques à ceux pour la réponse XML à une nouvelle commande, à l’exception des attributs additionnels PAYIDSUB, CARDNO et IP.

La liste des paramètres peut être plus longue pour les marchands qui ont activé certaines options (par exemple le module de détection de fraude) dans leurs comptes. Veuillez vous référer à la documentation spécifique à l’option pour obtenir plus d’informations sur les paramètres de réponse additionnels liés à ces options. 

6.2.1 Transactions traitées en e-Commerce

Si les transactions pour lesquelles vous désirez vérifier le statut ont été traitées en mode e-Commerce, vous recevrez également les attributs additionnels suivants (dans la mesure où vous aviez envoyé dès le départ ces champs dans la transaction e-Commerce).

Champ
Usage
complus*
Une valeur que vous souhaitiez recevoir
(paramplus content)*
Les paramètres que vous désiriez recevoir et leurs valeurs

* Cf. Paramètres du retour d'information variable (documentation e-Commerce)

Exemple d’une réponse XML à une interrogation directe (direct query) pour une transaction e-Commerce

<ncresponse orderID=”99999” PAYID=”1111111” PAYIDSUB=”3” NCSTATUS=”0” NCERROR=”” NCERRORPLUS=”” ACCEPTANCE=”12345” STATUS="9" amount="125" currency="EUR" PM="CreditCard" BRAND="VISA" CARDNO="XXXXXXXXXXXX1111" IP="212.33.102.55" COMPLUS="123456789123456789123456789" SessionID="126548354" ShopperID="73541312"/>

6.3 Statuts possibles de réponse

Le champ STATUS comprendra le statut de la transaction. (cf. Statuts possible).

Seul le statut ci-dessous est spécifiquement lié à la recherche (query) elle-même:

Statut
NCERROR
NCSTATUS
Explication
88
La recherche (query) sur querydirect.asp a échoué

6.4 Requête Directe comme sécurité

Les temps de réponse pour une requête de transaction DirectLink sont généralement de quelques secondes; certains acquéreurs peuvent, cependant, avoir des temps de réponse plus longs.   

Si vous n’avez pas reçu une réponse de notre système après 30 secondes, vous pouvez envoyer une requête à querydirect.asp, demandant le statut de votre transaction la plus récente à orderdirect.asp. Si vous recevez une réponse immédiate contenant le statut non final pour la transaction, il se pourrait qu’il y ait des problèmes chez l’acquéreur.

Si vous n’avez pas reçu une réponse à cette interrogation directe (direct query) après 10 secondes, il se pourrait qu’il y ait des problèmes de notre côté. Vous pouvez répéter cette requête vers querydirect.asp toutes les 30 secondes jusqu’à ce que vous receviez une réponse dans les 10 secondes.

A noter que :
  • Ce système de contrôle ne pourra pointer vers des problèmes de notre côté que s’il existe un contrôle de votre côté pour vérifier que les requêtes partent de vos serveurs correctement.
  • Un problème de notre côté ne sera pas nécessairement toujours causé par un downtime, mais pourrait également être le résultat de temps de réponse lents liés à des problèmes de base de données par exemple.
  • Veuillez utiliser ces contrôles de manière judicieuse afin d’éviter de bombarder nos serveurs avec des requêtes, sans quoi nous pourrions réduire votre accès à la page querydirect.asp.

Important

Afin de protéger notre système de surcharges non nécessaires, nous interdisons les contrôles préalables du système qui incluent l’envoi de fausses transactions ou d’interrogations (queries) systématiques, ainsi que les interrogations (queries) systématiques utilisées pour obtenir le retour d’information de transaction (transaction feedback) pour chaque transaction.

Ce site utilise les cookies pour être capable de vous donner la meilleure expérience utilisateur. Si vous ne souhaitez pas accepter ces cookies, nous vous permettons de modifier les paramètres des cookies. Cliquez sur «Accepter» pour permettre tous les cookies de ce site.

Paramètres des cookies

Introduction

Fonctionnels

Les cookies fonctionnels assurent le bon fonctionnement du site et ne peuvent pas être désactivés.

Optimisés

Les cookies d'optimisation nous permettent d'analyser l'utilisation du site afin de l'améliorer.
C'est le niveau par défaut.

Personnalisés

Les cookies de personnalisation, utilisés pour les médias sociaux et la personnalisation avancée, nous permettent d'afficher vos informations en lien avec votre société.


Exemple de fonctionnalité autorisée

  • Mémorisation du pays préféré
  • Mémorisation de la langue préférée

Exemple de fonctionnalité non autorisée

  • Enregistrement des données personnelles des utilisateurs
  • Suivi anonyme via Google Analytics
  • Suivi à des fins de remarketing

Exemple de fonctionnalité autorisée

  • Mémorisation du pays préféré
  • Mémorisation de la langue préférée
  • Suivi anonyme via Google Analytics

Exemple de fonctionnalité non autorisée

  • Enregistrement des données personnelles des utilisateurs
  • Suivi à des fins de remarketing

Exemple de fonctionnalité autorisée

  • Mémorisation du pays préféré
  • Mémorisation de la langue préférée
  • Suivi anonyme via Google Analytics
  • Affichage de contenus en fonction de vos intérêts
  • Affichage de publicités en fonction de vos intérêts
  • Suivi à des fins de remarketing

Exemple de fonctionnalité non autorisée

  • Enregistrement de données personnelles