मोनेरिस चेकआउटचे अखंड एकत्रीकरण: JSON प्रतिसाद समस्यानिवारण
मोनेरिस चेकआउट ही सामान्यतः वापरली जाणारी पेमेंट गेटवे प्रणाली आहे जी व्यवसायांना ऑनलाइन व्यवहार जलद करण्यास मदत करते. तथापि, ते तुमच्या वेबसाइटमध्ये समाकलित करणे कठीण असू शकते, विशेषत: जेव्हा आवश्यक डेटा, जसे की तिकीट क्रमांक, JSON कॉलमधून परत केला जात नाही. अशा चुका व्यवहारांच्या नियमित प्रवाहात अडथळा आणू शकतात, म्हणून डीबगिंग हे अभियंत्यांसाठी आवश्यक कौशल्य आहे.
कालबाह्य होस्ट केलेले पेमेंट पृष्ठ (HPP) मोनेरिससह बदलताना आणि त्यांचा JavaScript इंटरफेस वापरताना चेकआउट योग्यरित्या कसे कॉन्फिगर करावे हे समजून घेणे महत्वाचे आहे. तुमच्या क्लायंटला अखंड अनुभव देण्यासाठी, पेज व्यवहाराचे तपशील पोस्ट करते आणि अचूक प्रतिसाद मिळवते याची खात्री करा.
अनेक विकसकांना मोनेरिसच्या एकत्रीकरण दस्तऐवजीकरणाचे अनुसरण करण्यास त्रास होतो. कॉलबॅक हाताळणे, व्यवहार डेटा अपलोड करणे आणि रिअल टाइममध्ये परिणाम वाचणे यापासून गुंतागुंतीची आहे, या सर्व गोष्टी यशस्वी एकीकरणासाठी आवश्यक आहेत. तुम्ही तुमच्या एकत्रीकरणाचा प्रवास सुरू केल्यावर, स्पष्ट आणि सु-दस्तलेखन पद्धती असणे फायद्याचे ठरू शकते.
या पोस्टमध्ये, आम्ही तुमच्या मोनेरिस एकत्रीकरणामध्ये तिकीट क्रमांक हरवण्याच्या समस्येचे निराकरण कसे करावे ते पाहू. जर तुम्ही आवश्यक कोड स्निपेट्स आणि समस्यानिवारण तंत्रांचे पुनरावलोकन केले तर तुम्ही या समस्येला सामोरे जाण्यासाठी अधिक चांगले तयार व्हाल.
आज्ञा | वापराचे उदाहरण |
---|---|
monerisCheckout() | हे मोनेरिस JavaScript SDK चे कन्स्ट्रक्टर फंक्शन आहे. हे चेकआउट प्रक्रिया सुरू करते. ही स्क्रिप्ट मोनेरिस चेकआउट विजेटचे एक नवीन उदाहरण व्युत्पन्न करते, जे तुम्हाला तुमच्या वेबसाइटवर पेमेंट गेटवे एम्बेड करण्याची परवानगी देते. |
setMode() | मोनेरिस व्यवहारासाठी वातावरण निर्दिष्ट करते. या उदाहरणात, "qa" चाचणी वातावरणाचा संदर्भ देते ज्यामध्ये तुम्ही वास्तविक देयकांवर प्रक्रिया न करता सुरक्षितपणे व्यवहारांचे अनुकरण करू शकता. प्रत्यक्षात कार्ड चार्ज न करता एकत्रीकरणाची चाचणी घेण्यासाठी हे आवश्यक आहे. |
setCheckoutDiv() | ही कमांड मोनेरिस चेकआउटला निर्दिष्ट HTML कंटेनर (div) सह संबद्ध करते. "monerisCheckout" आयडी पुरवून, पेमेंट विजेट या div मध्ये प्रदर्शित केले जाते, जे तुम्हाला पृष्ठावर फॉर्म कुठे दिसेल ते निवडण्याची परवानगी देते. |
setCallback() | चेकआउट प्रक्रियेदरम्यान, विशिष्ट कार्यक्रमासाठी कार्य नियुक्त करा. या परिस्थितीत, सानुकूल फंक्शन "myPageLoad" इव्हेंट "page_loaded" हाताळते, चेकआउट पृष्ठ पूर्णपणे लोड झाल्यावर विकासकांना कोड चालवण्याची अनुमती देते. |
startCheckout() | मोनेरिस चेकआउट प्रक्रिया सुरू करा. कॉल केल्यावर, हे फंक्शन पेमेंट फॉर्म प्रस्तुत करून आणि व्यवहारांवर प्रक्रिया करण्यासाठी बॅकएंड सिस्टमशी कनेक्ट करून पेमेंट प्रवाह सुरू करते. |
app.post() | हा एक Express.js मार्ग हँडलर आहे जो POST विनंत्या हाताळतो. व्यवहार पूर्ण झाल्यानंतर या स्क्रिप्टला मोनेरिस बॅकएंडकडून पेमेंट पावत्या प्राप्त होतात, जे पेमेंट डेटा संरक्षित करणे किंवा पुष्टीकरण जारी करणे यासारख्या अतिरिक्त प्रक्रियेस अनुमती देते. |
bodyParser.json() | येणाऱ्या JSON विनंत्या पार्स करण्यासाठी एक्सप्रेस मधील मिडलवेअर फंक्शन. या प्रकरणात हे विशेषतः गंभीर आहे कारण मोनेरिस JSON फॉरमॅटमध्ये व्यवहार डेटा प्रसारित करते. हा आदेश हमी देतो की सर्व्हर-साइड प्रक्रियेसाठी विनंती मुख्य भाग योग्यरित्या प्रक्रिया केली गेली आहे. |
chai.request() | हा आदेश Chai HTTP चाचणी पॅकेजचा भाग आहे जो चाचणी प्रकरणांमध्ये HTTP विनंत्या पाठवतो. हे युनिट चाचणी दरम्यान मोनेरिस पेमेंट API वर POST विनंत्या प्रतिकृती बनवते, ज्यामुळे विकासकाला बॅकएंड यशस्वी आणि अयशस्वी व्यवहार कसे हाताळते हे पाहण्याची परवानगी देते. |
expect() | चाय लायब्ररीतील मुख्य प्रतिपादन कार्य. युनिट चाचण्यांच्या संदर्भात, विशिष्ट अटी पूर्ण झाल्या आहेत की नाही हे ते ठरवते. हे सुनिश्चित करण्यासाठी वापरले जाते की पेमेंट एंडपॉइंटद्वारे परत आलेला प्रतिसाद स्थिती आणि संदेश इच्छित परिणामांशी जुळतात. |
मोनेरिस चेकआउट एकत्रीकरण आणि स्क्रिप्ट वर्कफ्लो समजून घेणे
समाविष्ट असलेली फ्रंट-एंड स्क्रिप्ट मोनेरिस चेकआउट सिस्टमला JavaScript द्वारे वेबसाइटमध्ये समाकलित करते. प्राथमिक कार्यक्षमता द्वारे मोनेरिस चेकआउटचे उदाहरण स्थापित करण्यापासून सुरू होते monerisCheckout() बांधकाम करणारा हे उदाहरण तुमची वेबसाइट आणि मोनेरिसच्या पेमेंट प्रोसेसिंग सेवेमधील इंटरफेस म्हणून काम करते. आज्ञा सेटमोड() पर्यावरण चाचणीसाठी "qa" किंवा उत्पादनासाठी "लाइव्ह" वर सेट केले जावे की नाही हे निर्दिष्ट करते, जे विकासाच्या टप्प्यात गंभीर आहे. "qa" निवडून विकसक एक सुरक्षित चाचणी ग्राउंड तयार करून, वास्तविक-जागतिक खर्च न घेता व्यवहारांची प्रतिकृती बनवू शकतात.
चेकआउट उदाहरण तयार झाल्यानंतर, setCheckoutDiv() कमांड मोनेरिस चेकआउट फॉर्मला विशिष्ट HTML div शी जोडते. या ठिकाणी पेमेंट फॉर्म पृष्ठावर दिसेल. हे हमी देते की पेमेंट फॉर्मचे व्हिज्युअल चित्रण वेबसाइटच्या विशिष्ट क्षेत्रामध्ये दिसून येते, प्रक्रिया अखंड आणि तुमच्या विद्यमान डिझाइनमध्ये समाकलित करते. आमच्या उदाहरणात, मोनेरिस फॉर्म div मध्ये "monerisCheckout" आयडीसह घातला आहे. हा div मोनेरिसच्या डायनॅमिकली लोड केलेल्या सामग्रीसाठी प्लेसहोल्डर म्हणून काम करतो, ज्यामध्ये क्लायंट पेमेंट इनपुट फील्ड आणि बटणे समाविष्ट असतात.
स्क्रिप्ट नंतर कार्यान्वित होते सेटकॉलबॅक(), चेकआउट प्रक्रियेसाठी डेव्हलपरला विशिष्ट इव्हेंट हाताळणी कॉन्फिगर करण्याची अनुमती देते. विशेषतः, "page_loaded" साठी कॉलबॅक फंक्शनशी संलग्न आहे myPageLoad, हमी देतो की जेव्हा पृष्ठ पूर्णपणे लोड केले जाते, तेव्हा अतिरिक्त सानुकूल क्रिया (जसे की लॉगिंग डेटा) होऊ शकतात. हे कार्य वापरकर्त्याचा अनुभव कसा हाताळला जातो त्यामध्ये लवचिकता आणण्यास अनुमती देते. च्या सामग्रीचे लॉगिंग उदा आत ऑब्जेक्ट myPageLoad() मोनेरिस रिटर्न्स डेटावर रिअल-टाइम फीडबॅक देऊन विकासकांना डीबगिंगमध्ये मदत करते.
शेवटी, बॅक-एंड स्क्रिप्ट पेमेंट डेटाची सर्व्हर-साइड पावती हाताळते. वापरत आहे Express.js Node.js मध्ये, मार्ग app.post() एकदा व्यवहार पूर्ण झाल्यानंतर मोनेरिसकडून POST विनंत्या प्राप्त करण्यासाठी परिभाषित केले जाते. हा एंडपॉईंट परत आलेल्या JSON वर प्रक्रिया करतो, तपासतो प्रतिसाद_कोड पेमेंट यशस्वी झाले की नाही हे पाहण्यासाठी. यशस्वी झाल्यास, व्यवहार डेटा (जसे की तिकीट क्रमांक) लॉग इन केला जाऊ शकतो किंवा डेटाबेसमध्ये प्रविष्ट केला जाऊ शकतो. योग्य स्टेटस कोड आणि संदेश परत करून, बॅकएंड फ्रंटएंडसह गुळगुळीत कनेक्शन सक्षम करते, वापरकर्त्याला गंभीर अभिप्राय प्रदान करते, जसे की व्यवहार यशस्वी झाला की अयशस्वी.
जावास्क्रिप्टसह मोनेरिस चेकआउट एकत्रीकरण: फ्रंट-एंड आणि बॅक-एंड सोल्यूशन्स
मोनेरिस चेकआउट फॉर्म समाविष्ट करण्यासाठी आणि व्यवहार प्रतिसाद हाताळण्यासाठी JavaScript चा वापर करून फ्रंट-एंड सोल्यूशन.
// 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 आणि एक्सप्रेससह बॅक-एंड सोल्यूशन: पेमेंट डेटा हाताळणे
मोनेरिसचा पोस्ट-पेमेंट डेटा व्यवस्थापित करण्यासाठी Node.js आणि Express चा वापर करून बॅक-एंड सोल्यूशन
१
मोचा आणि चाय सह बॅकएंड पेमेंट हाताळणीची चाचणी करणे
पैसे हाताळण्याची कार्यक्षमता प्रमाणित करण्यासाठी मोचा आणि चाय सह बॅकएंड युनिट चाचणी
// 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();
});
});
});
सानुकूलित पर्यायांसह मोनेरिस चेकआउट एकत्रीकरण वाढवणे
मोनेरिस चेकआउट एकत्रीकरणासह कार्य करताना, विकासक वापरकर्ता अनुभव सुधारण्यासाठी चेकआउट प्रक्रिया वैयक्तिकृत करण्यासाठी वारंवार पद्धती शोधतात. चेकआउट फॉर्म UI घटक सानुकूलित केले जाऊ शकते, जे कमी ज्ञात कार्य आहे. मोनेरिस व्यवसायांना चेकआउट पृष्ठाचे स्वरूप आणि लेआउट सानुकूलित करण्यास अनुमती देते, त्यांना त्यांच्या ब्रँडिंगसह संरेखित करण्यास अनुमती देते. यात शेवटच्या वापरकर्त्यांसाठी प्रक्रिया सुलभ करण्यासाठी आणि रूपांतरणे वाढवण्यासाठी बटण लेआउट, फॉर्म फील्ड आणि शब्दरचना देखील बदलणे समाविष्ट आहे.
तपासण्यासाठी आणखी एक घटक म्हणजे मूलभूत देयकांव्यतिरिक्त इतर प्रकारच्या व्यवहारांचा वापर. मोनेरिसकडे पूर्व-अधिकृतीकरण सारख्या क्षमता आहेत, ज्यामध्ये व्यवहाराची रक्कम कार्डवर साठवली जाते परंतु लगेच शुल्क आकारले जात नाही. ही कार्यक्षमता विशेषतः हॉटेल्स आणि ऑटोमोबाईल भाड्याने देण्यासारख्या क्षेत्रांमध्ये महत्त्वाची आहे, जेथे अंतिम दर भिन्न असू शकतात. एकीकरण समान वापरून अनेक व्यवहार प्रकार हाताळू शकते API, विविध वापर प्रकरणांसाठी ते बहुमुखी बनवते.
कोणत्याही पेमेंट इंटिग्रेशनमध्ये सुरक्षितता ही सर्वोच्च प्राथमिकता असते आणि मोनेरिस चेकआउट टोकनायझेशन आणि फसवणूक प्रतिबंध यासारख्या तंत्रज्ञानाचा समावेश करते. टोकनायझेशन संवेदनशील कार्ड माहितीला टोकनसह बदलते, त्यामुळे तुमच्या सिस्टमवर ग्राहक डेटा कधीही उघड होत नाही. फसवणूक शोध तंत्रज्ञान आणि PCI DSS अनुपालन यासारख्या सुरक्षा उपायांची अंमलबजावणी करणे, ऑनलाइन व्यवहारांशी संबंधित जोखीम नाटकीयरित्या कमी करू शकतात.
मोनेरिस चेकआउट एकत्रीकरणाबद्दल सामान्य प्रश्न
- मोनेरिस चेकआउट म्हणजे काय?
- मोनेरिस चेकआउट हे पेमेंट गेटवे सोल्यूशन आहे जे व्यवसायांना त्यांच्या वेबसाइटद्वारे सुरक्षितपणे पेमेंट स्वीकारण्यास सक्षम करते. हे सानुकूल करण्यायोग्य चेकआउट फॉर्म प्रदान करते आणि विविध पेमेंट मार्ग स्वीकारते.
- मी मोनेरिस चेकआउट फॉर्म कसा सानुकूलित करू शकतो?
- Moneris API तुम्हाला बटणे आणि इनपुट फील्ड सारखे घटक बदलून चेकआउट फॉर्मचे डिझाइन कस्टमाइझ करण्याची परवानगी देते. सारख्या आज्ञा वापरा setCustomStyle() फॉर्ममध्ये तुमच्या ब्रँडची शैली जोडण्यासाठी.
- वातावरण "qa" वर सेट करण्याचे महत्त्व काय आहे?
- सह वातावरण "qa" वर सेट करत आहे १ वास्तविक देयकांवर प्रक्रिया न करता तुम्हाला सुरक्षितपणे व्यवहारांची चाचणी घेण्यास अनुमती देते.
- मी पूर्व-अधिकृतीकरण व्यवहार कसे हाताळू?
- पूर्व-अधिकृतीकरण व्यवस्थापित करण्यासाठी, समाविष्ट करा action: "preauth" तुमच्या JSON विनंतीमध्ये युक्तिवाद. यामुळे ग्राहकाच्या कार्डावर तात्काळ शुल्क आकारण्याऐवजी त्यावर होल्ड राहील.
- मोनेरिस चेकआउटद्वारे प्रदान केलेले सुरक्षा उपाय काय आहेत?
- मोनेरिस टोकनायझेशनला समर्थन देते, जे संवेदनशील क्रेडिट कार्ड माहिती टोकनसह बदलते. सह अनुपालन PCI DSS तुमचे एकत्रीकरण उद्योग सुरक्षा आवश्यकता पूर्ण करते याची खात्री देते.
मोनेरिस चेकआउट एकत्रीकरणावर अंतिम विचार
मोनेरिस चेकआउटला JavaScript सह यशस्वीरित्या एकत्रित करण्यासाठी, फ्रंट-एंड आणि बॅक-एंड दोन्ही सेटअप काळजीपूर्वक नियोजित केले पाहिजेत. वापरकर्त्यांना चेकआउटचा चांगला अनुभव देण्यासाठी तिकीट क्रमांकासारखे व्यवहार तपशील योग्यरित्या कॅप्चर केले आहेत याची खात्री करणे आवश्यक आहे.
QA वातावरणात चाचणी करणे आणि तुमच्या पेमेंट फॉर्मची योग्य रचना केल्याने तुम्हाला समस्या लवकर ओळखण्यात मदत होईल. योग्य तंत्राने, तुम्ही क्लायंटच्या आनंदाची खात्री देताना तुमच्या कंपनीच्या उद्दिष्टांना अनुरूप अशी अखंड आणि सुरक्षित पेमेंट प्रक्रिया तयार करू शकता.
मोनेरिस चेकआउट एकत्रीकरणासाठी संदर्भ आणि संसाधने
- हा लेख मोनेरिस चेकआउट इंटिग्रेशन दस्तऐवजीकरण आणि API संदर्भावर आधारित आहे. अधिक तपशीलवार माहितीसाठी, अधिकृत मोनेरिस गिटहब रेपॉजिटरीला भेट द्या: मोनेरिस चेकआउट गिटहब .
- जावास्क्रिप्ट-आधारित पेमेंट इंटिग्रेशन सेट करण्यासाठी अतिरिक्त मार्गदर्शन मोनेरिस डेव्हलपर पोर्टलवर आढळू शकते: मोनेरिस डेव्हलपर पोर्टल .
- JSON कॉल हाताळण्यासाठी आणि व्यवहार प्रतिसाद कॅप्चर करण्याच्या सर्वोत्तम पद्धतींसाठी, JavaScript SDK दस्तऐवजीकरण पहा: मोनेरिस JavaScript SDK .