Magento Payment Gateway Integration

Web Development - ম্যাজেন্টো ফ্রেমওয়ার্ক (Magento Framework)
86
86

ম্যাজেন্টো ফ্রেমওয়ার্ক (Magento Framework) ই-কমার্স সাইটের জন্য বিভিন্ন পেমেন্ট গেটওয়ে সমর্থন করে, যা গ্রাহকদের জন্য বিভিন্ন পেমেন্ট মেথড যেমন ক্রেডিট/ডেবিট কার্ড, পেপাল, ব্যাংক ট্রান্সফার এবং অন্যান্য পেমেন্ট সিস্টেম ইন্টিগ্রেট করার সুবিধা দেয়। Magento এর পেমেন্ট গেটওয়ে ইন্টিগ্রেশন ব্যবসায়ীদের তাদের সাইটে পেমেন্ট প্রক্রিয়া সহজ এবং নিরাপদ করতে সহায়ক। এখানে আমরা Magento-তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশনের প্রক্রিয়া এবং সেটআপ কিভাবে করবেন তা বিস্তারিতভাবে আলোচনা করব।


Magento তে Payment Gateway Integration

Magento তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন সাধারণত দুটি প্রধান পদ্ধতিতে করা হয়:

  1. অফিশিয়াল পেমেন্ট গেটওয়ে এক্সটেনশন ব্যবহার করা
  2. কাস্টম পেমেন্ট গেটওয়ে ডেভেলপমেন্ট করা

Magento তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন প্রক্রিয়া সোজা কিন্তু আপনার পেমেন্ট সিস্টেমের ধরন এবং সুনির্দিষ্ট প্রয়োজনীয়তার উপর নির্ভর করে কাস্টমাইজেশন প্রয়োজন হতে পারে। সাধারণত, পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করলে আপনি পেমেন্ট প্রসেসিং, ফ্রন্টএন্ড, ব্যাকএন্ড সিস্টেম, এবং নিরাপত্তা সিস্টেম ইন্টিগ্রেট করেন।


১. Magento তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন প্রক্রিয়া

১.১ পেমেন্ট গেটওয়ে এক্সটেনশন ইনস্টল করা

Magento এর জন্য অনেক জনপ্রিয় পেমেন্ট গেটওয়ে এক্সটেনশন উপলব্ধ যেমন PayPal, Stripe, Authorize.Net, Razorpay ইত্যাদি। এক্সটেনশন ইনস্টল করা সহজ এবং এটি Magento এর অ্যাডমিন প্যানেল থেকে পরিচালনা করা যায়।

  1. Magento Marketplace থেকে পেমেন্ট গেটওয়ে এক্সটেনশন ডাউনলোড করুন বা কমান্ড লাইন থেকে Composer ব্যবহার করে ইনস্টল করুন।
  2. Composer কমান্ড ব্যবহার করে এক্সটেনশন ইনস্টল করতে:

    composer require vendor/payment-gateway-extension
    
  3. ইনস্টলেশনের পর, Admin Panel > Stores > Configuration > Sales > Payment Methods থেকে পেমেন্ট গেটওয়ে একটিভেট করুন।

১.২ পেমেন্ট গেটওয়ে কনফিগারেশন

এক্সটেনশন ইনস্টল করার পর, আপনি সেটি কনফিগার করতে পারেন। নিচে একটি সাধারণ কনফিগারেশন উদাহরণ দেওয়া হলো:

  1. Admin Panel > Stores > Configuration > Sales > Payment Methods এ যান।
  2. আপনি যেই পেমেন্ট গেটওয়ে ব্যবহার করতে চান, সেটি নির্বাচন করুন (যেমন PayPal, Stripe, Razorpay ইত্যাদি)।
  3. পেমেন্ট গেটওয়ে এক্সটেনশনের কনফিগারেশন পেজে প্রয়োজনীয় সেটিংস যেমন:
    • API Key
    • Merchant ID
    • Secret Key
    • Sandbox/Live Mode সিলেক্ট করুন।
  4. Save Config বাটনে ক্লিক করুন।

১.৩ পেমেন্ট মেথড এবং শর্তাদি কাস্টমাইজ করা

আপনি পেমেন্ট গেটওয়ে ইনটিগ্রেশনের মাধ্যমে বিভিন্ন পেমেন্ট শর্তাদি কাস্টমাইজ করতে পারেন, যেমন:

  • Enable/Disable Payment Methods: আপনি আপনার সাইটে কোন পেমেন্ট মেথড চালু বা বন্ধ করতে চান তা কনফিগার করতে পারেন।
  • Payment Action: "Sale" বা "Authorization" নির্বাচন করতে পারেন, যা পেমেন্ট প্রক্রিয়া পরিবর্তন করবে।
  • Order Status: পেমেন্ট সফল হলে অর্ডার স্ট্যাটাস কাস্টমাইজ করতে পারেন।

২. Magento তে কাস্টম পেমেন্ট গেটওয়ে ইন্টিগ্রেশন

Magento তে কাস্টম পেমেন্ট গেটওয়ে তৈরি করতে, আপনাকে একটি কাস্টম পেমেন্ট মডিউল তৈরি করতে হবে। এতে আপনি API ব্যবহার করে এবং পেমেন্ট গেটওয়ে ইন্টিগ্রেট করতে পারবেন।

২.১ কাস্টম পেমেন্ট মডিউল তৈরি করা

  1. app/code/[Vendor]/[Module]/ ডিরেক্টরিতে একটি নতুন মডিউল তৈরি করুন।
  2. মডিউল কনফিগারেশন ফাইল তৈরি করুন (module.xml):

    <?xml version="1.0"?>
    <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
        <module name="[Vendor]_[Module]" setup_version="1.0.0"/>
    </config>
    
  3. registration.php ফাইল তৈরি করুন:

    <?php
    \Magento\Framework\Component\ComponentRegistrar::register(
        \Magento\Framework\Component\ComponentRegistrar::MODULE,
        '[Vendor]_[Module]',
        __DIR__
    );
    

