Εφαρμογή ταυτοποίησης RuPay με χρήση του RuPay JavaScript API

Αυτή η σελίδα περιγράφει τον τρόπο ενοποίησης στην πύλη για χρήση της ταυτοποίησης RuPay με το RuPay JavaScript (JS) API.

Οι κατευθυντήριες οδηγίες για την ενοποίηση RuPay JS συμπληρώνουν τις κατευθυντήριες οδηγίες για την ενοποίηση API ταυτοποίησης RuPay, συνεπώς πρέπει να χρησιμοποιούνται συνδυαστικά.

Βήμα 1: Δημιουργία και ενημέρωση περιόδου λειτουργίας Copied to Clipboard

Το RuPay JS χρησιμοποιεί ταυτοποίηση βάσει περιόδου λειτουργίας. Ως πρώτο βήμα, πρέπει να δημιουργήσετε μια περίοδο λειτουργίας (session), την οποία μπορείτε στη συνέχεια να ενημερώσετε με τα πεδία αιτήματος και τις τιμές που θέλετε να αποθηκεύσετε στην περίοδο λειτουργίας.

Μπορείτε να δημιουργήσετε μια περίοδο λειτουργίας χρησιμοποιώντας την κλήση Create Session. Πρόκειται για μια κλήση API διακομιστή και αποτελεί προϋπόθεση για την ενοποίηση με το JS API. Επιστρέφει τα παρακάτω πεδία:

  • session.id: Ένα μοναδικό ID περιόδου λειτουργίας που πρέπει να δώσετε σε επακόλουθα αιτήματα για να γίνει αναφορά στα περιεχόμενα της περιόδου λειτουργίας.
  • session.authenticationLimit: Το όριο που δώσατε στο αίτημα ή η προεπιλεγμένη τιμή της πύλης.
  • session.aes256Key: Το κλειδί που μπορείτε να χρησιμοποιήσετε για την αποκρυπτογράφηση των ευαίσθητων δεδομένων που διαβιβάζονται στον ιστότοπό σας μέσω του browser ή της κινητής συσκευής του πληρωτή.
  • session.version: Μπορείτε να χρησιμοποιήσετε αυτό το πεδίο για την υλοποίηση αισιόδοξου κλειδώματος του περιεχομένου της περιόδου λειτουργίας.
  • session.updateStatus: Μια σύνοψη του αποτελέσματος της τελευταίας προσπάθειας τροποποίησης της περιόδου λειτουργίας.

Create Session - Αναφορά API[REST][NVP]

Αίτημα Update Session

Μπορείτε να προσθέσετε ή να ενημερώσετε πεδία σε μια περίοδο λειτουργίας χρησιμοποιώντας την κλήση Update Session. Σας επιτρέπει να προσθέσετε δεδομένα πληρωμής και πληρωτή σε μια περίοδο λειτουργίας που μπορεί στη συνέχεια να γίνει η είσοδος για τον προσδιορισμό του κινδύνου που συσχετίζεται με έναν πληρωτή σε μια πράξη ταυτοποίησης. Τα παρακάτω πεδία απαιτούνται σε μια περίοδο λειτουργίας:

Υποχρεωτικά πεδία

  • sourceOfFunds.provided.card.*: Λεπτομέρειες της κάρτας που χρησιμοποιείται για την πληρωμή.
  • order.amount
  • order.currency: Το νόμισμα της παραγγελίας.
  • transaction.id: Ένα μοναδικό αναγνωριστικό για αυτή την ταυτοποίηση πληρωμής.
  • order.id: Ένα μοναδικό αναγνωριστικό για αυτή την παραγγελία.
  • authentication.channel=PAYER_BROWSER: Το κανάλι στο οποίο εκκινείται το αίτημα ταυτοποίησης.
  • authentication.purpose=PAYMENT_TRANSACTION: Υποδεικνύει το πλαίσιο στο οποίο ζητείται η ταυτοποίηση πληρωτή.
  • authentication.redirectResponseUrl: Η διεύθυνση URL στην οποία θέλετε να ανακατευθύνετε τον πληρωτή μετά την ολοκλήρωση της διαδικασίας ταυτοποίησης πληρωτή.

