app/Plugin/VeriTrans4G2/Resource/template/admin/Plugin/vt4g_config.twig line 1

Open in your IDE?
  1. {#
  2. Copyright (c) 2018 VeriTrans Inc., a Digital Garage company. All rights reserved.
  3. http://www.veritrans.co.jp/
  4. #}
  5. {% extends '@admin/default_frame.twig' %}
  6. {% set menus = ['store', 'plugin', 'plugin_list'] %}
  7. {% block title %}VeriTrans4G{% endblock %}
  8. {% block sub_title %}プラグイン設定{% endblock %}
  9. {% form_theme form '@admin/Form/bootstrap_4_horizontal_layout.html.twig' %}
  10. {% block stylesheet %}
  11. <style>
  12. .vt4g_from_input_choice_recaptcha_threshold {
  13.     width: 7.5em;
  14.     display: inline;
  15. }
  16. .vt4g_from_input_text_rollback_time {
  17.     width: 6.0em;
  18.     display: inline;
  19. }
  20. </style>
  21. {% endblock stylesheet %}
  22. {% block javascript %}
  23. <script>
  24.     // 名前空間を設定
  25.     window.VeriTrans4G = window.VeriTrans4G || {};
  26.     VeriTrans4G.showRequiredLabels  = function() {
  27.         const radioValue = document.querySelector('input[name="plugin_config[use_recaptcha]"]:checked').value;
  28.         const recaptchaRequiredSpans = document.querySelectorAll('.recaptcha-required-span');
  29.         for (const span of recaptchaRequiredSpans) {
  30.             span.style.display = radioValue == 0 ? 'none' : 'inline'; // 表示する
  31.         }
  32.     }
  33.     $(function() {
  34.         VeriTrans4G.showRequiredLabels();
  35.         $('input[name="plugin_config[use_recaptcha]"]').on('click', function(e) {
  36.             VeriTrans4G.showRequiredLabels();
  37.         })
  38.     })
  39. </script>
  40. {% endblock javascript %}
  41. {% block main %}
  42.     <form role="form" method="post">
  43.         {{ form_widget(form._token) }}
  44.         <div class="c-contentsArea__cols">
  45.             <div class="c-contentsArea__primaryCol">
  46.                 <div class="c-primaryCol">
  47.                     <div class="card rounded border-0 mb-4">
  48.                         <div class="card-header"><span>設定</span></div>
  49.                         <div class="card-body">
  50.                             <div class="row">
  51.                                 <div class="col-3"><span>マーチャントCCID</span><span
  52.                                             class="badge bg-primary ms-1">必須</span></div>
  53.                                 <div class="col mb-2">
  54.                                     {{ form_widget(form.merchant_ccid) }}
  55.                                     {{ form_errors(form.merchant_ccid) }}
  56.                                 </div>
  57.                             </div>
  58.                             <div class="row">
  59.                                 <div class="col-3"><span>マーチャント認証鍵</span><span
  60.                                             class="badge bg-primary ms-1">必須</span></div>
  61.                                 <div class="col mb-2">
  62.                                     {{ form_widget(form.merchant_pass) }}
  63.                                     {{ form_errors(form.merchant_pass) }}
  64.                                 </div>
  65.                             </div>
  66.                             <div class="row">
  67.                                 <div class="col-3"><span>マーチャントID</span></div>
  68.                                 <div class="col mb-2">
  69.                                     {{ form_widget(form.merchant_id) }}
  70.                                     {{ form_errors(form.merchant_id) }}
  71.                                 </div>
  72.                             </div>
  73.                             <div class="row">
  74.                                 <div class="col-3"><span>ハッシュシード</span></div>
  75.                                 <div class="col mb-2">
  76.                                     {{ form_widget(form.merchant_hash) }}
  77.                                     {{ form_errors(form.merchant_hash) }}
  78.                                 </div>
  79.                             </div>
  80.                             <div class="row">
  81.                                 <div class="col-3"><span>トークンAPI キー</span><span
  82.                                             class="badge bg-primary ms-1">必須</span></div>
  83.                                 <div class="col mb-2">
  84.                                     {{ form_widget(form.token_api_key) }}
  85.                                     {{ form_errors(form.token_api_key) }}
  86.                                 </div>
  87.                             </div>
  88.                             <div class="row">
  89.                                 <div class="col-3"><span>取引IDプレフィックス</span></div>
  90.                                 <div class="col mb-2">
  91.                                     {{ form_widget(form.vt4g_order_id_prefix) }}
  92.                                     {{ form_errors(form.vt4g_order_id_prefix) }}
  93.                                 </div>
  94.                             </div>
  95.                             <div class="row">
  96.                                 <div class="col-3"><span>有効にする支払方法</span><span
  97.                                             class="badge bg-primary ms-1">必須</span></div>
  98.                                 <div class="col mb-2">
  99.                                     {{ form_widget(form.enable_payment_type) }}
  100.                                     {{ form_errors(form.enable_payment_type) }}
  101.                                     <p class='small'>*支払方法ごとの詳細設定はプラグイン設定完了後に支払方法設定画面で行います。</p>
  102.                                 </div>
  103.                             </div>
  104.                             <div class="row">
  105.                                 <div class="col-3"><span>ダミーモード</span><span
  106.                                             class="badge bg-primary ms-1">必須</span></div>
  107.                                 <div class="col mb-2">
  108.                                     {{ form_widget(form.dummy_mode_flg) }}
  109.                                     {{ form_errors(form.dummy_mode_flg) }}
  110.                                 </div>
  111.                             </div>
  112.                             <div class="row">
  113.                                 <div class="col-3"><span>ベリトランス4G用メールアドレス</span></div>
  114.                                 <div class="col mb-2">
  115.                                     {{ form_widget(form.vt4g_email) }}
  116.                                     {{ form_errors(form.vt4g_email) }}
  117.                                     <p class='small'>*未登録の場合は店舗設定>基本設定画面の送信元メールアドレス(from)にメールの送信を行います。</p>
  118.                                 </div>
  119.                             </div>
  120.                             <div class="row">
  121.                                 <div class="col-3"><span>ご注文手続き画面<br />確認ボタン押下回数制限</span><span
  122.                                             class="badge bg-primary ms-1">必須</span></div>
  123.                                 <div class="col mb-2">
  124.                                     {{ form_widget(form.vt4g_shopping_index_rate_limit) }}
  125.                                     {{ form_errors(form.vt4g_shopping_index_rate_limit) }}
  126.                                     <p class='small'>
  127.                                         *ご注文手続き画面にある<strong>確認する</strong>ボタンを押下できる回数を制限します。<br />
  128.                                         *押下できる回数はIPアドレスまたは購入者ごとに設定があります。(詳細は導入マニュアルをご参照ください)<br />
  129.                                         *EC-CUBEのスロットリング機能を利用しているため、EC-CUBEのバージョンが4.2.1以上であればご利用いただけます。
  130.                                     </p>
  131.                                 </div>
  132.                             </div>
  133.                         </div>
  134.                     </div>
  135.                 </div>
  136.                 <div class="c-primaryCol">
  137.                     <div class="card rounded border-0 mb-4">
  138.                         <div class="card-header"><span>注文のロールバック</span></div>
  139.                         <div class="card-body">
  140.                             <div class="row">
  141.                                 <div class="col-3"><span>注文ロールバックプログラム</span></div>
  142.                                 <div class="col mb-2">
  143.                                     <p>
  144.                                     注文ロールバックプログラムとは、決済中のままとなった注文で選択された商品の在庫と会員の利用ポイントを戻し、対応状況を変更するプログラムのことです。<br />
  145.                                     プログラムは受注一覧またはコマンドで実行することができます。<br />
  146.                                     プログラムを実行する機能によって対象となる注文が異なります。<br />
  147.                                     対象となる注文の詳細は、導入マニュアルをご参照ください。<br />
  148.                                     <br />
  149.                                     下記の<strong>実行コマンド</strong>をクーロンに設定して定期実行することも可能です。<br />
  150.                                     <font color='red'>コマンドで実行する場合は、決済の支払期限に下記の<strong>ロールバックまでの時間</strong>を加算した日時を参照します。<br />
  151.                                     この日時がロールバック処理時点の日時と同じか過去となっている注文を対象とします。<br /></font>
  152.                                     <br />
  153.                                     <hr>
  154.                                     実行コマンド<br />
  155.                                     `EC-CUBEディレクトリ`/bin/console vt4g:rollback<br />
  156.                                     <p class='small'>*`EC-CUBEディレクトリ`の部分はご利用のEC-CUBE環境のパスに置き換えてください。</p>
  157.                                 </div>
  158.                             </div>
  159.                             <hr>
  160.                             <div class="row">
  161.                                 <div class="col-3">
  162.                                     <span>ロールバックまでの時間</span><span
  163.                                             class="badge bg-primary ms-1">必須</span>
  164.                                     <p class='small'>
  165.                                         *設定は分単位となります。<br />
  166.                                         *1分から999分まで設定できます。<br />
  167.                                         *クレジットカード決済は本人認証(3Dセキュア)を利用した決済が対象となります。<br />
  168.                                     </p>
  169.                                 </div>
  170.                                 <div class="col">
  171.                                     <div class="row">
  172.                                         <div class="col-2">
  173.                                             <span>クレジットカード決済</span></div>
  174.                                         <div class="col mb-2">
  175.                                             {{ form_widget(form.rollback_time_credit) }}
  176.                                             {{ form_errors(form.rollback_time_credit) }}
  177.                                         </div>
  178.                                     </div>
  179.                                     <div class="row">
  180.                                         <div class="col-2"><span>コンビニ決済</span></div>
  181.                                         <div class="col mb-2">
  182.                                             {{ form_widget(form.rollback_time_cvs) }}
  183.                                             {{ form_errors(form.rollback_time_cvs) }}
  184.                                         </div>
  185.                                     </div>
  186.                                     <div class="row">
  187.                                         <div class="col-2"><span>ネットバンク決済</span></div>
  188.                                         <div class="col mb-2">
  189.                                             {{ form_widget(form.rollback_time_bank) }}
  190.                                             {{ form_errors(form.rollback_time_bank) }}
  191.                                         </div>
  192.                                     </div>
  193.                                     <div class="row">
  194.                                         <div class="col-2"><span>ペイジー(Pay-easy)</span></div>
  195.                                         <div class="col mb-2">
  196.                                             {{ form_widget(form.rollback_time_atm) }}
  197.                                             {{ form_errors(form.rollback_time_atm) }}
  198.                                         </div>
  199.                                     </div>
  200.                                     <div class="row">
  201.                                         <div class="col-2"><span>銀聯ネット決済</span></div>
  202.                                         <div class="col mb-2">
  203.                                             {{ form_widget(form.rollback_time_upop) }}
  204.                                             {{ form_errors(form.rollback_time_upop) }}
  205.                                         </div>
  206.                                     </div>
  207.                                     {% if form.rollback_time_paypay is defined %}
  208.                                     <div class="row">
  209.                                         <div class="col-2"><span>PayPay</span></div>
  210.                                         <div class="col mb-2">
  211.                                             {{ form_widget(form.rollback_time_paypay) }}
  212.                                             {{ form_errors(form.rollback_time_paypay) }}
  213.                                         </div>
  214.                                     </div>
  215.                                     {% endif %}
  216.                                 </div>
  217.                             </div>
  218.                         </div>
  219.                     </div>
  220.                 </div>
  221.                 <div class="c-primaryCol">
  222.                     <div class="card rounded border-0 mb-4">
  223.                         <div class="card-header"><span>その他情報</span></div>
  224.                         <div class="card-body">
  225.                             <div class="row">
  226.                                 <div class="col-3"><span>入金(結果)通知プログラム</span></div>
  227.                                 <div class="col mb-2">
  228.                                     <p>
  229.                                     入金(結果)通知プログラムとは、購入者が注文完了後にコンビニ、銀行・郵貯などで入金操作を行ったという情報を4Gサーバーから自動で受信するプログラムのことです。<br />
  230.                                     MAP(ベリトランスのマーチャント管理ポータルサービス)で入金(結果)通知プログラムを有効にして以下のURLを設定して下さい。<br />
  231.                                     ※クレジットカード決済以外の決済は入金(結果)通知プログラムを有効にしないと返金処理などをEC-CUBEから行うことができません。<br />
  232.                                     ※外部からの通信を受信できない環境(開発環境等)では入金(結果)通知を受信することはできません。<br />
  233.                                     </p>
  234.                                     <hr>
  235.                                     <p>お客様の入金(結果)通知URL</p>
  236.                                     <p>{{ recv_url }}</p>
  237.                                 </div>
  238.                             </div>
  239.                             <div class="row">
  240.                                 <div class="col-3"><span>入金(結果)通知先URLの自動設定</span><span
  241.                                             class="badge bg-primary ms-1">必須</span></div>
  242.                                 <div class="col mb-2">
  243.                                     {{ form_widget(form.push_url_auto_setting[1]) }}
  244.                                     <p>
  245.                                     お客様の入金(結果)通知URLに表示されているURLを自動で設定します。<br />
  246.                                     表示されているURLが正しい場合は、こちらを選択してください。
  247.                                     </p>
  248.                                     {{ form_widget(form.push_url_auto_setting[2]) }}
  249.                                     <p>
  250.                                     お客様システム構成によって入金通知URLが「お客様の入金(結果)通知URL」に表示されている値と異なる場合、こちらで設定可能です。<br />
  251.                                     指定できるアドレスは決済サーバからインターネットに公開されていることが条件です。<br />
  252.                                     またポート番号は80もしくは443のみとなります。
  253.                                     </p>
  254.                                     <div style="margin-top: 10px; margin-bottom: 10px;">
  255.                                         {{ form_widget(form.manual_push_url) }}
  256.                                         {{ form_errors(form.manual_push_url) }}
  257.                                     </div>
  258.                                     {{ form_widget(form.push_url_auto_setting[0]) }}
  259.                                     <p>通知URLはMAPにて設定をお願いいたします。</p>
  260.                                     {{ form_errors(form.push_url_auto_setting) }}
  261.                                     <p class='small'>*設定することでAlipay決済、銀聯ネット決済、PayPal決済を除き、MAPにURLが未登録でも入金(結果)通知を受信することができます。</p>
  262.                                 </div>
  263.                             </div>
  264.                         </div>
  265.                         <hr>
  266.                         <div class="card-body">
  267.                             <div class="row">
  268.                                 <div class="col-3"><span>EC-CUBEご利用状況の確認</span><span
  269.                                             class="badge bg-primary ms-1">必須</span></div>
  270.                                 <div class="col mb-2">
  271.                                     <p>
  272.                                     加盟店様のEC-CUBEのご利用状況確認のため、下記情報のご提供をお願いいたします。<br />
  273.                                     決済プラグイン設定完了時に下記の情報を、株式会社DGフィナンシャルテクノロジー宛にメール送信いたします。<br />
  274.                                     ・ショップ名<br />
  275.                                     ・EC-CUBEバージョン情報<br />
  276.                                     ・決済プラグインバージョン情報<br />
  277.                                     ・マーチャントCCID<br />
  278.                                     <br />
  279.                                     補足事項:<br />
  280.                                     本メールは本番モードでマーチャント情報を登録する際に送信されます。<br />
  281.                                     ダミーモードの場合で登録する際にメールは送信されません。<br />
  282.                                     メールの送信は1度だけですが、複数サーバで運用されている場合、対象サーバごとでの送信となります。<br />
  283.                                     メールの送信先は{{ usedMail.to }}となります。<br />
  284.                                     送信されるメールは当画面にあるベリトランス4G用メールアドレスに入力されたアドレスにも送信されます。<br />
  285.                                     ベリトランス4G用メールアドレスを入力していない場合は、SHOPマスタのメール送信元アドレス({{ usedMail.cc }})に送信されます。<br />
  286.                                     後日DGフィナンシャルテクノロジーよりEC-CUBEご利用状況について確認のためにご連絡させていただくことがございます。<br />
  287.                                     連絡は、メールに記載されたマーチャントCCIDに紐づく登録先にご連絡させていただきます。<br />
  288.                                     詳細につきましては店舗管理者向け操作マニュアルもご参照ください。<br />
  289.                                     お問い合わせは上記メールの送信先またはベリトランス担当営業までお願い致します。<br />
  290.                                     </p>
  291.                                     <hr>
  292.                                     {% if usedMail.send_date is null %}
  293.                                     <div class="row">
  294.                                         <div class="col mb-2">
  295.                                             {{ form_widget(form.used_mail_flg) }}
  296.                                             {{ form_errors(form.used_mail_flg) }}
  297.                                         </div>
  298.                                     </div>
  299.                                     {% else %}
  300.                                     メール送信済(送信日:{{ usedMail.send_date }})<br />
  301.                                     <div class="form-group d-none" >
  302.                                         {{ form_widget(form.used_mail_flg) }}
  303.                                     </div>
  304.                                     {% endif %}
  305.                                     <p>
  306.                                     本件は、DGフィナンシャルテクノロジーにてEC-CUBEのご利用状況を把握することが目的となります。<br />
  307.                                     ご不明な点がございましたら直接DGフィナンシャルテクノロジーまでお問い合わせください。<br />
  308.                                     (お問い合わせ先:{{ usedMail.to }})
  309.                                     </p>
  310.                                 </div>
  311.                             </div>
  312.                         </div>
  313.                         <hr>
  314.                         <div class="card-body">
  315.                             <div class="row">
  316.                                 <div class="col-3"><span>reCAPTCHA</span></div>
  317.                                 <div class="col mb-2">
  318.                                     <p>
  319.                                     reCAPTCHA スコアベース(v3)をご利用いただけます。<br />
  320.                                     利用するを選択した場合、ご注文手続き画面でreCAPTCHAが動作するようになります。<br />
  321.                                     ご利用にあたり、あらかじめreCAPTCHAの登録画面でドメイン登録を行う必要がございます。<br />
  322.                                     ドメイン登録を行うとサイトキーとシークレットキーが発行されますので、下記フォームに入力してください。<br />
  323.                                     </p>
  324.                                     <div class="row">
  325.                                         <div class="col-3">
  326.                                             <span>reCAPTCHAの利用</span>
  327.                                             <span class="badge bg-primary ms-1">必須</span>
  328.                                         </div>
  329.                                         <div class="col mb-2">
  330.                                             {{ form_widget(form.use_recaptcha) }}
  331.                                             {{ form_errors(form.use_recaptcha) }}
  332.                                         </div>
  333.                                     </div>
  334.                                     <div class="row">
  335.                                         <div class="col-3">
  336.                                             <span>サイトキー</span>
  337.                                             <span class="badge bg-primary ms-1 recaptcha-required-span">必須</span>
  338.                                         </div>
  339.                                         <div class="col mb-2">
  340.                                             {{ form_widget(form.recaptcha_site_key) }}
  341.                                             {{ form_errors(form.recaptcha_site_key) }}
  342.                                         </div>
  343.                                     </div>
  344.                                     <div class="row">
  345.                                         <div class="col-3">
  346.                                             <span>シークレットキー</span>
  347.                                             <span class="badge bg-primary ms-1 recaptcha-required-span">必須</span>
  348.                                         </div>
  349.                                         <div class="col mb-2">
  350.                                             {{ form_widget(form.recaptcha_secret_key) }}
  351.                                             {{ form_errors(form.recaptcha_secret_key) }}
  352.                                         </div>
  353.                                     </div>
  354.                                     <div class="row">
  355.                                         <div class="col-3">
  356.                                             <span>bot判定の閾値</span>
  357.                                             <span class="badge bg-primary ms-1 recaptcha-required-span">必須</span>
  358.                                         </div>
  359.                                         <div class="col mb-2">
  360.                                             {{ form_widget(form.recaptcha_threshold) }}以上を人間と判定する
  361.                                             {{ form_errors(form.recaptcha_threshold) }}
  362.                                             <p class='small'>
  363.                                                 *0.0から1.0の間でスコアが算出され、1.0に近いほど人間の操作であるとreCAPTCHAが判定します。<br />
  364.                                                 *reCAPTCHA Enterpriseに登録してセキュリティ審査を行えば、すべてのスコアが使用できます。<br />
  365.                                                 *セキュリティ審査を行っていない場合、reCAPTCHAの判定結果のスコアは、0.1、0.3、0.7、0.9の4段階となります。
  366.                                             </p>
  367.                                         </div>
  368.                                     </div>
  369.                                 </div>
  370.                             </div>
  371.                         </div>
  372.                     </div>
  373.                 </div>
  374.             </div>
  375.         </div>
  376.         <div class="c-conversionArea">
  377.             <div class="c-conversionArea__container">
  378.                 <div class="row justify-content-between align-items-center">
  379.                     <div class="col-6">
  380.                         <div class="c-conversionArea__leftBlockItem">
  381.                             <a class="c-baseLink"
  382.                                href="{{ url('admin_store_plugin') }}">
  383.                                 <i class="fa fa-backward" aria-hidden="true"></i>
  384.                                 <span>プラグイン一覧</span>
  385.                             </a>
  386.                         </div>
  387.                     </div>
  388.                     <div class="col-6">
  389.                         <div class="row align-items-center justify-content-end">
  390.                             <div class="col-auto">
  391.                                 <button class="btn btn-ec-conversion px-5"
  392.                                         type="submit">登録</button>
  393.                             </div>
  394.                         </div>
  395.                     </div>
  396.                 </div>
  397.             </div>
  398.         </div>
  399.     </form>
  400. {% endblock %}