<?xml version="1.0"?>
<!--
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
    <system>
        <section id="payment">
            <group id="authorizenet_acceptjs" translate="label" type="text" sortOrder="34" showInDefault="1" showInWebsite="1" showInStore="1">
                <label>Authorize.Net</label>
                <field id="active" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                    <label>Enabled</label>
                    <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                    <requires>
                        <group id="authorizenet_acceptjs_required"/>
                    </requires>
                </field>
                <group id="required" translate="label" showInDefault="1" showInWebsite="1" showInStore="1" sortOrder="15">
                    <label>Basic Authorize.Net Settings</label>
                    <attribute type="expanded">1</attribute>
                    <frontend_model>Magento\Config\Block\System\Config\Form\Fieldset</frontend_model>
                    <field id="title" translate="label" type="text" sortOrder="10" showInDefault="10" showInWebsite="1" showInStore="1" canRestore="1">
                        <label>Title</label>
                        <config_path>payment/authorizenet_acceptjs/title</config_path>
                    </field>
                    <field id="environment" translate="label" type="select" sortOrder="15" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Environment</label>
                        <source_model>Magento\AuthorizenetAcceptjs\Model\Adminhtml\Source\Environment</source_model>
                        <config_path>payment/authorizenet_acceptjs/environment</config_path>
                    </field>
                    <field id="payment_action" translate="label" type="select" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Payment Action</label>
                        <source_model>Magento\AuthorizenetAcceptjs\Model\Adminhtml\Source\PaymentAction</source_model>
                        <config_path>payment/authorizenet_acceptjs/payment_action</config_path>
                    </field>
                    <field id="login" translate="label" type="obscure" sortOrder="30" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>API Login ID</label>
                        <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                        <config_path>payment/authorizenet_acceptjs/login</config_path>
                        <validate>required-entry</validate>
                        <depends>
                            <field id="*/authorizenet_acceptjs/active">1</field>
                        </depends>
                    </field>
                    <field id="trans_key" translate="label" type="obscure" sortOrder="40" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Transaction Key</label>
                        <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                        <config_path>payment/authorizenet_acceptjs/trans_key</config_path>
                        <validate>required-entry</validate>
                        <depends>
                            <field id="*/authorizenet_acceptjs/active">1</field>
                        </depends>
                    </field>
                    <field id="public_client_key" translate="label" sortOrder="50" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Public Client Key</label>
                        <config_path>payment/authorizenet_acceptjs/public_client_key</config_path>
                        <validate>required-entry</validate>
                        <depends>
                            <field id="*/authorizenet_acceptjs/active">1</field>
                        </depends>
                    </field>
                    <field id="trans_signature_key" translate="label" type="obscure" sortOrder="60" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Signature Key</label>
                        <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                        <config_path>payment/authorizenet_acceptjs/trans_signature_key</config_path>
                        <validate>required-entry</validate>
                        <depends>
                            <field id="*/authorizenet_acceptjs/active">1</field>
                        </depends>
                    </field>
                    <field id="trans_md5" translate="label" type="obscure" sortOrder="70" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Merchant MD5 (deprecated)</label>
                        <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                        <config_path>payment/authorizenet_acceptjs/trans_md5</config_path>
                        <depends>
                            <field id="*/authorizenet_acceptjs/active">1</field>
                        </depends>
                    </field>
                </group>
                <group id="advanced" translate="label" showInDefault="1" showInWebsite="1" showInStore="0" sortOrder="20">
                    <label>Advanced Authorize.Net Settings</label>
                    <attribute type="expanded">0</attribute>
                    <field id="currency" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Accepted Currency</label>
                        <source_model>Magento\Config\Model\Config\Source\Locale\Currency</source_model>
                        <config_path>payment/authorizenet_acceptjs/currency</config_path>
                    </field>
                    <field id="debug" translate="label" type="select" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Debug</label>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/authorizenet_acceptjs/debug</config_path>
                    </field>
                    <field id="email_customer" translate="label" type="select" sortOrder="30" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Email Customer</label>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/authorizenet_acceptjs/email_customer</config_path>
                    </field>
                    <field id="cvv_enabled" translate="label" type="select" sortOrder="40" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Enable Credit Card Verification Field</label>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/authorizenet_acceptjs/cvv_enabled</config_path>
                    </field>
                    <field id="cctypes" translate="label" type="multiselect" sortOrder="50" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Credit Card Types</label>
                        <source_model>Magento\AuthorizenetAcceptjs\Model\Adminhtml\Source\Cctype</source_model>
                        <config_path>payment/authorizenet_acceptjs/cctypes</config_path>
                    </field>
                    <field id="allowspecific" translate="label" type="allowspecific" sortOrder="60" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                        <label>Payment from Applicable Countries</label>
                        <source_model>Magento\Payment\Model\Config\Source\Allspecificcountries</source_model>
                        <config_path>payment/authorizenet_acceptjs/allowspecific</config_path>
                    </field>
                    <field id="specificcountry" translate="label" type="multiselect" sortOrder="70" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Payment from Specific Countries</label>
                        <source_model>Magento\Directory\Model\Config\Source\Country</source_model>
                        <config_path>payment/authorizenet_acceptjs/specificcountry</config_path>
                    </field>
                    <field id="min_order_total" translate="label" type="text" sortOrder="80" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Minimum Order Total</label>
                        <config_path>payment/authorizenet_acceptjs/min_order_total</config_path>
                        <validate>validate-number validate-zero-or-greater</validate>
                    </field>
                    <field id="max_order_total" translate="label" type="text" sortOrder="90" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Maximum Order Total</label>
                        <config_path>payment/authorizenet_acceptjs/max_order_total</config_path>
                        <validate>validate-number validate-zero-or-greater</validate>
                    </field>
                    <field id="sort_order" translate="label" type="text" sortOrder="100" showInDefault="1" showInWebsite="1" showInStore="0">
                        <label>Sort Order</label>
                        <frontend_class>validate-number</frontend_class>
                        <config_path>payment/authorizenet_acceptjs/sort_order</config_path>
                    </field>
                </group>
            </group>
        </section>
    </system>
</config>