Σημειώστε ότι δεν μπορείτε να καταργήσετε πεδία από μια περίοδο λειτουργίας, αλλά μπορείτε να αντικαταστήσετε τιμές μόνο για τα υπάρχοντα πεδία.

Update Session - Αναφορά API[REST][NVP]

Βήμα 2: Προετοιμασία του API Copied to Clipboard

Κάντε αναφορά στο RuPay JS API (rupay.js) από τους διακομιστές πύλης. Με αυτόν τον τρόπο, ένα αντικείμενο rupay θα τοποθετηθεί στο παράθυρο/τον καθολικό χώρο ονομάτων.

rupay.js Reference[JavaScript]

Αφού δημιουργήσετε μια περίοδο λειτουργίας (session), προετοιμάστε το API χρησιμοποιώντας τη μέθοδο configure( ). Αυτή η μέθοδος πρέπει να κληθεί κατά τη φόρτωση της σελίδας ή όταν το DOM είναι σε κατάσταση ετοιμότητας. Θα πρέπει να κληθεί μόνο μία φορά για τη φόρτωση της σελίδας. Μετά την κλήση αυτής της μεθόδου, το RuPay JS θα παράσχει τιμές διαμόρφωσης ως μεταβλητές μέλους.

Αίτημα προετοιμασίας RuPay JS

Μπορείτε να προετοιμάσετε το RuPay JS API με επίκληση της μεθόδου configure(), με τα ακόλουθα υποχρεωτικά πεδία ως ορίσματα σε ένα αντικείμενο χάρτη:

  • merchantId: Το αναγνωριστικό σας εμπόρου στην πύλη.
  • sessionId: Το ID περιόδου λειτουργίας που δημιουργήσατε χρησιμοποιώντας την κλήση Create Session.
  • containerId: Το <div> id στη σύνταξη html όπου το API θα προσθέσει το κρυφό iframe.
  • callback: Μια συνάρτηση που θα κληθεί αφού προετοιμαστεί το API.
  • configuration: Τιμή JSON που υποστηρίζει στοιχεία δεδομένων, όπως userLanguage(optional), έκδοση REST API (wsVersion).
Παράδειγμα προετοιμασίας διαμόρφωσης API

<html>
    <head>
    <script src="https://mtf.gateway.mastercard.com/static/rupay/1.0.0/rupay.js"
            data-error="errorCallback"
            data-cancel="cancelCallback">
    </script>

    <script type="text/javascript">
        //The output of this call will return 'false', since the API is not configured yet
        console.log(Rupay.isConfigured());
        /**
        Configure method with the configuration{} parameter set and demonstrates the state change of the rupay object before and after the configure method is invoked.
        */
        Rupay.configure({
    merchantId: "TESTMERCHANT",
    sessionId: "SESSION0002899787259G30902270H6",
    containerId: "ABC",
    callback: function() {
        if (Rupay.isConfigured())
            console.log("Done with configure");
    },
    configuration: {
        userLanguage: "en-US",
        wsVersion: 55
    }
});

    </script>
    </head>
    <body>
        <div id="RupayUI"></div>
    </body>
</html>
		

Βήμα 3: Έναρξη ταυτοποίησης Copied to Clipboard

Μόλις συγκεντρωθούν όλα τα δεδομένα του πληρωτή και των πληρωμών σε μια περίοδο λειτουργίας (session), μπορείτε να ξεκινήσετε την ταυτοποίηση με επίκληση της μεθόδου initiateAuthentication(). Σας επιτρέπει να καθορίσετε αν η ταυτοποίησης πληρωτή RuPay είναι διαθέσιμη στον έμπορο για μια δεδομένη κάρτα. Αν ο τύπος κάρτας είναι RuPay, η πύλη καθορίζει την καταλληλότητα του BIN κάρτας RuPay για συναλλαγές ηλεκτρονικού εμπορίου.

Αίτημα Initiate Authentication

Μπορείτε να ξεκινήσετε την ταυτοποίηση παρέχοντας τα ακόλουθα υποχρεωτικά πεδία στη μέθοδο initiateAuthentication():

  • orderId: Το μοναδικό αναγνωριστικό για αυτή την παραγγελία.
  • transactionId: Το μοναδικό αναγνωριστικό για αυτή την ταυτοποίηση πληρωμής.
  • callback: Η συνάρτηση ανάκλησης.
  • optionalParams: (Προαιρετικά) όρισμα με οποιαδήποτε πρόσθετα πεδία αιτήματος Initiate Authentication του REST API, όπως correlationId.
