$lang['tuto'] = "ट्यूटोरियल"; ?>$lang['tuto'] = "ट्यूटोरियल"; ?>$lang['tuto'] = "ट्यूटोरियल"; ?> मोनेरिस चेकआउट को

मोनेरिस चेकआउट को जावास्क्रिप्ट के साथ एकीकृत करना: JSON प्रतिक्रिया समस्याओं को संभालना

मोनेरिस चेकआउट को जावास्क्रिप्ट के साथ एकीकृत करना: JSON प्रतिक्रिया समस्याओं को संभालना
मोनेरिस चेकआउट को जावास्क्रिप्ट के साथ एकीकृत करना: JSON प्रतिक्रिया समस्याओं को संभालना

मोनेरिस चेकआउट का निर्बाध एकीकरण: JSON प्रतिक्रिया का समस्या निवारण

मोनेरिस चेकआउट आमतौर पर इस्तेमाल किया जाने वाला भुगतान गेटवे सिस्टम है जो व्यवसायों को ऑनलाइन लेनदेन में तेजी लाने में मदद करता है। हालाँकि, इसे अपनी वेबसाइट में एकीकृत करना मुश्किल हो सकता है, खासकर जब आवश्यक डेटा, जैसे टिकट नंबर, JSON कॉल से वापस नहीं किया जाता है। ऐसी त्रुटियां लेनदेन के नियमित प्रवाह को बाधित कर सकती हैं, इसलिए इंजीनियरों के लिए डिबगिंग एक आवश्यक कौशल है।

पुराने होस्टेड पेमेंट पेज (एचपीपी) को मोनेरिस से बदलने और उनके जावास्क्रिप्ट इंटरफ़ेस का उपयोग करते समय चेकआउट को ठीक से कॉन्फ़िगर करने का तरीका समझना महत्वपूर्ण है। अपने ग्राहकों को निर्बाध अनुभव प्रदान करने के लिए, सुनिश्चित करें कि पृष्ठ लेनदेन विवरण पोस्ट करता है और सटीक प्रतिक्रियाएँ प्राप्त करता है।

कई डेवलपर्स को मोनेरिस के एकीकरण दस्तावेज़ का पालन करने में परेशानी होती है। जटिलता कॉलबैक को संभालने, लेनदेन डेटा अपलोड करने और वास्तविक समय में परिणामों को पढ़ने से उत्पन्न होती है, ये सभी एक सफल एकीकरण के लिए आवश्यक हैं। जैसे ही आप अपनी एकीकरण यात्रा शुरू करते हैं, एक स्पष्ट और अच्छी तरह से प्रलेखित कार्यप्रणाली फायदेमंद हो सकती है।

इस पोस्ट में, हम देखेंगे कि आपके मोनेरिस एकीकरण में गुम टिकट नंबरों की समस्या को कैसे हल किया जाए। यदि आप आवश्यक कोड स्निपेट और समस्या निवारण तकनीकों की समीक्षा करते हैं तो आप इस समस्या से निपटने के लिए बेहतर रूप से तैयार होंगे।

