বিকাশ পেমেন্ট গেটওয়ে ইন্টিগ্রেশন: Node.js এবং Express.js ব্যবহার করে সহজেই ইকমার্সের SSLCommerz সাথে সংযোগ স্থাপন করুন
Tags: bangla, webdev, javascript, node
Published: 2023-06-11 11:55:13

হ্যাঁ, কেউ Node.js এবং Express.js ব্যবহার করে বিকাশ পেমেন্ট গেটওয়ে ইন্টিগ্রেট করেছেন এবং SSLCommerz এর সাথে যোগাযোগ স্থাপন করেছেন। নিম্নলিখিত ধাপগুলি অনুসরণ করে আপনি বিকাশ পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করতে পারেন:

ধাপ 1: অ্যাকাউন্ট তৈরি করুন
প্রথমে আপনাকে SSLCommerz এর ওয়েবসাইটে যেতে হবে এবং নিবন্ধন করে একটি অ্যাকাউন্ট তৈরি করতে হবে। পরিচালক প্যানেলে লগইন করে API Credentials (এপিআই ক্রেডেনশিয়াল) পেতে পারেন। এখানে আপনি সেটিংস কনফিগার করতে পারেন এবং পেমেন্ট গেটওয়ে এপিআই চালু করতে পারেন।

ধাপ 2: নোড.জেএস এবং এক্সপ্রেস ইন্টিগ্রেশন
প্রথমে নোড.জেএস এবং এক্সপ্রেস ইন্সটল করুন আপনার প্রকল্পে। আপনি টার্মিনাল বা কমান্ড প্রম্পটে নিম্নলিখিত কমান্ড ব্যবহার করে ইনস্টল করতে পারেন:

```
npm install express


npm install axios
```

ধাপ 3: রাউট কনফিগার করুন
নিম্নলিখিত কোডটি ব্যবহার করে আপনি রাউট কনফিগার করতে পারেন আপনার Express.js এপ্লিকেশনে:

```javascript
const express = require('express');
const axios = require('axios');

const router = express.Router();

// বিকাশ পেমেন্ট পেজে রিডাইরেক্ট করার রাউট
router.get('/bkash', async (req, res) => {
  try {
    const response = await axios.post('https://sandbox.sslcommerz.com/gwprocess/v4/api.php', {
      store_id: 'your_store_id', // আপনার স্টোর আইডি সংযুক্ত করুন
      store_passwd: 'your_store_password', // আপনার স্টোর পাসওয়ার্ড সংযুক্ত করুন
      total_amount: '100.00', // পেমেন্টের মূল্য সংযুক্ত করুন
      currency: 'BDT', // মুদ্রা সংযুক্ত করুন
      tran_id: 'TRAN_ID_' + Math.floor(Math.random() * 1000000), // ইউনিক ট্রানজেকশন আইডি সংযুক্ত করুন
      success_url: 'http://your_domain.com/success', // সাফল্য কেলে রিডাইরেক্ট হবে যে ঠিকানা সংযুক্ত করুন
      fail_url: 'http://your_domain.com/failure', // ব্যর্থ হলে রিডাইরেক্ট হবে যে ঠিকানা সংযুক্ত করুন
    });

    // রিস্পন্স এর ডাটা চেক করুন এবং সম্প্রতির রিস্পন্স টিউটোরিয়ালগুলি অনুসরণ করুন
    console.log(response.data);

    // রিডাইরেক্ট করুন

 বিকাশ পেমেন্ট পেজে
    res.redirect(response.data.GatewayPageURL);
  } catch (error) {
    console.log(error);
    res.status(500).json({ error: 'পেমেন্ট পেজে রিডাইরেক্ট করতে ব্যর্থ হয়েছে' });
  }
});

module.exports = router;
```

উপরের কোডে আপনাকে সঠিকভাবে আপনার বিকাশ স্টোর আইডি এবং স্টোর পাসওয়ার্ড সংযুক্ত করতে হবে `your_store_id` এবং `your_store_password` সংযুক্ত করে দিন। এছাড়াও, সাফল্য এবং ব্যর্থতার ঠিকানা সংযুক্ত করুন `http://your_domain.com/success` এবং `http://your_domain.com/failure` সম্পর্কে। এটি ব্যবহারকারীকে সফল বা ব্যর্থ পেমেন্টের পরে পাঠানো হবে।

ধাপ 4: সার্ভার শুরু করুন
নোড.জেএস সার্ভার চালানোর জন্য নিম্নলিখিত কোডটি ব্যবহার করুন:

```javascript
const express = require('express');
const app = express();

const paymentRoutes = require('./routes/payment');
app.use('/', paymentRoutes);

const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
  console.log(`Server started on port ${PORT}`);
});
```

উপরের কোডে, আপনাকে সঠিকভাবে রাউট ফাইলটি প্রয়োগ করতে হবে `'./routes/payment'` সংযুক্ত করে দিন। আপনার সার্ভার শুরু করতে `npm start` কমান্ড ব্যবহার করুন।

এখন আপনার এক্সপ্রেস এপ্লিকেশন সার্ভার চালু করার পরে, আপনি `/bkash` রাউট এবং আপনার বিকাশ পেমেন্ট লিংকে পৌঁছে যাবেন। যখন ব্যবহারকারী এই রাউটে অ্যাক্সেস করবেন, তখন আপনি বিকাশ পেমেন্ট পৃষ্ঠায় তাকাবেন। পেমেন্ট সম্পূর্ণ হওয়ার পরে, ব্যবহারকারীকে সাফল বা ব্যর্থতা পাঠানো হবে যাতে তিনি সঠিকভাবে পৃষ্ঠায় রিডাইরেক্ট হতে পারেন।

উপরের উদাহরণ কোডগুলি আপনাকে বিকাশ পেমেন্ট গেটওয়ে ইন্টিগ্রেশনে সহায়তা করবে। সংশ্লিষ্ট বিকাশ ডকুমেন্টেশন চেক করতে এবং আপনার প্রকল্পের প্রয়োজনীয় পরিবর্তনগুলি করতে ভিজিট করুন। আপনি স্পষ্টতই বিকাশ পেমেন্ট গেটওয়ে এবং SSLCommerz API ডকুমেন্টেশন পর্যবেক্ষণ করতে পারেন যাতে আপনি সম্পূর্ণ এবং সঠিক ইন্টিগ্রেশন পাবেন।