Απόκριση Initiate Authentication

Αν είναι διαθέσιμη ταυτοποίηση RuPay του πληρωτή, τα παρακάτω πεδία επιστρέφονται στο όρισμα data της συνάρτησης ανάκλησης. Διαφορετικά, η απόκριση θα περιλαμβάνει ένα σφάλμα.

  • data.restApiResponse: Περιέχει ανεπεξέργαστη απόκριση από την κλήση Initiate Authentication του REST API.
  • data.correlationId: Το τελευταίο ID συσχετισμού που χρησιμοποιήθηκε για να γίνει η κλήση Initiate Authentication του REST API. Σας επιτρέπει να αντιστοιχίσετε την απόκριση στο αίτημα.
  • data.gatewayRecommendation

Για να καθορίσετε το επόμενο βήμα, ελέγξτε τη σύσταση της πύλης που δίνεται στο πεδίο gatewayRecommendation.

gatewayRecommendation Επόμενο βήμα
PROCEED Μπορείτε να συνεχίσετε με την ταυτοποίηση του πληρωτή χρησιμοποιώντας την κλήση μεθόδου authenticatePayer( ).
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS Ζητήστε από τον πληρωτή λεπτομέρειες για εναλλακτική πληρωμή (π.χ. νέα κάρτα ή άλλο τρόπο πληρωμής) και υποβάλετε ξανά το αίτημα με τις νέες λεπτομέρειες. Μην υποβάλετε ξανά το ίδιο αίτημα.

Ο παρακάτω πίνακας εμφανίζει την απόκριση Initiate Authentication για τα διάφορα σενάρια ταυτοποίησης Rupay.

Κατάσταση response.gatewayRecommendation transaction.authenticationStatus response.gatewayCode result
  • Το Initiate Authentication ολοκληρώθηκε
  • Εγγράφηκε (κατάλληλο για ηλεκτρονικό εμπόριο)
PROCEED AUTHENTICATION_AVAILABLE AUTHENTICATION_IN_PROGRESS SUCCESS
  • Το Initiate Authentication ολοκληρώθηκε
  • Δεν εγγράφηκε (δεν είναι κατάλληλο για ηλεκτρονικό εμπόριο)
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_NOT_SUPPORTED DECLINED FAILURE
  • Λήξη χρονικού ορίου τράπεζας εμπόρου
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_UNAVAILABLE DECLINED FAILURE
  • Μη έγκυρη απόκριση BIN από το RuPay PaySecure
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_NOT_SUPPORTED DECLINED FAILURE
  • Αν το RuPay PaySecure δεν είναι σε θέση να διεκπεραιώσει συναλλαγές για μη καθορισμένο λόγο.
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_UNAVAILABLE DECLINED FAILURE
Παράδειγμα αιτήματος Initiate Authentication

var optionalParams = {
    sourceOfFunds: {
        type: "CARD"
    },
    order: {
        walletProvider: "MASTERPASS_ONLINE"
    }
};

Rupay.initiateAuthentication({orderId}, {transactionId}, function (data) {
    if (data && data.error) {
        var error = data.error;

        //Something bad happened, the error value will match what is returned by the Authentication API
        console.error("error.code : ", error.code);
        console.error("error.msg : ", error.msg);
        console.error("error.result : ", error.result);
        console.error("error.status : ", error.status);
    } else {
        console.log("After Initiate RuPay ", data);

        //data.response will contain information like gatewayRecommendation, authentication version, etc.
        console.log("REST API raw response ", data.restApiResponse);
        console.log("Correlation Id", data.correlationId);
        console.log("Gateway Recommendation", data.gatewayRecommendation);
        console.log("HTML Redirect Code", data.htmlRedirectCode);
        console.log("Authentication Version", data.authenticationVersion);

        switch (data.gatewayRecommendation) {
            case "PROCEED":
                authenticatePayer();//merchant's method
                break;
            case "RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS":
                tryOtherPayment();//Card does not support 3DS and transaction filtering rules require 3DS on this transaction: Ask the payer to select a different payment method
                break;
        }
    }
}, optionalParams);
		