आज्ञा उपयोग का उदाहरण
monerisCheckout() यह मोनेरिस जावास्क्रिप्ट एसडीके से कंस्ट्रक्टर फ़ंक्शन है। यह चेकआउट प्रक्रिया आरंभ करता है. यह स्क्रिप्ट मोनेरिस चेकआउट विजेट का एक नया उदाहरण तैयार करती है, जो आपको अपनी वेबसाइट पर भुगतान गेटवे एम्बेड करने की अनुमति देती है।
setMode() मोनेरिस लेनदेन के लिए वातावरण निर्दिष्ट करता है। इस उदाहरण में, "क्यूए" एक परीक्षण वातावरण को संदर्भित करता है जिसमें आप वास्तविक भुगतान संसाधित किए बिना सुरक्षित रूप से लेनदेन का अनुकरण कर सकते हैं। वास्तव में कार्डों को चार्ज किए बिना एकीकरण का परीक्षण करने के लिए यह आवश्यक है।
setCheckoutDiv() यह कमांड मोनेरिस चेकआउट को एक निर्दिष्ट HTML कंटेनर (div) के साथ जोड़ता है। आईडी "monerisCheckout" प्रदान करके, भुगतान विजेट इस div के भीतर प्रदर्शित किया जाता है, जिससे आप यह चुन सकते हैं कि फॉर्म पृष्ठ पर कहां दिखाई देता है।
setCallback() चेकआउट प्रक्रिया के दौरान, किसी विशिष्ट ईवेंट के लिए एक फ़ंक्शन असाइन करें। इस परिदृश्य में, कस्टम फ़ंक्शन "myPageLoad" इवेंट "पेज_लोडेड" को संभालता है, जिससे डेवलपर्स को चेकआउट पेज पूरी तरह से लोड होने पर कोड चलाने की अनुमति मिलती है।
startCheckout() मोनेरिस चेकआउट प्रक्रिया शुरू करें। जब कॉल किया जाता है, तो यह फ़ंक्शन भुगतान फॉर्म प्रस्तुत करके और लेनदेन को संसाधित करने के लिए इसे बैकएंड सिस्टम से जोड़कर भुगतान प्रवाह शुरू करता है।
app.post() यह एक Express.js रूट हैंडलर है जो POST अनुरोधों को संभालता है। लेन-देन समाप्त होने के बाद यह स्क्रिप्ट मोनेरिस बैकएंड से भुगतान रसीद प्राप्त करती है, जो अतिरिक्त प्रसंस्करण जैसे भुगतान डेटा को संरक्षित करने या पुष्टिकरण जारी करने की अनुमति देती है।
bodyParser.json() आने वाले JSON अनुरोधों को पार्स करने के लिए एक्सप्रेस में एक मिडलवेयर फ़ंक्शन। इस मामले में यह विशेष रूप से महत्वपूर्ण है क्योंकि मोनेरिस लेनदेन डेटा को JSON प्रारूप में प्रसारित करता है। यह कमांड गारंटी देता है कि अनुरोध निकाय को सर्वर-साइड प्रोसेसिंग के लिए सही ढंग से संसाधित किया गया है।
chai.request() यह कमांड चाय HTTP परीक्षण पैकेज का हिस्सा है जो परीक्षण मामलों के भीतर HTTP अनुरोध भेजता है। यह यूनिट परीक्षण के दौरान मोनेरिस भुगतान एपीआई के लिए POST अनुरोधों की नकल करता है, जिससे डेवलपर को यह देखने की अनुमति मिलती है कि बैकएंड सफल और असफल लेनदेन को कैसे संभालता है।
expect() चाई लाइब्रेरी में एक मुख्य अभिकथन समारोह। इकाई परीक्षणों के संदर्भ में, यह निर्धारित करता है कि विशेष शर्तें संतुष्ट हैं या नहीं। इसका उपयोग यह सुनिश्चित करने के लिए किया जाता है कि भुगतान समापन बिंदु द्वारा लौटाई गई प्रतिक्रिया स्थिति और संदेश इच्छित परिणामों से मेल खाते हैं।

मोनेरिस चेकआउट एकीकरण और स्क्रिप्ट वर्कफ़्लो को समझना

फ्रंट-एंड स्क्रिप्ट में मोनेरिस चेकआउट सिस्टम को जावास्क्रिप्ट के माध्यम से एक वेबसाइट में एकीकृत किया गया है। प्राथमिक कार्यक्षमता मोनेरिस चेकआउट का एक उदाहरण स्थापित करने के साथ शुरू होती है मोनेरिसचेकआउट() निर्माता. यह उदाहरण आपकी वेबसाइट और मोनेरिस की भुगतान प्रसंस्करण सेवा के बीच एक इंटरफ़ेस के रूप में कार्य करता है। आदेश सेटमोड() निर्दिष्ट करता है कि क्या पर्यावरण को परीक्षण के लिए "क्यूए" या उत्पादन के लिए "लाइव" पर सेट किया जाना चाहिए, जो विकास चरणों के दौरान महत्वपूर्ण है। "क्यूए" का चयन करके, डेवलपर्स वास्तविक दुनिया की लागतों के बिना लेनदेन को दोहरा सकते हैं, एक सुरक्षित परीक्षण मैदान बना सकते हैं।

