Intégration avec votre service
Marchand
Créer une commande
Utiliser la méthode public/exchanger/order/create
Nom | Description | Type |
routeId | identifiant directement | ObjectID |
partner | code partenaire | STRING |
amount | montant | FLOAT |
fromValues[0][key] | clé de champ | ObjectID |
fromValues[0][value] | valeur du champ | STRING |
toValues[0][key] | clé de champ | STRING |
toValues[0][value] | valeur du champ | STRING |
routeValues[0][key] | clé de champ | ObjectID |
routeValues[0][value] | valeur du champ | STRING |
lang | langue | STRING |
agreement | accord | BOOLEAN |
hideOutData | cacher détails | BOOLEAN |
clientCallbackUrl | rappel appeler lorsque le programme est terminé, le client verra un bouton pour revenir sur le site et le client sera redirigé vers cette URL. ?status=success ou sur ?status=error | STRING |
ipnUrl | URL de notification de paiement instantanée (sera appelé lorsque le statut de la commande change) | STRING |
ipnSecret | chaîne à créer sûr hachage dans ipn URL | STRING |
Documentation système autorisation tu peux trouver en perso bureau. En savoir plus sur l'utilisation des méthodes et des méthodes supplémentaires données tu peux trouver sur
IPN (Notification d'un changement dans l'état du paiement demande)
À obtenir notification d'un changement de statut de la demande en cours de la demande la création est nécessaire envoyer supplémentaire paramètres:
clientCallbackUrl
- rappel appeler lorsque le programme est terminé, le client verra un bouton pour revenir sur le site et le client sera redirigé vers cette URL.hideOutData
- cacher données destinataireipnUrl
- Le lien HTTP/HTTPS pour la notification votre serveur.ipnSecret
- Chaîne aléatoire à générer signature demande (de soutien intégrité demande)
- La requête sera envoyée via la méthode POST
- L'IPN sera envoyé une fois
- La livraison de l'IPN n'est pas garantie (si le serveur n'a pas répondu à la requête, elle ne sera pas renvoyée)
Exemple d'IPN
- POST
- ['Content-Type'] = 'application/x-www-form-urlencoded'
orderUID
:Number() - demande uidorderId
:String(ObjectId) -demande idnewStatus
:String() - demande état actuelinAmount
:String(number) - order in sumoutAmount
:String(number) - order out sumxml_from
:String() - demande uidxml_to
:String() - demande uidtimestamp
:Number() - heure unix et ipn notificationtoValues
:Array([{key,name,value}]) - détails de La demande
new
- nouvelle demandewaitPayment
- nous attendons paiement depuis utilisateurerrorPayment
- erreur de paiement de l'utilisateur (erreur Envoi en cours vendeur)inProgress
- en cours (en attente traitement administrateur ou paiement de la demande)inProgressPayout
- en file d'attente pour le paiement (paiement accepté réussi) (si configuré automatique paiement en devise, il sera initialisé)errorPayout
- erreur de paiement (erreur arrivé lors du paiement)hold
- La demande a été gelé (problèmes depuis Demande)done
- demande réussie payéreturned
- la demande a été payée, mais pas toute conditions échange et méthodes retour l'expéditeur étaient effectuédeleted
- Demande supprimée (annulée)
Vérification contrôle montant de la demande (IPN)
sha256(orderId:newStatus:inAmount:outAmount:xml_from:xml_to:timestamp:ipnSecret)
const stringForHash = orderId+":"+newStatus+":"+inAmount+":"+outAmount+":"+xml_from+":"+xml_to+":"+timestamp+":"+ipnSecret;
// example string for hash 5d8e6002b80b7b4cd75a6424:inProgress:2:317.42:ETH:WMZ:1571328406072:SECRET123
const hash = crypto.createHash('sha256').update(stringForHash).digest('hex')
// example hash af3acf947e6f0e0f2c267e300b8582e504dba12d1f2d058652b7414163c09f48
Contrôle des paiements
- Si vous avez besoin suivre l'état des demandes, créer avec leur aide autorisations, toutes demandes sera reflété dans votre perso bureau;
- Vous pouvez enregistrer l'UID et le secret de la demande et accéder manuellement à la demande en spécifiant ces données dans la barre d'adresse
Paiement
-
Vous pouvez utiliser / payment / pour afficher page de paiement
// schema
https://www.aura.legal/user-lang/payment/order-uid/order-secret
// example result
https://www.aura.legal/en/payment/1409/dGqwF2M2eBPaSN1G5ljMS1cb - Aussi tu peux juste donner référence à la portefeuille comme son voir tout le monde clients selon le même schéma que dans le premier les options, sauf / paiement /, devraient remplacer par / commander /
- La méthode possède des paramètres qui permettre afficher paiement données ou formulaire de paiement sur votre site que vous pouvez utiliser. IMPORTANT: si la méthode de prépaiement est utilisée, vous avez besoin mettre à jour le statut de la commande de waitPayment à inProgress après paiement.