Βήμα 4: Ταυτοποίηση πληρωτή Copied to Clipboard

Όταν η απόκριση Initiate Authentication έχει υποδείξει ότι είναι διαθέσιμη ταυτοποίηση (authentication.version=RUPAY) για την κάρτα RuPay, μπορείτε να κάνετε επίκληση της μεθόδου authenticatePayer(). Θα πρέπει να το επικαλεστείτε όταν ο πληρωτής κάνει κλικ στο κουμπί "Πληρωμή τώρα" στη σελίδα checkout.

Η πράξη Authenticate Payer ανταλλάσσει με ασφάλεια τις απαραίτητες πληροφορίες, συμπεριλαμβανομένου του αριθμού της κάρτας, μεταξύ της αποδέκτριας τράπεζας και του RuPay PaySecure. Το PaySecure επιστρέφει ένα μοναδικό ID συναλλαγής (tran_ID), το οποίο μπορεί να χρησιμοποιηθεί σε επακόλουθες πράξεις Authorization ή Pay.

Αίτημα Authenticate Payer

Πρέπει να κάνετε επίκληση στη μέθοδο authenticatePayer() παρέχοντας τα ακόλουθα υποχρεωτικά πεδία:

  • orderId: Το ίδιο orderId όπως για τη μέθοδο initiateAuthentication() που προηγήθηκε.
  • transactionId: Το ίδιο transactionId όπως για τη μέθοδο initiateAuthentication() που προηγήθηκε.
  • callback: Η συνάρτηση ανάκλησης.
  • optionalParams: (Προαιρετικά) ορίσματα με οποιαδήποτε πρόσθετα πεδία αιτήματος Authenticate Payer του REST API, όπως fullScreenRedirect, billing..
Απόκριση Authentication Payer

Τα παρακάτω πεδία επιστρέφονται στο όρισμα data της συνάρτησης ανάκλησης:

  • data.restApiResponse: Περιέχει ανεπεξέργαστη απόκριση από την κλήση Authentication Payer του REST API.
  • data.correlationId: Το τελευταίο ID συσχετισμού που χρησιμοποιήθηκε για να γίνει η κλήση Authentication Payer του REST API. Σας επιτρέπει να αντιστοιχίσετε την απόκριση στο αίτημα.
  • data.gatewayRecommendation
  • data.htmlRedirectCode: Η πύλη επιστρέφει πάντα αυτό το πεδίο για εισαγωγή στη σελίδα που εμφανίζεται στον πληρωτή.

Για να καθορίσετε το επόμενο βήμα, ελέγξτε τη σύσταση της πύλης που δίνεται στο πεδίο gatewayRecommendation που επιστρέφεται στην ανάκληση.

gatewayRecommendation Επόμενο βήμα
Συνέχεια Μπορείτε να συνεχίσετε στην ολοκλήρωση της διαδικασίας ταυτοποίησης (ροή challenge) ή στην ολοκλήρωση της πληρωμής (ροή frictionless).
DO_NOT_PROCEED_ABANDON_ORDER Μην υποβάλετε ξανά το ίδιο αίτημα. Ο πάροχος υπηρεσιών πληρωμής, το πρόγραμμα ή ο εκδότης σας απαιτούν να εγκαταλείψετε την παραγγελία.
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS Ζητήστε από τον πληρωτή λεπτομέρειες για εναλλακτική πληρωμή (π.χ. νέα κάρτα ή άλλο τρόπο πληρωμής) και υποβάλετε ξανά το αίτημα με τις νέες λεπτομέρειες. Μην υποβάλετε ξανά το ίδιο αίτημα.

Αν η πύλη συνιστά την επιλογή PROCEED, επικολλήστε το περιεχόμενο του πεδίου απόκρισης htmlRedirectCode στη σελίδα που εμφανίζεται στον πληρωτή.

Ο παρακάτω πίνακας εμφανίζει την απόκριση authenticatePayer() για τα διάφορα σενάρια ταυτοποίησης Rupay.