एक बार चेकआउट उदाहरण बन जाने के बाद, सेटचेकआउटडिव() कमांड मोनेरिस चेकआउट फॉर्म को एक विशिष्ट HTML div से जोड़ता है। यहीं पर पेज पर भुगतान फॉर्म दिखाई देगा। यह गारंटी देता है कि भुगतान फॉर्म का दृश्य चित्रण वेबसाइट के एक विशिष्ट क्षेत्र में दिखाई देता है, जिससे प्रक्रिया निर्बाध हो जाती है और आपके मौजूदा डिज़ाइन में एकीकृत हो जाती है। हमारे उदाहरण में, मोनेरिस फॉर्म को "monerisCheckout" आईडी के साथ div में डाला गया है। यह डिव मोनेरिस की गतिशील रूप से लोड की गई सामग्री के लिए प्लेसहोल्डर के रूप में कार्य करता है, जिसमें क्लाइंट भुगतान इनपुट फ़ील्ड और बटन शामिल हैं।

स्क्रिप्ट तब निष्पादित होती है सेटकॉलबैक(), डेवलपर को चेकआउट प्रक्रिया के लिए विशिष्ट ईवेंट हैंडलिंग को कॉन्फ़िगर करने की अनुमति देता है। विशेष रूप से, "पेज_लोडेड" के लिए कॉलबैक फ़ंक्शन से जुड़ा हुआ है मेरा पेज लोड, यह गारंटी देते हुए कि जब पृष्ठ पूरी तरह से लोड हो जाता है, तो अतिरिक्त कस्टम क्रियाएं (जैसे लॉगिंग डेटा) हो सकती हैं। यह फ़ंक्शन उपयोगकर्ता अनुभव को प्रबंधित करने के तरीके में लचीलेपन की अनुमति देता है। की सामग्री को लॉग करना पूर्व भीतर वस्तु मायपेजलोड() मोनेरिस द्वारा लौटाए गए डेटा पर वास्तविक समय पर प्रतिक्रिया प्रदान करके डिबगिंग में डेवलपर्स की सहायता करता है।

अंत में, बैक-एंड स्क्रिप्ट भुगतान डेटा की सर्वर-साइड रसीद को संभालती है। का उपयोग करते हुए एक्सप्रेस.जे.एस Node.js में, मार्ग ऐप.पोस्ट() लेन-देन पूरा होने के बाद मोनेरिस से POST अनुरोध प्राप्त करने के लिए परिभाषित किया गया है। यह समापन बिंदु लौटाए गए JSON को संसाधित करता है, जाँच करता है प्रतिसाद कोड यह देखने के लिए कि भुगतान सफल हुआ या नहीं। सफल होने पर, लेनदेन डेटा (जैसे टिकट नंबर) को लॉग किया जा सकता है या डेटाबेस में दर्ज किया जा सकता है। उपयुक्त स्थिति कोड और संदेश लौटाकर, बैकएंड फ्रंटएंड के साथ सहज कनेक्शन सक्षम बनाता है, जिससे उपयोगकर्ता को महत्वपूर्ण फीडबैक मिलता है, जैसे कि लेनदेन सफल हुआ या विफल।

जावास्क्रिप्ट के साथ मोनेरिस चेकआउट एकीकरण: फ्रंट-एंड और बैक-एंड समाधान

मोनेरिस चेकआउट फॉर्म को शामिल करने और लेनदेन प्रतिक्रियाओं को संभालने के लिए जावास्क्रिप्ट का उपयोग करने वाला फ्रंट-एंड समाधान।

// Front-end integration script
// This script embeds the Moneris checkout and processes the transaction result

<script src="https://gatewayt.moneris.com/chktv2/js/chkt_v2.00.js"></script>
<div id="monerisCheckout"></div>
<script>
var myCheckout = new monerisCheckout();
myCheckout.setMode("qa"); // Set environment to QA
myCheckout.setCheckoutDiv("monerisCheckout"); // Define div for checkout
// Add callback for when the page is fully loaded
myCheckout.setCallback("page_loaded", myPageLoad);
// Start the checkout process
myCheckout.startCheckout("");

// Function that gets triggered when the page is loaded
function myPageLoad(ex) {
    console.log("Checkout page loaded", ex);
}

// Function to handle the receipt after the payment
function myPaymentReceipt(ex) {
    if(ex.response_code === '00') {
        alert("Transaction Successful: " + ex.ticket);
    } else {
        alert("Transaction Failed: " + ex.message);
    }
}
</script>

Node.js और Express के साथ बैक-एंड समाधान: भुगतान डेटा को संभालना

मोनेरिस के भुगतान के बाद के डेटा को प्रबंधित करने के लिए Node.js और Express का उपयोग करने वाला बैक-एंड समाधान

// Node.js backend script for processing payment receipt data
// This backend handles the response from Moneris and processes it for database storage