২.২ কাস্টম পেমেন্ট মেথড তৈরি করা

Magento তে কাস্টম পেমেন্ট মেথডের জন্য একটি পেমেন্ট মডিউল তৈরি করতে হবে, যেখানে আপনি পেমেন্ট প্রসেসিং এবং API ইন্টিগ্রেশন নির্ধারণ করবেন।

  1. Model এবং Method ক্লাস তৈরি করুন যা পেমেন্ট গেটওয়ের সাথে যোগাযোগ করবে।
  2. Payment Method Model এর জন্য কাস্টম ক্লাস তৈরি করুন যা পেমেন্ট অ্যাকশন এবং কনফিগারেশন নির্ধারণ করবে।
namespace [Vendor]\[Module]\Model;

use Magento\Payment\Model\Method\AbstractMethod;

class CustomPaymentMethod extends AbstractMethod
{
    protected $_code = 'custompaymentmethod'; // Unique identifier for the payment method
}
  1. পেমেন্ট গেটওয়ে ইন্টিগ্রেশন ফাংশনালিটি কাস্টম কোড লিখুন (API কল এবং পেমেন্ট প্রসেসিং)।

২.৩ কাস্টম পেমেন্ট মেথড কনফিগারেশন

আপনার কাস্টম পেমেন্ট মেথডটি কনফিগার করার জন্য আপনাকে system.xml এবং config.xml ফাইল তৈরি করতে হবে, যেখানে পেমেন্ট মেথডের কনফিগারেশন এবং সেটিংস থাকবে।

<system>
    <section id="payment">
        <group id="custompaymentmethod" translate="label">
            <label>Custom Payment Method</label>
            <field id="enabled" translate="label" type="select">
                <label>Enable Custom Payment Method</label>
                <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                <default>1</default>
            </field>
        </group>
    </section>
</system>

৩. Magento Payment Gateway ইন্টিগ্রেশনের নিরাপত্তা

পেমেন্ট গেটওয়ে ইন্টিগ্রেট করার সময় নিরাপত্তা অত্যন্ত গুরুত্বপূর্ণ। কিছু গুরুত্বপূর্ণ নিরাপত্তা বৈশিষ্ট্য:

  1. SSL সুরক্ষা: সব পেমেন্ট গেটওয়ে ইন্টিগ্রেশন SSL (Secure Sockets Layer) সার্টিফিকেটের মাধ্যমে সুরক্ষিত হতে হবে, যাতে গ্রাহকদের পেমেন্ট তথ্য নিরাপদ থাকে।
  2. API Key সুরক্ষা: পেমেন্ট গেটওয়ে API গুলির জন্য সিকিউর API কীগুলি ব্যবহার করুন এবং সেগুলি নিরাপদভাবে স্টোর করুন।
  3. PCI DSS কমপ্লায়েন্স: পেমেন্ট তথ্য সুরক্ষিত রাখার জন্য PCI DSS (Payment Card Industry Data Security Standard) রেগুলেশন মেনে চলতে হবে।

সারাংশ

Magento তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন একটি গুরুত্বপূর্ণ প্রক্রিয়া, যা ব্যবসায়ীদের বিভিন্ন পেমেন্ট গেটওয়ে সমর্থন করে সাইটের পেমেন্ট প্রক্রিয়া সহজ এবং নিরাপদ করতে সহায়ক। Magento তে আপনি অফিসিয়াল এক্সটেনশন বা কাস্টম মডিউল ব্যবহার করে পেমেন্ট গেটওয়ে ইন্টিগ্রেট করতে পারেন। এছাড়াও, নিরাপত্তা ও সুরক্ষা নিশ্চিত করতে SSL, API কীগুলি এবং PCI DSS কমপ্লায়েন্স মেনে চলা অপরিহার্য।

Content added By

Payment Gateway কী এবং কিভাবে কাজ করে?

266
266

Payment Gateway হল একটি প্রযুক্তিগত সিস্টেম যা ই-কমার্স সাইটে পেমেন্ট প্রসেসিং এবং লেনদেন সম্পাদন করতে সাহায্য করে। এটি গ্রাহকের পেমেন্ট তথ্য (যেমন ক্রেডিট বা ডেবিট কার্ড নম্বর, ব্যাংক অ্যাকাউন্টের বিস্তারিত ইত্যাদি) গ্রহণ করে এবং পেমেন্ট প্রসেসরের মাধ্যমে ব্যবসায়ী বা সেবাদাতার অ্যাকাউন্টে তা প্রেরণ করে। ম্যাজেন্টো ফ্রেমওয়ার্কে, পেমেন্ট গেটওয়ে এমন একটি গুরুত্বপূর্ণ উপাদান যা গ্রাহকের লেনদেন সুরক্ষিতভাবে সম্পন্ন করার জন্য ব্যবহৃত হয়।


Payment Gateway কী?

পেমেন্ট গেটওয়ে একটি সফটওয়্যার সিস্টেম যা গ্রাহক এবং ব্যবসায়ী বা সেবাদাতা (Merchant) এর মধ্যে পেমেন্ট সম্পর্কিত সমস্ত তথ্য নিরাপদভাবে ট্রান্সফার করে। এটি একাধিক ধাপে কাজ করে:

  1. গ্রাহক তথ্য গ্রহণ: গ্রাহক যখন পেমেন্ট করতে চেষ্টা করে, তখন পেমেন্ট গেটওয়ে গ্রাহকের কার্ড বা অ্যাকাউন্ট তথ্য গ্রহণ করে।
  2. তথ্য এনক্রিপশন: গ্রাহকের পেমেন্ট তথ্য এনক্রিপ্ট করা হয় যাতে এটি নিরাপদ থাকে।
  3. প্রসেসর ও ব্যাঙ্কের কাছে পাঠানো: এনক্রিপ্ট করা তথ্য পেমেন্ট প্রসেসর বা ব্যাংকে পাঠানো হয়, যেখানে পেমেন্ট নিশ্চিতকরণের জন্য যাচাইকরণ করা হয়।
  4. অথরাইজেশন এবং পেমেন্ট নিশ্চিতকরণ: যদি সমস্ত তথ্য সঠিক হয় এবং ব্যালেন্স যথেষ্ট থাকে, তাহলে পেমেন্ট সফলভাবে অনুমোদিত হয়।
  5. পেমেন্ট সম্পন্ন এবং ফলাফল পাঠানো: শেষমেশ, পেমেন্ট গেটওয়ে গ্রাহক এবং ব্যবসায়ী উভয়কে পেমেন্টের সফল বা ব্যর্থতার ফলাফল জানায়।