Κατάσταση response.gatewayRecommendation transaction.authenticationStatus authentication.payerInteraction response.gatewayCode result
  • Η ταυτοποίηση πληρωτή ήταν επιτυχής
  • Έγινε εκκίνηση της ροής challenge.
PROCEED AUTHENTICATION_PENDING REQUIRED PENDING PENDING
  • Η ταυτοποίηση εκδότη απέτυχε λόγω μη έγκυρων λεπτομερειών κάρτας.
DO_NOT_PROCEED_ABANDON_ORDER AUTHENTICATION_REJECTED NOT_REQUIRED DECLINED FAILURE
  • Λήξη χρονικού ορίου τράπεζας εμπόρου
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_UNAVAILABLE NOT_POSSIBLE DECLINED FAILURE
  • Μη έγκυρη απόκριση BIN από το NPCI
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_UNAVAILABLE NOT_POSSIBLE DECLINED FAILURE
  • Αν το RuPay PaySecure δεν είναι σε θέση να διεκπεραιώσει συναλλαγές για μη καθορισμένο λόγο.
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_UNAVAILABLE NOT_POSSIBLE DECLINED FAILURE
  • Σφάλμα συστήματος (τεχνικό σφάλμα στο RuPay PaySecure)
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_UNAVAILABLE NOT_POSSIBLE DECLINED FAILURE

Ταυτοποίηση OTP

Η πύλη ανακατευθύνει τον browser του πληρωτή στο UI επικύρωσης OTP του εκδότη όπου θα ζητηθεί από τον πληρωτή να πληκτρολογήσει έναν έγκυρο OTP, στη συνέχεια ο πληρωτής θα ανακατευθυνθεί ξανά στον ιστότοπό σας. Τα παρακάτω πεδία επιστρέφονται στην ανάκληση όταν ο browser του πληρωτή έχει επιστρέψει στον ιστότοπό σας.

  • order.id
  • transaction.id
  • result
  • response.gatewayRecommendation

Μπορείτε να καθορίσετε το αποτέλεσμα της ταυτοποίησης χρησιμοποιώντας την τιμή που επιστρέφεται στο πεδίο response.gatewayRecommendation.

response.gatewayRecommendation Επόμενο βήμα
PROCEED Μπορείτε να συνεχίσετε με την πληρωμή καθώς χορηγείται η ταυτοποίηση. Αν η έγκριση για την πληρωμή ήταν επιτυχής, προχωρήστε στη δέσμευση των κεφαλαίων και, αν είναι δυνατό, στείλτε τα αγαθά.
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS Ζητήστε από τον πληρωτή λεπτομέρειες για εναλλακτική πληρωμή (π.χ. νέα κάρτα ή άλλο τρόπο πληρωμής) και υποβάλετε ξανά το αίτημα με τις νέες λεπτομέρειες. Μην υποβάλετε ξανά το ίδιο αίτημα.

Η πύλη ενημερώνει τα πεδία απόκρισης Authentication Payer μετά την ανάκτηση των αποτελεσμάτων από την ταυτοποίηση OTP.

Κατάσταση response.gatewayRecommendation transaction.authenticationStatus authentication.payerInteraction response.gatewayCode result
  • Η ροή challenge είναι επιτυχής.
PROCEED AUTHENTICATION_SUCCESSFUL REQUIRED APPROVED SUCCESS
  • Η ροή challenge δεν ήταν επιτυχής, π.χ. υπήρξε λήξη του χρονικού ορίου, ο OTP δεν είναι έγκυρος, κ.λπ.
RESUBMIT_WITH_ALTERNATIVE_PAYMENT_DETAILS AUTHENTICATION_FAILED REQUIRED DECLINED FAILURE
Παράδειγμα αιτήματος Authenticate Payer
var optionalParams = {
    fullScreenRedirect: true,
    billing: {
        address: {
            city: "London",
            country: "GBR"
        }
    }
};

Rupay.authenticatePayer("5678", "ABC", function (data) {
    if (!data.error) {
        //data.response will contain all the response payload from the AUTHENTICATE_PAYER call.
        console.log("REST API response ", data.restApiResponse);
        console.log("HTML redirect code ", data.htmlRedirectCode);
    }
}, optionalParams);

Βήμα 5: Χρήση του αποτελέσματος ταυτοποίησης στην πράξη πληρωμής Copied to Clipboard

