<?xml version="1.0"?>
<!--
/**
* Copyright © 2020 CollinsHarper. All rights reserved.
* See LICENSE.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="cybersource_section" translate="label" type="text" sortOrder="5" showInDefault="1" showInWebsite="1" showInStore="1">
                <label>CyberSource</label>
                <comment><![CDATA[The CyberSource Payment Management Platform enables merchants to accept and manage payments, mitigate fraud, and secure their payment data.]]></comment>
                <attribute type="expanded">1</attribute>
                <fieldset_css>complex</fieldset_css>
                <!--<frontend_model>Magento\Config\Block\System\Config\Form\Fieldset</frontend_model>-->
                <frontend_model>CyberSource\Core\Block\Adminhtml\Config\Fieldset</frontend_model>
                <group id="cybersource_general" translate="label" type="text" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="1">
                    <label>General</label>
                    <field id="debug" translate="label" type="select" sortOrder="140" showInDefault="1" showInWebsite="0" showInStore="1">
                        <label>Debug Mode</label>
                        <comment>Version 3.4.1</comment>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/chcybersource/debug</config_path>
                    </field>
                    <field id="sort_order" translate="label" type="text" sortOrder="150" showInDefault="1" showInWebsite="0" showInStore="1">
                        <label>Sort Order</label>
                        <config_path>payment/chcybersource/sort_order</config_path>
                    </field>
                    <field id="show_exact_error" translate="label" type="select" sortOrder="190" showInDefault="1" showInWebsite="0" showInStore="0">
                        <label>Show exact rejection or error message to users</label>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/chcybersource/show_exact_error</config_path>
                        <comment><![CDATA[If set to "No" the general error message will be displayed in all rejection and error cases.]]></comment>
                    </field>
                    <field id="override_error_page_route" translate="label" type="text" sortOrder="200" showInDefault="1" showInWebsite="1" showInStore="1" canRestore="1">
                        <label>Override payment error route path</label>
                        <config_path>payment/chcybersource/override_error_page_route</config_path>
                        <comment><![CDATA[Specify the error page route path or the "checkout/cart" route is used by default.]]></comment>
                    </field>
                    <group id="cybersourceapi" translate="label" type="text" sortOrder="210" showInDefault="1" showInWebsite="1" showInStore="1">
                        <label>WebService Configuration</label>
                        <field id="merchant_id" translate="label" type="text" sortOrder="5" showInDefault="1" showInWebsite="1" showInStore="0">
                            <label>Merchant ID</label>
                            <config_path>payment/chcybersource/merchant_id</config_path>
                        </field>
                        <field id="use_test_wsdl" translate="label" type="select" sortOrder="7" showInDefault="1" showInWebsite="1" showInStore="0">
                            <label>Test Mode</label>
                            <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                            <config_path>payment/chcybersource/use_test_wsdl</config_path>
                        </field>
                        <field id="developer_id" translate="label" type="text" sortOrder="8" showInDefault="1" showInWebsite="0" showInStore="1">
                            <label>Developer ID</label>
                            <config_path>payment/chcybersource/developer_id</config_path>
                        </field>
                        <group id="cybersourceapi_soap" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="0">
                            <label>SOAP</label>
                            <field id="transaction_key" translate="label" type="obscure" sortOrder="6" showInDefault="1" showInWebsite="1" showInStore="0">
                                <label>Transaction Key</label>
                                <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                                <config_path>payment/chcybersource/transaction_key</config_path>
                            </field>
                            <field id="path_to_wsdl" translate="label" type="text" sortOrder="8" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                                <label>Path to WSDL</label>
                                <config_path>payment/chcybersource/path_to_wsdl</config_path>
                            </field>
                            <field id="path_to_test_wsdl" translate="label" type="text" sortOrder="9" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
                                <label>Path to test WSDL</label>
                                <config_path>payment/chcybersource/path_to_test_wsdl</config_path>
                            </field>
                        </group>
                        <group id="cybersourceapi_rest" translate="label" type="text" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="0">
                            <label>REST</label>
                            <field id="rest_key_id" translate="label" type="text" sortOrder="5" showInDefault="1" showInWebsite="1" showInStore="0">
                                <label>Shared Key ID</label>
                                <config_path>payment/chcybersource/rest_key_id</config_path>
                            </field>
                            <field id="rest_key_value" translate="label" type="obscure" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="0">
                                <label>Shared Key Value</label>
                                <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                                <config_path>payment/chcybersource/rest_key_value</config_path>
                            </field>
                        </group>
                    </group>
                    <group id="cybersource_fingerprint" translate="label" type="text" sortOrder="211" showInDefault="1" showInWebsite="1" showInStore="1">
                        <label>Device Fingerprint</label>
                        <field id="fingerprint_enabled" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="0" showInStore="1">
                            <label>Active</label>
                            <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                            <config_path>payment/chcybersource/fingerprint_enabled</config_path>
                        </field>
                        <field id="fingerprint_org_id" translate="label" type="obscure" sortOrder="20" showInDefault="1" showInWebsite="0" showInStore="1">
                            <label>Org ID</label>
                            <backend_model>Magento\Config\Model\Config\Backend\Encrypted</backend_model>
                            <config_path>payment/chcybersource/org_id</config_path>
                        </field>
                    </group>
                    <group id="cybersource_address" translate="label" type="text" sortOrder="212" showInDefault="1" showInWebsite="1" showInStore="1">
                        <label>Delivery Address Verification Service</label>
                        <field id="address_check_enabled" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="0" showInStore="1">
                            <label>Address verification</label>
                            <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                            <config_path>payment/chcybersource/address_check_enabled</config_path>
                        </field>
                        <field id="address_force_normal" translate="label" type="select" sortOrder="20" showInDefault="1" showInWebsite="0" showInStore="1">
                            <label>Address force normalization</label>
                            <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                            <config_path>payment/chcybersource/address_force_normal</config_path>
                            <depends><field id="address_check_enabled">1</field></depends>
                        </field>
                    </group>
                </group>
                <group id="cybersource_dm" translate="label" type="text" sortOrder="50" showInDefault="1" showInWebsite="1" showInStore="1">
                    <label>Fraud Management</label>
                    <field id="enable_dm_cron" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
                        <label>Enable Fraud Management CRON Job</label>
                        <comment>Please ensure to have the Magento Cron Job Enabled in order to make use of the Fraud Management Cron Job for Fraud Management Transactions. PLEASE NOTE: The default cron job runs every 2 minutes and pulls in converted transactions from the Fraud Management API in last 23 hours.</comment>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/chcybersource/enable_dm_cron</config_path>
                    </field>
                    <field id="dm_fail_sender" translate="label" type="select" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="1" canRestore="1">
                        <label>Fraud Management fail email sender</label>
                        <source_model>Magento\Config\Model\Config\Source\Email\Identity</source_model>
                        <config_path>payment/chcybersource/dm_fail_sender</config_path>
                    </field>
                    <field id="dm_fail_template" translate="label comment" type="select" sortOrder="30" showInDefault="1" showInWebsite="1" showInStore="1" canRestore="1">
                        <label>Fraud Management fail email template</label>
                        <source_model>CyberSource\Core\Model\Config\Source\Email\Template</source_model>
                        <config_path>payment/chcybersource/dm_fail_template</config_path>
                    </field>
                    <field id="enable_dm_accepted_settlement" translate="label" type="select" sortOrder="40" showInDefault="1" showInWebsite="0" showInStore="1">
                        <label>Settle Fraud Management accepted orders automatically</label>
                        <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                        <config_path>payment/chcybersource/enable_dm_accepted_settlement</config_path>
                    </field>
                    <group id="cybersource_dm_ondemand" translate="label" type="text" sortOrder="50" showInDefault="1" showInWebsite="1" showInStore="1">
                        <label>On-Demand Job</label>
                        <field id="dm_report_start_date" translate="label" type="date" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
                        <label>Report Date:</label>
                        <comment>Change the date above to look for transactions at any date in the past, which will look for the next 23 hours from that date.</comment>
                        <frontend_model>CyberSource\Core\Block\Adminhtml\System\Config\DecisionManagerOnDemand</frontend_model>
                        <config_path>payment/chcybersource/dm_report_start_date</config_path>
                    </field>
                    </group>
                </group>
            </group>
        </section>
    </system>
</config>