const express = require('express');
const bodyParser = require('body-parser');

const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));

// Endpoint to receive the payment result
app.post('/payment-receipt', (req, res) => {
    const paymentData = req.body;

    if (paymentData.response_code === '00') {
        console.log('Payment successful:', paymentData.ticket);
        // Insert into database or further process the payment
        res.status(200).send('Payment success');
    } else {
        console.error('Payment failed:', paymentData.message);
        res.status(400).send('Payment failed');
    }
});

app.listen(3000, () => {
    console.log('Server running on port 3000');
});

मोचा और चाय के साथ बैकएंड भुगतान प्रबंधन का परीक्षण इकाई

मनी हैंडलिंग कार्यक्षमता को मान्य करने के लिए मोचा और चाय के साथ बैकएंड यूनिट परीक्षण

// Unit test for the Node.js backend using Mocha and Chai
// This test checks if the backend properly handles successful and failed transactions

const chai = require('chai');
const chaiHttp = require('chai-http');
const app = require('../app'); 
const expect = chai.expect;
chai.use(chaiHttp);

describe('POST /payment-receipt', () => {
    it('should return 200 for successful payment', (done) => {
        chai.request(app)
            .post('/payment-receipt')
            .send({ response_code: '00', ticket: '123456' })
            .end((err, res) => {
                expect(res).to.have.status(200);
                expect(res.text).to.equal('Payment success');
                done();
            });
    });

    it('should return 400 for failed payment', (done) => {
        chai.request(app)
            .post('/payment-receipt')
            .send({ response_code: '01', message: 'Transaction Declined' })
            .end((err, res) => {
                expect(res).to.have.status(400);
                expect(res.text).to.equal('Payment failed');
                done();
            });
    });
});

अनुकूलन विकल्पों के साथ मोनेरिस चेकआउट एकीकरण को बढ़ाना

मोनेरिस चेकआउट एकीकरण के साथ काम करते समय, डेवलपर्स अक्सर उपयोगकर्ता अनुभव को बेहतर बनाने के लिए चेकआउट प्रक्रिया को निजीकृत करने के तरीकों की तलाश करते हैं। चेकआउट फॉर्म यूआई घटक अनुकूलित किया जा सकता है, जो एक कम-ज्ञात फ़ंक्शन है। मोनेरिस व्यवसायों को चेकआउट पृष्ठ की उपस्थिति और लेआउट को अनुकूलित करने की अनुमति देता है, जिससे वे इसे अपनी ब्रांडिंग के साथ संरेखित कर सकते हैं। इसमें अंतिम उपयोगकर्ताओं के लिए प्रक्रिया को आसान बनाने और रूपांतरण बढ़ाने के लिए बटन लेआउट, फॉर्म फ़ील्ड और यहां तक ​​कि शब्दों को संशोधित करना शामिल है।

जांच करने का एक अन्य कारक बुनियादी भुगतानों के अलावा अन्य प्रकार के लेनदेन का उपयोग है। मोनेरिस में पूर्व-प्राधिकरण जैसी क्षमताएं हैं, जिसमें लेनदेन राशि कार्ड पर संग्रहीत की जाती है लेकिन तुरंत चार्ज नहीं किया जाता है। यह कार्यक्षमता होटल और ऑटोमोबाइल किराये जैसे क्षेत्रों में विशेष रूप से महत्वपूर्ण है, जहां अंतिम दरें भिन्न हो सकती हैं। एकीकरण इसका उपयोग करके कई लेनदेन प्रकारों को संभाल सकता है एपीआई, जो इसे विभिन्न उपयोग के मामलों के लिए बहुमुखी बनाता है।

किसी भी भुगतान एकीकरण में सुरक्षा सर्वोच्च प्राथमिकता है, और मोनेरिस चेकआउट में टोकनाइजेशन और धोखाधड़ी की रोकथाम जैसी तकनीकों को शामिल किया गया है। टोकनाइजेशन संवेदनशील कार्ड की जानकारी को टोकन से बदल देता है, इसलिए उपभोक्ता डेटा आपके सिस्टम पर कभी भी उजागर नहीं होता है। धोखाधड़ी का पता लगाने वाली प्रौद्योगिकियों और पीसीआई डीएसएस अनुपालन जैसे सुरक्षा उपायों को लागू करने से ऑनलाइन लेनदेन से जुड़े जोखिमों को नाटकीय रूप से कम किया जा सकता है।