Όταν το αποτέλεσμα της μεθόδου authenticatePayer() υποδεικνύει ότι μπορείτε να συνεχίσετε στην πληρωμή (gatewayRecommendation=PROCEED), μπορείτε να ξεκινήσετε μια πράξη Authorize ή Pay. Εκτός από τα τυπικά πεδία, πρέπει να παρέχετε τα ακόλουθα πεδία:

  • order.id: Δώστε το orderId που παρείχατε στις μεθόδους initiateAuthentication() και authenticatePayer().
  • authentication.transactionId: Δώστε το transactionId που παρείχατε στις μεθόδους initiateAuthentication() και authenticatePayer(). Δεν χρειάζεται να συμπεριλάβετε κανένα από τα πεδία στην ομάδα παραμέτρων ταυτοποίησης, καθώς η πύλη θα χρησιμοποιήσει το authentication.transactionId για να αναζητήσει τα αποτελέσματα ταυτοποίησης που αποθήκευσε όταν της ζητήσατε να εκτελέσει την ταυτοποίηση. Η πύλη διαβιβάσει τις απαιτούμενες πληροφορίες στην τράπεζα εμπόρου.
Παράδειγμα αιτήματος Pay
URL https://mtf.gateway.mastercard.com/api/rest/version/72/merchant/{merchantId}/order/{orderid}/transaction/{transactionid}
Μέθοδος HTTP PUT

{
      "apiOperation":"PAY",
      "order":{
         "amount":"100",
         "currency":"INR"
     },
     "sourceOfFunds":{
         "provided":{
            "card":{
               "expiry":{
                  "month":"01",
                  "year":"21"
               },
               "number":"6074819900004939",
               "securityCode":"111"
            }
         },
         "type":"CARD"
      },
         "authentication": {
           "transactionId":"8286737"
       }
   }
	
Παράδειγμα απόκρισης Pay

	{
        "authentication": {
            "transactionId": "471707320"
        },
        "authorizationResponse": {
            "transactionIdentifier": "500000000000000000000002347854"
        },
        "gatewayEntryPoint": "WEB_SERVICES_API",
        "merchant": "TESTMERCHANT",
        "order": {
            "amount": 100.00,
            "chargeback": {
                "amount": 0,
                "currency": "INR"
            },
            "creationTime": "2019-07-03T09:08:28.309Z",
            "currency": "INR",
            "id": "802014086",
            "merchantCategoryCode": "4511",
            "status": "CAPTURED",
            "totalAuthorizedAmount": 100.00,
            "totalCapturedAmount": 100.00,
            "totalRefundedAmount": 0.00
        },
        "response": {
            "acquirerCode": "00",
            "acquirerMessage": "Success",
            "gatewayCode": "APPROVED"
        },
        "result": "SUCCESS",
        "sourceOfFunds": {
            "provided": {
                "card": {
                    "brand": "RUPAY",
                    "expiry": {
                        "month": "1",
                        "year": "21"
                    },
                    "fundingMethod": "DEBIT",
                    "issuer": "DMBB9990001",
                    "number": "607481xxxxxx4939",
                    "scheme": "RUPAY",
                    "storedOnFile": "NOT_STORED",
                    "tags": "{\"RUPAY_BIN_STATUS_FLAG\":\"ACTIVE\",\"RUPAY_BIN_MESSAGE_TYPE\":\"SMS\"}"
                }
            },
            "type": "CARD"
        },
        "timeOfRecord": "2019-07-03T09:08:28.309Z",
        "transaction": {
            "acquirer": {
                "id": "<acquirer_id>",
                "merchantId": "423555234334123"
            },
            "amount": 100.00,
            "authorizationCode": "143835",
            "currency": "INR",
            "frequency": "SINGLE",
            "id": "108379916",
            "receipt": "918409000035",
            "source": "INTERNET",
            "terminal": "88011019",
            "type": "PAYMENT"
        },
        "version": "72"
    }
	

Δοκιμή της ενοποίησής σας Copied to Clipboard

Για να δοκιμάσετε την ενοποίηση, μπορείτε να χρησιμοποιήσετε το δοκιμαστικό προφίλ εμπόρου στο περιβάλλον παραγωγής.