Opencart 3.x版本支付插件开发PHP开发实例

电子商务 admin 发布时间:2025-12-03 15:26:32 浏览:
最近给客户开发一个Opencart支付插件,下面就给大家普及一下Opencart相关支付插件开发的一些经验。
首先,OpenCart 是一款 开源免费的 PHP 电商框架,主打轻量、易用、扩展性强,适合个人开发者、中小企业快速搭建独立电商网站(支持 B2C 零售、多品类商城等场景),也是 PHP 开发者入门电商开发的常用工具。
Opencart是一个外贸类电商平台的一个框架,好像是德国一个公司开发的,类似于Ecshop,只不过ecshop是中国公司开发的,主要面向国内的电商。
下面详细说一下Opencart支付插件的开发步骤:
1.支付插件的几个功能性文件,位置如下:
位置在catalog/controller/extension/payment/(前台控制器)、admin/controller/extension/payment/(后台控制器)、catalog/language/zh-cn/extension/payment/(前台语言)、admin/language/zh-cn/extension/payment/(后台语言)、catalog/model/extension/payment/(模型)、admin/model/extension/payment/(后台模型)、system/library/payment/(可选,支付核心逻辑)
也可以参照相关目录下其他支付插件的源文件来开发。下面是catalog/controller/extension/payment/(前台控制器)一部分代码:
class ControllerExtensionPaymentSmartpay extends Controller {
    public function index() {
        $data['button_confirm'] = $this->language->get('button_confirm');

        $this->load->model('checkout/order');

        $order_info = $this->model_checkout_order->getOrder($this->session->data['order_id']);

        $config = array (
            'pay_memberid'               => $this->config->get('payment_smartpay_app_id'),
            'merchant_private_key' => $this->config->get('payment_smartpay_merchant_private_key'),
            'pay_notifyurl'           => HTTPS_SERVER . "payment_callback/smartpay",
            'pay_callbackurl'           => $this->url->link('checkout/success'),
            
            //'pay_md5sign'            => "RSA2",
            'gateway_url'          => "http://payplat.smartgopay.com/Pay_Index.html",
            //'smartpay_public_key'    => $this->config->get('payment_smartpay_smartpay_public_key'),
        );
        $out_trade_no = trim($order_info['order_id']);
        $subject = trim($this->config->get('config_name'));
        $total_amount = trim($this->currency->format($order_info['total'], 'USD', '', false));
        $body = '';//trim($_POST['WIDbody']);

        $payRequestBuilder = array(
            'body'         => $body,
            'subject'      => $subject,
            'pay_amount' => $total_amount,
            'pay_orderid' => $out_trade_no,
            'pay_applydate' => date('Ymd H:i:s'),
            'pay_bankcode'              => "925"
        );

        $this->load->model('extension/payment/smartpay');

        $response = $this->model_extension_payment_smartpay->pagePay($payRequestBuilder,$config);
        $this->log->write('response:'.$response);

另外就是插件的安装和使用
将上述文件按目录结构上传到 OpenCart 对应位置。
登录 OpenCart 后台,进入 “扩展> 扩展 > 支付方式”,找到 “我的支付插件”,点击 “安装”,然后点击 “编辑” 配置订单状态等参数,最后启用插件。


如果你的需求是搭建 “PC + 手机端一体的独立电商网站”,且需要灵活二次开发,OpenCart 是性价比很高的选择,结合你的 PHP 和服务器运维经验,可快速上手部署和定制。如果您需要这方面的帮助请跟我联系,QQ804752009

在线咨询

点击这里给我发消息售前咨询专员

点击这里给我发消息售后服务专员

在线咨询

免费通话

24h咨询:0475-2793529


如您有问题,可以咨询我们的24H咨询电话!

免费通话

微信扫一扫

微信联系
返回顶部