Protocole d'acceptation de paiement

Les points de terminaison API suivants sont définis dans le protocole.

Passerelle d'acceptation de paiement

URL Description
https://merchant.runpay.tn/pay/gate/Begin commencer à accepter le paiement
https://merchant.runpay.tn/pay/gate/Services/V1/Api.svc service recevant le statut de paiement (version WCF)
https://merchant.runpay.tn/pay/gate/Services/V1/Api.asmx service de statut de paiement (version ASMX)

Site du vendeur

Type Description
RPC notification et contrôle de l'acceptation du paiement
Success page de paiement réussie
Failure refus / erreur de paiement page

Les messages suivants sont définis dans le protocole.

Compte

Messages est utilisé pour lancer le processus d'acceptation du paiement.

Champ Description
SYS_INVOICE_REMOTE_ID ID de compte / paiement dans le système de comptabilité du vendeur
SYS_POINT_ID Identifiant de service / points d'acceptation de paiement
SYS_INVOICE_AMOUNT_VALUE montant à payer
SYS_INVOICE_AMOUNT_TYPE devise à payer (garantie)
SYS_TEST_MODE mode test
SYS_PRODUCT remplacement du nom du produit
SYS_SUCCESS_URL redéfinition de l'URL après le paiement
SYS_FAILURE_URL redéfinition de l'âge de l'URL après le refus / l'erreur de paiement

Evénement de paiement

Messages informant le vendeur de l’exécution du paiement.

Champ Description
SYS_MAC signature du message - Message Authentication Code Base64(HMAC256(s))
SYS_EVENT type d'événement
SYS_POINT_ID accepteur de paiement
SYS_PRODUCT nom du produit
SYS_TEST_MODE indicateur de test / débogage
SYS_INVOICE_LOCAL_ID Identifiant de compte dans le système de comptabilité de la passerelle de paiement
SYS_INVOICE_REMOTE_ID Identifiant de compte dans le système de comptabilité du vendeur
SYS_INVOICE_STATE solde du compte
SYS_INVOICE_STATE_DATE date / heure de la transition vers l'état spécifié
SYS_INVOICE_AMOUNT_VALUE montant à payer
SYS_INVOICE_AMOUNT_TYPE monnaie / garantie
SYS_PAYMENT_ID ID de paiement dans le système de comptabilité de la passerelle pour recevoir le paiement
SYS_PAYMENT_STATE statut de paiement
SYS_PAYMENT_STATE_DATE date de virement du paiement à l'état spécifié
SYS_PAYMENT_AMOUNT_VALUE montant du paiement
SYS_PAYMENT_AMOUNT_TYPE sécurité de la monnaie / paiement
SYS_PAYMENT_SOURCE source du conseil

SYS_MAC est calculé comme suit:

        SYS_EVENT
+ ';' + SYS_CULTURE
+ ';' + SYS_INVOICE_LOCAL_ID
+ ';' + SYS_INVOICE_REMOTE_ID
+ ';' + SYS_POINT_ID
+ ';' + SYS_PRODUCT
+ ';' + SYS_INVOICE_STATE
+ ';' + SYS_INVOICE_STATE_DATE
+ ';' + SYS_PAYMENT_AMOUNT_VALUE
+ ';' + SYS_INVOICE_AMOUNT_TYPE
+ ';' + SYS_PAYMENT_ID
+ ';' + SYS_PAYMENT_STATE
+ ';' + SYS_PAYMENT_STATE_DATE
+ ';' + SYS_PAYMENT_AMOUNT_VALUE
+ ';' + SYS_PAYMENT_AMOUNT_TYPE
+ ';' + '[' + Join(',', SYS_PAYMENT_SOURCE) + ']'

Exemple

Message:

 SYS_MAC=Pj+71Xc/VG2a1yfnWW+Wl1/QXyDHyn34mxf88/9gCbI=
&SYS_EVENT=2
&SYS_CULTURE=ru-RU
&SYS_POINT_ID=29
&SYS_PRODUCT=%d0%9f%d1%80%d0%be%d0%b4%d1%83%d0%ba%d1%82+%e2%84%961
&SYS_TEST_MODE=0
&SYS_INVOICE_LOCAL_ID=11
&SYS_INVOICE_REMOTE_ID=9
&SYS_INVOICE_STATE=4
&SYS_INVOICE_STATE_DATE=2015-08-10T15%3a06%3a43.113Z
&SYS_INVOICE_AMOUNT_VALUE=1.37
&SYS_INVOICE_AMOUNT_TYPE=RUB
&SYS_PAYMENT_ID=13
&SYS_PAYMENT_STATE=6
&SYS_PAYMENT_STATE_DATE=2015-08-10T15%3a06%3a43.057Z
&SYS_PAYMENT_AMOUNT_VALUE=1.37
&SYS_PAYMENT_AMOUNT_TYPE=RUB.TST01
&SYS_PAYMENT_SOURCE=N*79777891379
&SYS_PAYMENT_SOURCE=N*32887427447

Chaîne de signature:

2;ru-RU;11;9;29;Продукт №1;0;4;2015-08-10T15:06:43.113Z;1.37;RUB;13;6;2015-08-10T15:06:43.057Z;1.37;RUB.TST01;[N*79777891379,N*32887427447]

Подпись:

Pj+71Xc/VG2a1yfnWW+Wl1/QXyDHyn34mxf88/9gCbI=

Résultat de l'alerte

Message est utilisé pour répondre au message * Evénement de paiement *

Champ Description
SYS_STATUS État d'avancement des alertes
SYS_MESSAGE Message

Transferts

Énumérations suivantes définies

Type d'évènement de paiement

Nom Valeur Description
BeforePay 1 Demande préliminaire
Success 2 Paiement effectué
Failure 3 * Paiement non * complété


Réponse à un événement de paiement

Nom Valeur Description
Success 0
Pending 1
AuthenticationFailure 2
Canceled 3


Mode test / débogage

Nom Valeur Description
None 0
Success 1
Failure 2


Statut du compte

Nom Valeur Description
None 0
WaitFunds 1
WaitConfirmations 2
Completing 3
Completed 4
Canceling 5
Canceled 6


Statut du paiement

Nom Valeur Description
None 0
WaitFirstCoin 1
WaitNextCoin 2
NotifyPay 3
WaitTransferInitiate 4
WaitTransferComplete 5
Completed 6
Canceled 7