Payment Gateway কিভাবে কাজ করে?

পেমেন্ট গেটওয়ে পেমেন্ট প্রক্রিয়াকে সুরক্ষিতভাবে পরিচালনা করতে বিভিন্ন ধাপ অনুসরণ করে:

১. গ্রাহক পেমেন্ট শুরু করে

গ্রাহক যখন তার পেমেন্ট তথ্য প্রদান করে (যেমন ক্রেডিট বা ডেবিট কার্ডের সংখ্যা, মেয়াদ, সিভিভি), তখন এটি পেমেন্ট গেটওয়ের মাধ্যমে পাঠানো হয়।

২. তথ্য এনক্রিপ্ট করা হয়

পেমেন্ট গেটওয়ে পেমেন্ট তথ্য এনক্রিপ্ট করে যাতে এটি নিরাপদ থাকে। এনক্রিপশন প্রক্রিয়ার মাধ্যমে তথ্য সুরক্ষিতভাবে এবং গোপনীয়ভাবে পাঠানো হয়।

৩. তথ্য পেমেন্ট প্রসেসর/ব্যাংকে পাঠানো হয়

এনক্রিপ্ট করা পেমেন্ট তথ্য পেমেন্ট প্রসেসর বা ব্যাঙ্কের কাছে পাঠানো হয়। এখানে পেমেন্ট যাচাইকরণ এবং প্রক্রিয়াকরণ করা হয়।

৪. যাচাইকরণ এবং পেমেন্ট অনুমোদন

ব্যাংক বা পেমেন্ট প্রসেসর গ্রাহকের অ্যাকাউন্টের বিস্তারিত তথ্য যাচাই করে এবং দেখায় যে গ্রাহকের অ্যাকাউন্টে যথেষ্ট অর্থ রয়েছে কিনা। যদি সব কিছু ঠিক থাকে, তবে পেমেন্ট অনুমোদিত হয়।

৫. ফলাফল পাঠানো

পেমেন্ট অনুমোদিত হলে, পেমেন্ট গেটওয়ে গ্রাহক এবং ব্যবসায়ী উভয়কেই একটি সফল পেমেন্টের ফলাফল পাঠায়। যদি পেমেন্ট ব্যর্থ হয়, তাহলে একটি ব্যর্থতার বার্তা পাঠানো হয়।

৬. পেমেন্ট সম্পন্ন এবং সুরক্ষা নিশ্চিত

পেমেন্ট সফল হলে, ব্যবসায়ী সাইটে গ্রাহককে প্রাপ্তি বা অর্ডারের কনফার্মেশন প্রদান করে। এছাড়া, সমস্ত তথ্য সুরক্ষিত থাকে এবং পেমেন্ট সম্পর্কিত সমস্ত ডেটা শারীরিক বা ডিজিটাল উপায়ে সুরক্ষিত থাকে।


Magento তে Payment Gateway কনফিগার করা

Magento ফ্রেমওয়ার্কে পেমেন্ট গেটওয়ে কনফিগার করা অনেক সহজ। এটি আপনাকে বিভিন্ন পেমেন্ট অপশন যেমন PayPal, Authorize.Net, Stripe ইত্যাদি কনফিগার করতে সহায়ক।

১. পেমেন্ট মেথড অ্যাক্টিভেট করা

  1. Admin Panel এ লগইন করুন।
  2. Stores > Configuration > Sales > Payment Methods এ যান।
  3. এখানে আপনি বিভিন্ন পেমেন্ট গেটওয়ে দেখতে পাবেন। প্রতিটি পেমেন্ট গেটওয়ের জন্য প্রয়োজনীয় সেটিংস (যেমন API কী, অ্যাকাউন্ট ডিটেইলস, পেমেন্ট অপশন) পূরণ করতে হবে।
  4. পেমেন্ট গেটওয়ে অ্যাক্টিভ করার জন্য Enable অপশনটি Yes করুন।
  5. Save Config বাটনে ক্লিক করুন।

২. পেমেন্ট গেটওয়ে কনফিগারেশন

পেমেন্ট গেটওয়ের জন্য বিভিন্ন সেটিংস নির্ধারণ করতে হবে, যেমন:

  • Title: পেমেন্ট অপশনটির নাম (যেমন PayPal, Credit Card)।
  • Merchant Account Details: আপনার ব্যবসায়ী অ্যাকাউন্টের তথ্য যেমন API কীগুলি বা ব্যাংক অ্যাকাউন্টের তথ্য।
  • Payment Action: আপনি পেমেন্ট প্রক্রিয়া কিভাবে সম্পন্ন করতে চান (যেমন, অনলাইনে পেমেন্ট, বা পরে পেমেন্ট প্রক্রিয়া)।
  • Payment Order Status: পেমেন্ট সফল হলে অর্ডারের স্থিতি কী হবে তা নির্বাচন করতে হবে (যেমন, Processing, Complete ইত্যাদি)।

৩. পেমেন্ট গেটওয়ে পরীক্ষা এবং লাইভ মোডে স্যুইচ করা

  • Sandbox Mode: পেমেন্ট গেটওয়ে প্রথমে টেস্ট (Sandbox) মোডে সেট আপ করুন। এর মাধ্যমে আপনি বাস্তব পেমেন্ট প্রক্রিয়া চালানোর আগে পরীক্ষা করতে পারবেন।
  • Live Mode: টেস্ট পেমেন্ট সফল হলে, সেটিকে লাইভ মোডে স্যুইচ করুন।