मोनेरिस चेकआउट एकीकरण के बारे में सामान्य प्रश्न

  1. मोनेरिस चेकआउट क्या है?
  2. मोनेरिस चेकआउट एक भुगतान गेटवे समाधान है जो व्यवसायों को अपनी वेबसाइट के माध्यम से सुरक्षित रूप से भुगतान स्वीकार करने में सक्षम बनाता है। यह अनुकूलन योग्य चेकआउट फॉर्म प्रदान करता है और विभिन्न प्रकार के भुगतान तरीकों को स्वीकार करता है।
  3. मैं मोनेरिस चेकआउट फॉर्म को कैसे अनुकूलित कर सकता हूं?
  4. मोनेरिस एपीआई आपको बटन और इनपुट फ़ील्ड जैसे तत्वों को बदलकर चेकआउट फॉर्म के डिज़ाइन को अनुकूलित करने की अनुमति देता है। जैसे कमांड का उपयोग करें setCustomStyle() फॉर्म में अपने ब्रांड की शैली जोड़ने के लिए।
  5. परिवेश को "qa" पर सेट करने का क्या महत्व है?
  6. परिवेश को "qa" पर सेट करना setMode("qa") आपको वास्तविक भुगतान संसाधित किए बिना लेनदेन का सुरक्षित रूप से परीक्षण करने की अनुमति देता है।
  7. मैं पूर्व-प्राधिकरण लेन-देन कैसे संभालूँ?
  8. पूर्व-प्राधिकरण को प्रबंधित करने के लिए, शामिल करें action: "preauth" आपके JSON अनुरोध में तर्क। इससे ग्राहक के कार्ड पर तुरंत शुल्क लगाने के बजाय उस पर रोक लगा दी जाएगी।
  9. मोनेरिस चेकआउट द्वारा प्रदान किए गए सुरक्षा उपाय क्या हैं?
  10. मोनेरिस टोकनाइजेशन का समर्थन करता है, जो संवेदनशील क्रेडिट कार्ड की जानकारी को टोकन से बदल देता है। का अनुपालन PCI DSS यह आश्वासन देता है कि आपका एकीकरण उद्योग सुरक्षा आवश्यकताओं को पूरा करता है।

मोनेरिस चेकआउट एकीकरण पर अंतिम विचार

मोनेरिस चेकआउट को जावास्क्रिप्ट के साथ सफलतापूर्वक एकीकृत करने के लिए, फ्रंट-एंड और बैक-एंड दोनों सेटअपों की सावधानीपूर्वक योजना बनाई जानी चाहिए। उपयोगकर्ताओं के लिए एक अच्छा चेकआउट अनुभव प्रदान करने के लिए यह सुनिश्चित करना आवश्यक है कि लेनदेन विवरण, जैसे टिकट नंबर, उचित रूप से कैप्चर किए गए हैं।

QA परिवेश में परीक्षण करने और अपने भुगतान फ़ॉर्म को उचित रूप से संरचित करने से आपको समस्याओं का शीघ्र पता लगाने में मदद मिलेगी। सही तकनीक के साथ, आप एक निर्बाध और सुरक्षित भुगतान प्रक्रिया बना सकते हैं जो ग्राहकों की खुशी सुनिश्चित करते हुए आपकी कंपनी के लक्ष्यों के अनुरूप हो।

मोनेरिस चेकआउट एकीकरण के लिए संदर्भ और संसाधन
  1. यह आलेख मोनेरिस चेकआउट इंटीग्रेशन दस्तावेज़ और एपीआई संदर्भ पर आधारित है। अधिक विस्तृत जानकारी के लिए, आधिकारिक मोनेरिस गिटहब रिपॉजिटरी पर जाएँ: मोनेरिस चेकआउट गिटहब .
  2. जावास्क्रिप्ट-आधारित भुगतान एकीकरण स्थापित करने पर अतिरिक्त मार्गदर्शन मोनेरिस डेवलपर पोर्टल पर पाया जा सकता है: मोनेरिस डेवलपर पोर्टल .
  3. JSON कॉल को संभालने और लेनदेन प्रतिक्रियाओं को कैप्चर करने की सर्वोत्तम प्रथाओं के लिए, जावास्क्रिप्ट SDK दस्तावेज़ देखें: मोनेरिस जावास्क्रिप्ट एसडीके .