>  기사  >  백엔드 개발  >  PHP는 미니 프로그램 환불의 정식 버전을 구현합니다.

PHP는 미니 프로그램 환불의 정식 버전을 구현합니다.

小云云
小云云원래의
2018-03-21 13:26:133100검색

이 글에서는 미니 프로그램 환불을 구현하기 위한 PHP 정식 버전을 주로 공유합니다. 기능적 전제 조건: 1. wx php sdk(미니 프로그램 결제 정식 버전) 사용, 2. 인증서 구성 시 절대 경로 사용을 바랍니다. 모두에게 도움이 될 수 있습니다.

1. 업 코드:

    /**
     * 退款
     * @author:大脸猫脸大
     */
    public function refund()
    {
        import("Vendor.Wxpay.lib.WxPay#Api", "", ".php");
        $orderSn =  I("ordersn", "", "trim");
        $map = array('ordersn'=> $orderSn);
        $order = M("Order")->where($map)->find();
        if (!$order) {
            $result['code'] = 0;
            $result['msg'] = '未找到订单';
            $this->ajaxReturn($result);
        }
        $input = new \WxPayRefund();
        $input->SetTotal_fee($order['price']*100);
        $input->SetRefund_fee($order['price']*100);
        $input->SetOut_refund_no("R".$orderSn);
        $input->SetOut_trade_no("$orderSn");
        $input->SetOp_user_id(\WxPayConfig::MCHID);
        $refundOrder = \WxPayApi::refund($input);
        //file_put_contents(__DIR__."/refund.log", var_export($refundOrder, true). "\r\n" , FILE_APPEND);
        if ($refundOrder['result_code'] == 'SUCCESS' && $refundOrder['return_code'] == 'SUCCESS') {
            $result['code'] = 1;
            $result['data'] =  $refundOrder['transaction_id'];
            $this->ajaxReturn($result);
        }
        else {
            $result['code'] = 0;
            $result['msg'] =  $refundOrder['err_code'];
            $this->ajaxReturn($result);
        }
    }

관련 권장 사항:

WeChat 결제를 위한 환불 기능 개발

PHP에서 WeChat 환불 신청 프로세스를 구현하는 방법

WeChat을 구현하기 위한 PHP 개발에 대한 자세한 설명 환불 기능

위 내용은 PHP는 미니 프로그램 환불의 정식 버전을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.