জনপ্রিয় Payment Gateways যা Magento সমর্থন করে

  • PayPal: একটি জনপ্রিয় পেমেন্ট গেটওয়ে, যা অনেক ব্যবসায়ী ব্যবহার করেন।
  • Stripe: অনলাইন পেমেন্ট প্রসেসিং প্ল্যাটফর্ম, যা সহজ এবং নিরাপদ পেমেন্ট প্রক্রিয়া সরবরাহ করে।
  • Authorize.Net: একটি শক্তিশালী পেমেন্ট গেটওয়ে যা ক্রেডিট এবং ডেবিট কার্ডের মাধ্যমে পেমেন্ট গ্রহণ করতে সাহায্য করে।
  • WorldPay: একটি আন্তর্জাতিক পেমেন্ট গেটওয়ে যা বিভিন্ন মুদ্রায় পেমেন্ট গ্রহণ করতে সহায়ক।
  • Razorpay: একটি ভারতীয় পেমেন্ট গেটওয়ে যা দ্রুত এবং সহজ পেমেন্ট গ্রহণের সুযোগ প্রদান করে।

সারাংশ

Payment Gateway হল একটি অত্যন্ত গুরুত্বপূর্ণ উপাদান যা ই-কমার্স সাইটে গ্রাহক এবং ব্যবসায়ী উভয়ের জন্য পেমেন্ট প্রক্রিয়া সম্পন্ন করার জন্য ব্যবহৃত হয়। এটি নিরাপদভাবে পেমেন্ট তথ্য প্রক্রিয়া করে এবং ব্যাঙ্ক বা পেমেন্ট প্রসেসরের মাধ্যমে অর্থ স্থানান্তর নিশ্চিত করে। ম্যাজেন্টো তে পেমেন্ট গেটওয়ে কনফিগার করা সহজ এবং এটি বিভিন্ন পেমেন্ট অপশন সমর্থন করে, যা ব্যবসায়ীদের জন্য একটি কার্যকর পেমেন্ট সিস্টেম তৈরি করতে সাহায্য করে।

Content added By

PayPal, Stripe, এবং অন্যান্য Gateway Integration

91
91

ম্যাজেন্টো ফ্রেমওয়ার্ক (Magento Framework) ই-কমার্স সাইটে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করার জন্য অনেক বিকল্প সরবরাহ করে, যার মধ্যে PayPal, Stripe, এবং অন্যান্য পেমেন্ট গেটওয়ে সবচেয়ে জনপ্রিয়। পেমেন্ট গেটওয়ে ইন্টিগ্রেশন আপনার সাইটে পেমেন্ট প্রসেসিং প্রক্রিয়াকে সহজ এবং নিরাপদ করে তোলে, গ্রাহকদের জন্য একাধিক পেমেন্ট অপশন প্রদান করে। এখানে আমরা Magento তে PayPal, Stripe এবং অন্যান্য পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করার প্রক্রিয়া আলোচনা করব।


১. PayPal Integration in Magento

PayPal Magento-এ একটি জনপ্রিয় পেমেন্ট গেটওয়ে যা দ্রুত এবং নিরাপদ পেমেন্ট প্রক্রিয়া প্রদান করে। ম্যাজেন্টোতে PayPal ইন্টিগ্রেট করতে হলে সাধারণত PayPal এর অফিসিয়াল এক্সটেনশন ইনস্টল করতে হয়।

PayPal Integration Process

  1. PayPal এক্সটেনশন ইনস্টল করা

    Magento তে PayPal ইন্টিগ্রেট করার জন্য প্রথমে আপনাকে PayPal এক্সটেনশন ইনস্টল করতে হবে। Magento 2 তে PayPal এক্সটেনশন ইনস্টল করা হয় সাধারণত স্ট্যান্ডার্ড প্যাকেজের সাথে। যদি এটি আপনার সাইটে ইনস্টল না থাকে তবে আপনি এটি Magento Marketplace থেকে ডাউনলোড করতে পারেন।

  2. PayPal অ্যাকাউন্ট কনফিগার করা

    এক্সটেনশন ইনস্টল করার পর, আপনাকে PayPal অ্যাকাউন্ট কনফিগার করতে হবে:

    • Admin Panel > Stores > Configuration > Sales > Payment Methods এ যান।
    • PayPal সেকশন নির্বাচন করুন (যেমন, PayPal Express Checkout, PayPal Standard)।
    • এখানে, আপনি আপনার PayPal Merchant Account এর API Credential যেমন API Username, API Password, এবং API Signature দিন।
  3. PayPal পেমেন্ট মেথড কনফিগারেশন

    PayPal পেমেন্ট মেথড কনফিগারেশনে নিচের সেটিংস করতে হবে:

    • Enable PayPal: “Yes” এ সেট করুন।
    • Payment Action: "Sale" অথবা "Authorization" নির্বাচন করুন।
    • Order Status: সঠিক স্ট্যাটাস নির্বাচন করুন (যেমন, “Pending” বা “Complete”)।
  4. পরীক্ষা এবং যাচাই (Testing and Verification)

    PayPal পেমেন্ট গেটওয়ে ইন্টিগ্রেশন পরীক্ষা করতে PayPal Sandbox ব্যবহার করুন। PayPal Sandbox অ্যাকাউন্টের মাধ্যমে আপনি পেমেন্ট সিস্টেমের কার্যকারিতা নিশ্চিত করতে পারবেন।


২. Stripe Integration in Magento

Stripe একটি পেমেন্ট গেটওয়ে যা সরাসরি ক্রেডিট কার্ড এবং ডেবিট কার্ড থেকে পেমেন্ট গ্রহণ করার সুবিধা দেয়। এটি বেশ সহজ এবং উন্নত নিরাপত্তা প্রদান করে।

Stripe Integration Process

  1. Stripe এক্সটেনশন ইনস্টল করা

    প্রথমে আপনাকে Stripe এক্সটেনশন ইনস্টল করতে হবে। Magento 2 তে Stripe এক্সটেনশন পেতে আপনি Magento Marketplace থেকে এটি ইনস্টল করতে পারেন।

  2. Stripe API কনফিগারেশন

    Stripe এক্সটেনশন ইনস্টল করার পর, Stripe API কনফিগার করতে হবে:

    • Admin Panel > Stores > Configuration > Sales > Payment Methods এ যান।
    • Stripe সেকশন নির্বাচন করুন।
    • এখানে, আপনাকে Stripe এর Publishable Key এবং Secret Key প্রদান করতে হবে। এই কীগুলি Stripe ড্যাশবোর্ড থেকে পাওয়া যায়।
  3. Stripe পেমেন্ট পদ্ধতি কনফিগারেশন

    Stripe কনফিগার করার সময় নিচের সেটিংসগুলি পূর্ণ করুন:

    • Enable Stripe: এটি “Yes” করে দিন।
    • Payment Action: “Authorize and Capture” বা “Authorize Only” নির্বাচন করুন।
    • Payment Methods: আপনি কোন পেমেন্ট মেথডগুলি গ্রহণ করতে চান তা নির্বাচন করুন (যেমন, Visa, MasterCard, etc.)।
    • Error Message Display: পেমেন্ট সিস্টেমের জন্য কাস্টম ত্রুটি বার্তা প্রদর্শন করতে পারেন।
  4. পরীক্ষা এবং যাচাই (Testing and Verification)

    Stripe এর sandbox মোড ব্যবহার করে পেমেন্ট সিস্টেম পরীক্ষা করুন। এটি আপনাকে লাইভ সিস্টেমে যাওয়ার আগে কার্যকারিতা নিশ্চিত করার সুযোগ দেয়।


৩. অন্যান্য পেমেন্ট গেটওয়ে ইন্টিগ্রেশন

Magento তে আপনি অন্যান্য জনপ্রিয় পেমেন্ট গেটওয়ে যেমন Authorize.Net, Braintree, Worldpay ইত্যাদি ইন্টিগ্রেট করতে পারেন। এই গেটওয়ে গুলোর জন্য সাধারণত এক্সটেনশন প্রয়োজন যা Magento Marketplace থেকে ডাউনলোড করা যায়।

Authorize.Net Integration Process

  1. Authorize.Net এক্সটেনশন ইনস্টল করুন: Magento Marketplace থেকে Authorize.Net এক্সটেনশন ডাউনলোড এবং ইনস্টল করুন।
  2. API কনফিগার করুন: Admin Panel > Stores > Configuration > Sales > Payment Methods এ গিয়ে Authorize.Net সেকশনে আপনার API Credential দিন।
  3. পেমেন্ট সেটিংস কনফিগার করুন: পেমেন্টের ধরন এবং অন্যান্য সেটিংস কাস্টমাইজ করুন (যেমন, পেমেন্ট একশন, অর্ডার স্ট্যাটাস ইত্যাদি)।

Braintree Integration Process

  1. Braintree এক্সটেনশন ইনস্টল করুন: Braintree এক্সটেনশন ইনস্টল করতে Magento Marketplace থেকে এটি ডাউনলোড করুন।
  2. API কনফিগারেশন: Admin Panel > Stores > Configuration > Sales > Payment Methods এ গিয়ে Braintree সেকশনে আপনার API Keys দিন।
  3. কনফিগারেশন পূর্ণ করুন: পেমেন্ট অপশন এবং অন্যান্য প্রয়োজনীয় সেটিংস কনফিগার করুন।

৪. পেমেন্ট গেটওয়ে সিকিউরিটি এবং মনিটরিং

ম্যাজেন্টো তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করার সময়, সুরক্ষা অত্যন্ত গুরুত্বপূর্ণ। এখানে কিছু নিরাপত্তা ফিচার যা আপনি সুরক্ষিত পেমেন্ট প্রক্রিয়া নিশ্চিত করতে ব্যবহার করতে পারেন:

  1. SSL সার্টিফিকেট: আপনার সাইটে SSL (Secure Sockets Layer) সক্রিয় করা নিশ্চিত করুন যাতে গ্রাহকের ডেটা সুরক্ষিত থাকে।
  2. PCI-DSS কমপ্লায়েন্ট: পেমেন্ট সিস্টেমের জন্য PCI-DSS (Payment Card Industry Data Security Standard) মান অনুসরণ করুন।
  3. Fraud Detection: পেমেন্ট গেটওয়ে এর মধ্যে fraud detection ফিচারটি সক্ষম করুন যাতে প্রতারণামূলক লেনদেন বন্ধ করা যায়।

সারাংশ

Magento তে PayPal, Stripe, এবং অন্যান্য পেমেন্ট গেটওয়ে ইন্টিগ্রেশন একটি গুরুত্বপূর্ণ পদক্ষেপ, যা গ্রাহকদের পেমেন্ট গ্রহণের প্রক্রিয়া সহজ এবং নিরাপদ করে। পেমেন্ট গেটওয়ে এক্সটেনশন ব্যবহার করে আপনি বিভিন্ন পেমেন্ট অপশন যেমন ক্রেডিট/ডেবিট কার্ড, PayPal, Braintree, এবং অন্যান্য ইন্টিগ্রেট করতে পারেন। সুরক্ষা এবং মনিটরিং ফিচারগুলি সঠিকভাবে কনফিগার করার মাধ্যমে আপনি একটি সুরক্ষিত পেমেন্ট সিস্টেম নিশ্চিত করতে পারেন, যা গ্রাহক এবং ব্যবসা উভয়ের জন্য নিরাপদ।

Content added By

Custom Payment Methods তৈরি এবং কনফিগার করা

95
95

ম্যাজেন্টো ফ্রেমওয়ার্কে (Magento Framework) কাস্টম পেমেন্ট মেথড তৈরি এবং কনফিগার করা একটি গুরুত্বপূর্ণ প্রক্রিয়া, যা ব্যবসায়ীদের তাদের ই-কমার্স সাইটে বিশেষ ধরনের পেমেন্ট সিস্টেম ইন্টিগ্রেট করার সুযোগ দেয়। ম্যাজেন্টো বিভিন্ন প্রি-বিল্ট পেমেন্ট গেটওয়ে সাপোর্ট করে, তবে কাস্টম পেমেন্ট মেথড তৈরি করার মাধ্যমে আপনি নিজের পেমেন্ট সিস্টেম সেট আপ করতে পারেন, যা আপনার ব্যবসার জন্য বিশেষভাবে উপযোগী।

এখানে আমরা কাস্টম পেমেন্ট মেথড তৈরি এবং কনফিগার করার প্রক্রিয়া আলোচনা করব।


১. Magento তে কাস্টম পেমেন্ট মেথড তৈরি করা

ম্যাজেন্টো তে কাস্টম পেমেন্ট মেথড তৈরি করতে আপনাকে একটি নতুন মডিউল তৈরি করতে হবে যা পেমেন্ট মেথডের জন্য প্রয়োজনীয় সমস্ত ফিচার এবং কনফিগারেশন হ্যান্ডেল করবে।

১.১. মডিউল তৈরি করা

প্রথমে আপনাকে একটি নতুন মডিউল তৈরি করতে হবে:

  1. App/code ডিরেক্টরিতে যান এবং একটি নতুন ডিরেক্টরি তৈরি করুন:

    app/code/[VendorName]/[ModuleName]
    

    উদাহরণস্বরূপ, CustomPayment নামে একটি মডিউল তৈরি করতে চাইলে, ডিরেক্টরি হবে:

    app/code/Custom/Payment
    

১.২. মডিউল রেজিস্ট্রেশন ফাইল তৈরি করা

এখন, registration.php ফাইল তৈরি করুন যা Magento তে মডিউল রেজিস্টার করবে।

<?php
\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::MODULE,
    'Custom_Payment',
    __DIR__
);

১.৩. module.xml ফাইল তৈরি করা

এখন, module.xml ফাইল তৈরি করুন, যা Magento কে মডিউলটির নাম এবং সংস্করণ জানাবে। এটি app/code/Custom/Payment/etc ফোল্ডারে থাকবে।

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
    <module name="Custom_Payment" setup_version="1.0.0"/>
</config>

১.৪. পেমেন্ট মেথড তৈরি করা

এখন, আপনার কাস্টম পেমেন্ট মেথড তৈরি করতে, আপনাকে একটি পেমেন্ট মেথড ক্লাস তৈরি করতে হবে যা Magento এর পেমেন্ট সিস্টেমের সাথে কাজ করবে।

  1. Model ফোল্ডারে PaymentMethod.php ফাইল তৈরি করুন।
<?php
namespace Custom\Payment\Model;

use Magento\Payment\Model\Method\AbstractMethod;

class PaymentMethod extends AbstractMethod
{
    const CODE = 'custom_payment'; // পেমেন্ট মেথড কোড

    protected $_code = self::CODE;
    protected $_isOffline = true; // পেমেন্ট মেথডটি অফলাইন কিনা
    protected $_canUseForMultishipping = true; // এটি মাল্টি-শিপিংয়ের জন্য ব্যবহারযোগ্য
}

এখানে, PaymentMethod.php ক্লাসটি AbstractMethod থেকে এক্সটেন্ড করা হয়েছে, যা ম্যাজেন্টোকে পেমেন্ট মেথড সম্পর্কে জানায়। $_code পেমেন্ট মেথডের কোড এবং অন্যান্য কনফিগারেশন ফিচার গুলি নিয়ন্ত্রণ করে।

১.৫. পেমেন্ট মেথড কনফিগারেশন ফাইল

এখন, কাস্টম পেমেন্ট মেথডের কনফিগারেশন সেট করতে etc/frontend/di.xml ফাইল তৈরি করুন, যেখানে আপনি পেমেন্ট মেথডের কনফিগারেশন সম্পন্ন করবেন।

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:DependencyInjection/config.xsd">
    <type name="Magento\Payment\Model\Method\Factory">
        <arguments>
            <argument name="methods" xsi:type="array">
                <item name="custom_payment" xsi:type="string">Custom\Payment\Model\PaymentMethod</item>
            </argument>
        </arguments>
    </type>
</config>

এখানে, আপনি custom_payment মেথডটিকে পেমেন্ট সিস্টেমে যোগ করেছেন, যাতে Magento আপনার কাস্টম পেমেন্ট মেথডটি চিনতে পারে।


২. কাস্টম পেমেন্ট মেথড কনফিগার করা

আপনার কাস্টম পেমেন্ট মেথড কাজ করার জন্য, এটি Magento অ্যাডমিন প্যানেলে কনফিগার করতে হবে। এটি Stores > Configuration > Sales > Payment Methods থেকে করা যায়।

২.১. কাস্টম পেমেন্ট মেথড কনফিগার করা

  1. Admin Panel এ লগইন করুন।
  2. Stores > Configuration > Sales > Payment Methods এ যান।
  3. এখানে আপনি আপনার কাস্টম পেমেন্ট মেথড Custom Payment এর অপশন পাবেন।
  4. আপনি আপনার কাস্টম পেমেন্ট মেথডের নাম, অ্যাকটিভেশন, পেমেন্ট মেথডের ইনপুট ফিল্ড ইত্যাদি কনফিগার করতে পারেন।

এছাড়াও, আপনি Enabled অপশনটি Yes করে কাস্টম পেমেন্ট মেথডটি সক্রিয় করতে পারবেন।


৩. কাস্টম পেমেন্ট মেথডের UI এবং ফর্ম

আপনার কাস্টম পেমেন্ট মেথডের জন্য ফ্রন্টএন্ডে একটি পেমেন্ট ফর্ম তৈরি করতে হবে যাতে গ্রাহকরা পেমেন্টের সময় ইনপুট দিতে পারেন।

৩.১. পেমেন্ট ফর্ম তৈরি করা

এটি view/frontend/templates/form.phtml ফোল্ডারে করা যেতে পারে। এখানে একটি উদাহরণ দেয়া হলো:

<form method="post" action="<?= $block->getUrl('custompayment/payment/process') ?>">
    <label for="payment_method">Enter Payment Details</label>
    <input type="text" id="payment_method" name="payment_method" />
    <button type="submit">Submit</button>
</form>

এখানে, গ্রাহক পেমেন্ট ডিটেইলস ইনপুট করতে পারেন, এবং সেই তথ্য পরবর্তী প্রক্রিয়ায় ব্যবহৃত হবে।


৪. কাস্টম পেমেন্ট প্রক্রিয়া সম্পন্ন করা

এখন, কাস্টম পেমেন্ট প্রক্রিয়া সম্পন্ন করার জন্য আপনাকে Controller তৈরি করতে হবে, যা পেমেন্ট প্রক্রিয়া পরিচালনা করবে।

৪.১. Controller তৈরি করা

Controller তৈরি করতে আপনাকে একটি PaymentController.php ফাইল তৈরি করতে হবে:

<?php
namespace Custom\Payment\Controller\Payment;

use Magento\Framework\App\Action\Action;
use Magento\Framework\App\Action\Context;

class Process extends Action
{
    protected $_checkoutSession;

    public function __construct(Context $context)
    {
        parent::__construct($context);
    }

    public function execute()
    {
        // পেমেন্ট প্রক্রিয়া পরিচালনা
        $paymentMethod = $this->getRequest()->getParam('payment_method');
        if ($paymentMethod) {
            // পেমেন্ট প্রসেসিং
        }
        $this->_redirect('checkout/onepage/success');
    }
}

এখানে, Process মেথড পেমেন্ট ইনফরমেশন গ্রহণ করে এবং প্রক্রিয়া সম্পন্ন করে।


সারাংশ

Magento তে কাস্টম পেমেন্ট মেথড তৈরি এবং কনফিগার করা একটি শক্তিশালী উপায় যা ব্যবসায়ীদের তাদের নিজস্ব পেমেন্ট গেটওয়ে বা পেমেন্ট সিস্টেম ইন্টিগ্রেট করার সুযোগ দেয়। এই প্রক্রিয়া অনুসরণ করে আপনি কাস্টম পেমেন্ট মেথড তৈরি করতে পারেন, ফ্রন্টএন্ডে পেমেন্ট ফর্ম তৈরি করতে পারেন এবং পেমেন্ট প্রক্রিয়া পরিচালনা করতে পারেন। Magento এর মাধ্যমে কাস্টম পেমেন্ট মেথড ইন্টিগ্রেশন খুবই কার্যকর এবং আপনার ই-কমার্স সাইটে নির্দিষ্ট প্রয়োজন অনুযায়ী পেমেন্ট গেটওয়ে যোগ করার জন্য এটি একটি কার্যকর পদ্ধতি।

Content added By

Payment Gateway এর জন্য API Integration

113
113

ম্যাজেন্টো ফ্রেমওয়ার্ক (Magento Framework) ই-কমার্স সাইটে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন অত্যন্ত গুরুত্বপূর্ণ একটি ফিচার, যার মাধ্যমে গ্রাহকরা তাদের ক্রয়কার্য সম্পন্ন করতে পেমেন্ট পদ্ধতি নির্বাচন করতে পারেন। পেমেন্ট গেটওয়ে API ইন্টিগ্রেশন ম্যাজেন্টোতে কার্যকরভাবে পরিচালিত হয়, যেখানে গ্রাহকরা সহজেই পেমেন্ট করতে পারেন এবং ব্যবসায়ীরা পেমেন্ট প্রক্রিয়া ট্র্যাক করতে পারেন।

এখানে, আমরা Payment Gateway API Integration কিভাবে ম্যাজেন্টো ফ্রেমওয়ার্কে করা হয়, তার সম্পর্কে বিস্তারিত আলোচনা করব।


Magento তে Payment Gateway API Integration

Magento তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করা মানে হল যে আপনার সাইটে একটি তৃতীয় পক্ষের পেমেন্ট সিস্টেম (যেমন PayPal, Stripe, Authorize.Net, etc.) ইন্টিগ্রেট করা, যার মাধ্যমে গ্রাহকরা তাদের পেমেন্ট সম্পন্ন করতে পারেন। এখানে কিছু সাধারণ স্টেপ দেওয়া হয়েছে যা অনুসরণ করে আপনি পেমেন্ট গেটওয়ে API ইন্টিগ্রেট করতে পারেন।


১. পেমেন্ট গেটওয়ে মডিউল তৈরি করা

Magento তে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করতে, প্রথমে আপনাকে একটি কাস্টম পেমেন্ট মডিউল তৈরি করতে হবে। আপনি app/code/[Vendor]/[Module]/ ডিরেক্টরিতে একটি নতুন মডিউল তৈরি করবেন।

কমান্ডে মডিউল তৈরি:

php bin/magento module:generate [Vendor]_[Module]

এই মডিউলটি আপনার পেমেন্ট গেটওয়ে ইন্টিগ্রেশনের জন্য ব্যবহৃত হবে।


২. Payment Gateway API সেটআপ করা

Magento তে API ইন্টিগ্রেশন করতে আপনাকে পেমেন্ট গেটওয়ে থেকে API কীগুলি নিতে হবে (যেমন Client ID, Secret Key, API Key ইত্যাদি)। পেমেন্ট গেটওয়ে পোর্টালের মাধ্যমে আপনি আপনার একাউন্টে লগইন করে এই API কীগুলি পাবেন। উদাহরণস্বরূপ, PayPal বা Stripe এর API কীগুলি ব্যবহৃত হবে।

আপনার মডিউল ফোল্ডারে, পেমেন্ট গেটওয়ের কনফিগারেশন ফাইল তৈরি করতে হবে। উদাহরণস্বরূপ:

app/code/[Vendor]/[Module]/etc/config.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/config.xsd">
    <default>
        <payment>
            <gatewayapi>
                <active>1</active>
                <model>[Vendor]_[Module]/Model/Payment</model>
                <title>Payment Gateway</title>
                <payment_action>authorize_capture</payment_action>
                <api_key>YOUR_API_KEY</api_key>
            </gatewayapi>
        </payment>
    </default>
</config>

এখানে, api_key হচ্ছে পেমেন্ট গেটওয়ে থেকে প্রাপ্ত API কীগুলির মধ্যে একটি, যেটি আপনাকে সিস্টেমে কনফিগার করতে হবে।


৩. Payment Model তৈরি করা

এখন আপনাকে একটি Payment Model তৈরি করতে হবে যা আপনার পেমেন্ট গেটওয়ের API কল করার জন্য দায়িত্বশীল হবে।

app/code/[Vendor]/[Module]/Model/Payment.php

namespace [Vendor]\[Module]\Model;

use Magento\Payment\Model\Method\AbstractMethod;

class Payment extends AbstractMethod
{
    const CODE = '[Vendor]_[Module]';

    protected $_code = self::CODE;

    public function capture(\Magento\Payment\Model\InfoInterface $payment, $amount)
    {
        // API কলের মাধ্যমে পেমেন্ট প্রক্রিয়া শুরু করা
        $apiKey = $this->getConfigData('api_key');
        
        // পেমেন্ট গেটওয়ে API কল করার জন্য কোড যুক্ত করুন
        $paymentResult = $this->processPayment($amount, $apiKey);
        
        if ($paymentResult['status'] == 'success') {
            $payment->setStatus(\Magento\Payment\Model\Method\AbstractMethod::STATUS_APPROVED);
        } else {
            $payment->setStatus(\Magento\Payment\Model\Method\AbstractMethod::STATUS_ERROR);
        }
        
        return $this;
    }

    protected function processPayment($amount, $apiKey)
    {
        // পেমেন্ট গেটওয়ে API এ কল করুন
        // উদাহরণস্বরূপ PayPal বা Stripe API
        $response = $this->sendApiRequest($amount, $apiKey);
        return $response;
    }

    protected function sendApiRequest($amount, $apiKey)
    {
        // API এ রিকুয়েস্ট পাঠানোর জন্য কোড
        // API কল করে $response ফেরত দিন
    }
}

এখানে capture() মেথডটি পেমেন্ট প্রক্রিয়া সম্পন্ন করতে ব্যবহৃত হচ্ছে এবং processPayment() মেথডের মাধ্যমে API কল করা হচ্ছে।


৪. API রেসপন্স হ্যান্ডলিং

আপনার পেমেন্ট গেটওয়ে API রেসপন্স হ্যান্ডল করতে হবে, যাতে আপনি সফল বা ব্যর্থ পেমেন্টের ফলাফল বুঝতে পারেন এবং তদনুসারে অ্যাকশন নিতে পারেন। রেসপন্স হ্যান্ডলিং কোডে আপনার API এর সফল বা ব্যর্থ স্টেটাস চেক করার জন্য কোড যুক্ত করতে হবে।

protected function sendApiRequest($amount, $apiKey)
{
    // API রিকুয়েস্ট পাঠানো
    $url = 'https://api.paymentgateway.com/payment';
    $data = [
        'amount' => $amount,
        'api_key' => $apiKey
    ];

    // cURL বা অন্য HTTP লাইব্রেরি ব্যবহার করে API কল করুন
    $response = $this->sendHttpRequest($url, $data);

    // রেসপন্স প্রক্রিয়া করা
    if ($response['status'] == 'success') {
        return ['status' => 'success', 'transaction_id' => $response['transaction_id']];
    } else {
        return ['status' => 'failed', 'message' => $response['message']];
    }
}

protected function sendHttpRequest($url, $data)
{
    // cURL এর মাধ্যমে API কল করা
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
    $response = curl_exec($ch);
    curl_close($ch);

    return json_decode($response, true);
}

এখানে, API কল করে আপনি সফল বা ব্যর্থ পেমেন্ট রেসপন্স পেতে পারেন, এবং তারপরে পেমেন্ট স্ট্যাটাস সেট করা হয়।


৫. Payment Gateway Integration এর জন্য UI কাস্টমাইজেশন

Magento তে পেমেন্ট গেটওয়ে UI কাস্টমাইজেশনের জন্য আপনাকে checkout পেজে পেমেন্ট গেটওয়ে ফর্ম প্রদর্শন করতে হবে। এজন্য আপনি পেমেন্ট গেটওয়ে মডিউলের ফ্রন্টএন্ড ফর্ম তৈরি করতে পারেন।

namespace [Vendor]\[Module]\Block;

use Magento\Framework\View\Element\Template;

class PaymentForm extends Template
{
    protected $_template = '[Vendor]_[Module]::payment/form.phtml';

    public function getApiKey()
    {
        return $this->_scopeConfig->getValue('payment/[Vendor]_[Module]/api_key');
    }
}

এখানে, getApiKey() মেথডটি API কীগুলি ফিরিয়ে দেয় এবং ফর্মে উপস্থাপন করা হয়।


৬. Magento Admin Panel কনফিগারেশন

Magento Admin Panel এর মাধ্যমে আপনার পেমেন্ট গেটওয়ে কনফিগারেশন করতে হবে।

  1. Stores > Configuration > Sales > Payment Methods এ যান।
  2. আপনার কাস্টম পেমেন্ট গেটওয়ে নির্বাচন করুন এবং প্রয়োজনীয় API কীগুলি এবং কনফিগারেশন সেট করুন।

সারাংশ

Magento তে পেমেন্ট গেটওয়ে API ইন্টিগ্রেশন ব্যবসায়ীদের জন্য একটি গুরুত্বপূর্ণ কাজ, যা পেমেন্ট প্রসেসিংকে সহজ করে তোলে। Magento তে এই ইন্টিগ্রেশন সম্পন্ন করতে, আপনাকে মডিউল তৈরি, API কীগুলি কনফিগার, পেমেন্ট মডেল তৈরি, রেসপন্স হ্যান্ডলিং এবং UI কাস্টমাইজেশন করতে হবে। এইভাবে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন করার মাধ্যমে আপনি আপনার গ্রাহকদের জন্য আরও সুবিধাজনক এবং নিরাপদ পেমেন্ট সিস্টেম তৈরি করতে পারবেন।

Content added By
Promotion