123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631 |
- <?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:framework:ObjectManager/etc/config.xsd">
- <!-- Payment Method Facade configuration -->
- <virtualType name="BraintreeFacade" type="Magento\Payment\Model\Method\Adapter">
- <arguments>
- <argument name="code" xsi:type="const">Magento\Braintree\Model\Ui\ConfigProvider::CODE</argument>
- <argument name="formBlockType" xsi:type="string">Magento\Braintree\Block\Form</argument>
- <argument name="infoBlockType" xsi:type="string">Magento\Braintree\Block\Info</argument>
- <argument name="valueHandlerPool" xsi:type="object">BraintreeValueHandlerPool</argument>
- <argument name="validatorPool" xsi:type="object">BraintreeValidatorPool</argument>
- <argument name="commandPool" xsi:type="object">BraintreeCommandPool</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalFacade" type="BraintreeFacade">
- <arguments>
- <argument name="code" xsi:type="const">Magento\Braintree\Model\Ui\PayPal\ConfigProvider::PAYPAL_CODE</argument>
- <argument name="infoBlockType" xsi:type="string">BraintreePayPalInfo</argument>
- <argument name="valueHandlerPool" xsi:type="object">BraintreePayPalValueHandlerPool</argument>
- <argument name="validatorPool" xsi:type="object">BraintreePayPalValidatorPool</argument>
- <argument name="commandPool" xsi:type="object">BraintreePayPalCommandPool</argument>
- </arguments>
- </virtualType>
- <!-- Configuration for Vault payments -->
- <virtualType name="BraintreeVaultPaymentConfig" type="Magento\Payment\Gateway\Config\Config">
- <arguments>
- <argument name="methodCode" xsi:type="const">Magento\Braintree\Model\Ui\ConfigProvider::CC_VAULT_CODE</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVaultPaymentValueHandler" type="VaultPaymentDefaultValueHandler">
- <arguments>
- <argument name="configInterface" xsi:type="object">BraintreeVaultPaymentConfig</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVaultPaymentValueHandlerPool" type="VaultPaymentValueHandlerPool">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="default" xsi:type="string">BraintreeVaultPaymentValueHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeCreditCardVaultFacade" type="Magento\Vault\Model\Method\Vault">
- <arguments>
- <argument name="config" xsi:type="object">BraintreeVaultPaymentConfig</argument>
- <argument name="valueHandlerPool" xsi:type="object">BraintreeVaultPaymentValueHandlerPool</argument>
- <argument name="vaultProvider" xsi:type="object">BraintreeFacade</argument>
- <argument name="code" xsi:type="const">Magento\Braintree\Model\Ui\ConfigProvider::CC_VAULT_CODE</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultPaymentConfig" type="Magento\Payment\Gateway\Config\Config">
- <arguments>
- <argument name="methodCode" xsi:type="const">Magento\Braintree\Model\Ui\PayPal\ConfigProvider::PAYPAL_VAULT_CODE</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultPaymentValueHandler" type="VaultPaymentDefaultValueHandler">
- <arguments>
- <argument name="configInterface" xsi:type="object">BraintreePayPalVaultPaymentConfig</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultPaymentValueHandlerPool" type="VaultPaymentValueHandlerPool">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="default" xsi:type="string">BraintreePayPalVaultPaymentValueHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultFacade" type="Magento\Vault\Model\Method\Vault">
- <arguments>
- <argument name="config" xsi:type="object">BraintreePayPalVaultPaymentConfig</argument>
- <argument name="valueHandlerPool" xsi:type="object">BraintreePayPalVaultPaymentValueHandlerPool</argument>
- <argument name="vaultProvider" xsi:type="object">BraintreePayPalFacade</argument>
- <argument name="code" xsi:type="const">Magento\Braintree\Model\Ui\PayPal\ConfigProvider::PAYPAL_VAULT_CODE</argument>
- </arguments>
- </virtualType>
- <!-- END Configuration for Vault payments -->
- <!-- Configuration reader -->
- <type name="Magento\Braintree\Gateway\Config\Config">
- <arguments>
- <argument name="methodCode" xsi:type="const">Magento\Braintree\Model\Ui\ConfigProvider::CODE</argument>
- </arguments>
- </type>
- <type name="Magento\Braintree\Gateway\Config\PayPal\Config">
- <arguments>
- <argument name="methodCode" xsi:type="const">Magento\Braintree\Model\Ui\PayPal\ConfigProvider::PAYPAL_CODE</argument>
- </arguments>
- </type>
- <!-- Logger, initialized with BraintreeConfig -->
- <virtualType name="BraintreeLoggerForTransactionSale" type="Magento\Payment\Model\Method\Logger">
- <arguments>
- <argument name="config" xsi:type="object">Magento\Braintree\Gateway\Config\Config</argument>
- </arguments>
- </virtualType>
- <type name="Magento\Braintree\Gateway\Http\Client\TransactionSale">
- <arguments>
- <argument name="customLogger" xsi:type="object">BraintreeLoggerForTransactionSale</argument>
- </arguments>
- </type>
- <type name="Magento\Braintree\Gateway\Http\Client\TransactionSubmitForSettlement">
- <arguments>
- <argument name="customLogger" xsi:type="object">BraintreeLoggerForTransactionSale</argument>
- </arguments>
- </type>
- <type name="Magento\Braintree\Gateway\Http\Client\TransactionRefund">
- <arguments>
- <argument name="customLogger" xsi:type="object">BraintreeLoggerForTransactionSale</argument>
- </arguments>
- </type>
- <type name="Magento\Braintree\Gateway\Http\Client\TransactionVoid">
- <arguments>
- <argument name="customLogger" xsi:type="object">BraintreeLoggerForTransactionSale</argument>
- </arguments>
- </type>
- <!-- END Logger, initialized with BraintreeConfig -->
- <!-- Commands infrastructure -->
- <virtualType name="BraintreeCommandPool" type="Magento\Payment\Gateway\Command\CommandPool">
- <arguments>
- <argument name="commands" xsi:type="array">
- <item name="authorize" xsi:type="string">BraintreeAuthorizeCommand</item>
- <item name="sale" xsi:type="string">BraintreeSaleCommand</item>
- <item name="capture" xsi:type="string">BraintreeCaptureStrategyCommand</item>
- <item name="settlement" xsi:type="string">BraintreeCaptureCommand</item>
- <item name="vault_authorize" xsi:type="string">BraintreeVaultAuthorizeCommand</item>
- <item name="vault_sale" xsi:type="string">BraintreeVaultSaleCommand</item>
- <item name="vault_capture" xsi:type="string">BraintreeVaultCaptureCommand</item>
- <item name="void" xsi:type="string">BraintreeVoidCommand</item>
- <item name="refund" xsi:type="string">BraintreeRefundCommand</item>
- <item name="cancel" xsi:type="string">Magento\Braintree\Gateway\CancelCommand</item>
- <item name="deny_payment" xsi:type="string">Magento\Braintree\Gateway\CancelCommand</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalCommandPool" type="Magento\Payment\Gateway\Command\CommandPool">
- <arguments>
- <argument name="commands" xsi:type="array">
- <item name="authorize" xsi:type="string">BraintreePayPalAuthorizeCommand</item>
- <item name="sale" xsi:type="string">BraintreePayPalSaleCommand</item>
- <item name="capture" xsi:type="string">BraintreePayPalCaptureStrategyCommand</item>
- <item name="settlement" xsi:type="string">BraintreeCaptureCommand</item>
- <item name="vault_authorize" xsi:type="string">BraintreePayPalVaultAuthorizeCommand</item>
- <item name="vault_sale" xsi:type="string">BraintreePayPalVaultSaleCommand</item>
- <item name="vault_capture" xsi:type="string">BraintreeVaultCaptureCommand</item>
- <item name="void" xsi:type="string">BraintreeVoidCommand</item>
- <item name="refund" xsi:type="string">BraintreeRefundCommand</item>
- <item name="cancel" xsi:type="string">Magento\Braintree\Gateway\CancelCommand</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeCaptureStrategyCommand" type="Magento\Braintree\Gateway\Command\CaptureStrategyCommand">
- <arguments>
- <argument name="commandPool" xsi:type="object">BraintreeCommandPool</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalCaptureStrategyCommand" type="Magento\Braintree\Gateway\Command\CaptureStrategyCommand">
- <arguments>
- <argument name="commandPool" xsi:type="object">BraintreePayPalCommandPool</argument>
- </arguments>
- </virtualType>
- <!-- END Commands infrastructure -->
- <!-- Command managers section for Vault -->
- <virtualType name="BraintreeCommandManager" type="Magento\Payment\Gateway\Command\CommandManager">
- <arguments>
- <argument name="commandPool" xsi:type="object">BraintreeCommandPool</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalCommandManager" type="Magento\Payment\Gateway\Command\CommandManager">
- <arguments>
- <argument name="commandPool" xsi:type="object">BraintreePayPalCommandPool</argument>
- </arguments>
- </virtualType>
- <type name="Magento\Payment\Gateway\Command\CommandManagerPool">
- <arguments>
- <argument name="executors" xsi:type="array">
- <item name="braintree" xsi:type="string">BraintreeCommandManager</item>
- <item name="braintree_paypal" xsi:type="string">BraintreePayPalCommandManager</item>
- </argument>
- </arguments>
- </type>
- <!-- END command managers section for Vault -->
- <type name="Magento\Braintree\Gateway\Request\ChannelDataBuilder">
- <arguments>
- <argument name="config" xsi:type="object">Magento\Braintree\Gateway\Config\Config</argument>
- </arguments>
- </type>
- <virtualType name="Magento\Braintree\Gateway\ErrorMapper\VirtualConfigReader" type="Magento\Payment\Gateway\ErrorMapper\VirtualConfigReader">
- <arguments>
- <argument name="fileName" xsi:type="string">braintree_error_mapping.xml</argument>
- </arguments>
- </virtualType>
- <virtualType name="Magento\Braintree\Gateway\ErrorMapper\VirtualMappingData" type="Magento\Payment\Gateway\ErrorMapper\MappingData">
- <arguments>
- <argument name="reader" xsi:type="object">Magento\Braintree\Gateway\ErrorMapper\VirtualConfigReader</argument>
- <argument name="cacheId" xsi:type="string">braintree_error_mapper</argument>
- </arguments>
- </virtualType>
- <virtualType name="Magento\Braintree\Gateway\ErrorMapper\VirtualErrorMessageMapper" type="Magento\Payment\Gateway\ErrorMapper\ErrorMessageMapper">
- <arguments>
- <argument name="messageMapping" xsi:type="object">Magento\Braintree\Gateway\ErrorMapper\VirtualMappingData</argument>
- </arguments>
- </virtualType>
- <!-- Braintree commands -->
- <virtualType name="BraintreeAuthorizeCommand" type="Magento\Payment\Gateway\Command\GatewayCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreeAuthorizeRequest</argument>
- <argument name="transferFactory" xsi:type="object">Magento\Braintree\Gateway\Http\TransferFactory</argument>
- <argument name="client" xsi:type="object">Magento\Braintree\Gateway\Http\Client\TransactionSale</argument>
- <argument name="handler" xsi:type="object">BraintreeAuthorizationHandler</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\ResponseValidator</argument>
- <argument name="errorMessageMapper" xsi:type="object">Magento\Braintree\Gateway\ErrorMapper\VirtualErrorMessageMapper</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeAuthorizeRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="customer" xsi:type="string">Magento\Braintree\Gateway\Request\CustomerDataBuilder</item>
- <item name="payment" xsi:type="string">Magento\Braintree\Gateway\Request\PaymentDataBuilder</item>
- <item name="channel" xsi:type="string">Magento\Braintree\Gateway\Request\ChannelDataBuilder</item>
- <item name="address" xsi:type="string">Magento\Braintree\Gateway\Request\AddressDataBuilder</item>
- <item name="vault" xsi:type="string">Magento\Braintree\Gateway\Request\VaultDataBuilder</item>
- <item name="3dsecure" xsi:type="string">Magento\Braintree\Gateway\Request\ThreeDSecureDataBuilder</item>
- <item name="device_data" xsi:type="string">Magento\Braintree\Gateway\Request\KountPaymentDataBuilder</item>
- <item name="dynamic_descriptor" xsi:type="string">Magento\Braintree\Gateway\Request\DescriptorDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- <item name="merchant_account" xsi:type="string">Magento\Braintree\Gateway\Request\MerchantAccountDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- Authorization&Capture command -->
- <virtualType name="BraintreeSaleCommand" type="BraintreeAuthorizeCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreeSaleRequest</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeSaleRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="authorize" xsi:type="string">BraintreeAuthorizeRequest</item>
- <item name="settlement" xsi:type="string">Magento\Braintree\Gateway\Request\SettlementDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- Capture commands -->
- <virtualType name="BraintreeCaptureCommand" type="Magento\Payment\Gateway\Command\GatewayCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreeCaptureRequest</argument>
- <argument name="transferFactory" xsi:type="object">Magento\Braintree\Gateway\Http\TransferFactory</argument>
- <argument name="client" xsi:type="object">Magento\Braintree\Gateway\Http\Client\TransactionSubmitForSettlement</argument>
- <argument name="handler" xsi:type="object">Magento\Braintree\Gateway\Response\TransactionIdHandler</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\ResponseValidator</argument>
- <argument name="errorMessageMapper" xsi:type="object">Magento\Braintree\Gateway\ErrorMapper\VirtualErrorMessageMapper</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeCaptureRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="capture" xsi:type="string">Magento\Braintree\Gateway\Request\CaptureDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- Vault Authorization command -->
- <virtualType name="BraintreeVaultAuthorizeCommand" type="Magento\Payment\Gateway\Command\GatewayCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreeVaultAuthorizeRequest</argument>
- <argument name="transferFactory" xsi:type="object">Magento\Braintree\Gateway\Http\TransferFactory</argument>
- <argument name="client" xsi:type="object">Magento\Braintree\Gateway\Http\Client\TransactionSale</argument>
- <argument name="handler" xsi:type="object">BraintreeVaultResponseHandler</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\ResponseValidator</argument>
- <argument name="errorMessageMapper" xsi:type="object">Magento\Braintree\Gateway\ErrorMapper\VirtualErrorMessageMapper</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVaultAuthorizeRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="customer" xsi:type="string">Magento\Braintree\Gateway\Request\CustomerDataBuilder</item>
- <item name="payment" xsi:type="string">Magento\Braintree\Gateway\Request\PaymentDataBuilder</item>
- <item name="channel" xsi:type="string">Magento\Braintree\Gateway\Request\ChannelDataBuilder</item>
- <item name="address" xsi:type="string">Magento\Braintree\Gateway\Request\AddressDataBuilder</item>
- <item name="3dsecure" xsi:type="string">Magento\Braintree\Gateway\Request\ThreeDSecureDataBuilder</item>
- <item name="device_data" xsi:type="string">Magento\Braintree\Gateway\Request\KountPaymentDataBuilder</item>
- <item name="dynamic_descriptor" xsi:type="string">Magento\Braintree\Gateway\Request\DescriptorDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- <item name="merchant_account" xsi:type="string">Magento\Braintree\Gateway\Request\MerchantAccountDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- Vault Authorization&Capture command -->
- <virtualType name="BraintreeVaultSaleCommand" type="BraintreeVaultAuthorizeCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreeVaultSaleRequest</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVaultSaleRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="authorize" xsi:type="string">BraintreeVaultAuthorizeRequest</item>
- <item name="settlement" xsi:type="string">Magento\Braintree\Gateway\Request\SettlementDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- Vault Capture (Sale actually) command -->
- <virtualType name="BraintreeVaultCaptureCommand" type="Magento\Payment\Gateway\Command\GatewayCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreeVaultCaptureRequest</argument>
- <argument name="transferFactory" xsi:type="object">Magento\Braintree\Gateway\Http\TransferFactory</argument>
- <argument name="client" xsi:type="object">Magento\Braintree\Gateway\Http\Client\TransactionSale</argument>
- <argument name="handler" xsi:type="object">Magento\Braintree\Gateway\Response\TransactionIdHandler</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\ResponseValidator</argument>
- <argument name="errorMessageMapper" xsi:type="object">Magento\Braintree\Gateway\ErrorMapper\VirtualErrorMessageMapper</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVaultCaptureRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="vault_capture" xsi:type="string">Magento\Braintree\Gateway\Request\VaultCaptureDataBuilder</item>
- <item name="settlement" xsi:type="string">Magento\Braintree\Gateway\Request\SettlementDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- <item name="merchant_account" xsi:type="string">Magento\Braintree\Gateway\Request\MerchantAccountDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END Braintree commands -->
- <!-- PayPal commands -->
- <virtualType name="BraintreePayPalAuthorizeCommand" type="BraintreeAuthorizeCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreePayPalAuthorizeRequest</argument>
- <argument name="handler" xsi:type="object">BraintreePayPalResponseHandler</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalAuthorizeRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="customer" xsi:type="string">Magento\Braintree\Gateway\Request\CustomerDataBuilder</item>
- <item name="payment" xsi:type="string">Magento\Braintree\Gateway\Request\PaymentDataBuilder</item>
- <item name="channel" xsi:type="string">Magento\Braintree\Gateway\Request\ChannelDataBuilder</item>
- <item name="vault" xsi:type="string">Magento\Braintree\Gateway\Request\PayPal\VaultDataBuilder</item>
- <item name="device_data" xsi:type="string">Magento\Braintree\Gateway\Request\PayPal\DeviceDataBuilder</item>
- <item name="dynamic_descriptor" xsi:type="string">Magento\Braintree\Gateway\Request\DescriptorDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- <item name="merchant_account" xsi:type="string">Magento\Braintree\Gateway\Request\MerchantAccountDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- PayPal Authorization&Capture command -->
- <virtualType name="BraintreePayPalSaleCommand" type="BraintreePayPalAuthorizeCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreePayPalSaleRequest</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalSaleRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="authorize" xsi:type="string">BraintreePayPalAuthorizeRequest</item>
- <item name="settlement" xsi:type="string">Magento\Braintree\Gateway\Request\SettlementDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- PayPal Vault Authorization command -->
- <virtualType name="BraintreePayPalVaultAuthorizeCommand" type="BraintreeVaultAuthorizeCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreePayPalVaultAuthorizeRequest</argument>
- <argument name="handler" xsi:type="object">BraintreePayPalVaultResponseHandler</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultAuthorizeRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="customer" xsi:type="string">Magento\Braintree\Gateway\Request\CustomerDataBuilder</item>
- <item name="payment" xsi:type="string">Magento\Braintree\Gateway\Request\PaymentDataBuilder</item>
- <item name="channel" xsi:type="string">Magento\Braintree\Gateway\Request\ChannelDataBuilder</item>
- <item name="address" xsi:type="string">Magento\Braintree\Gateway\Request\AddressDataBuilder</item>
- <item name="dynamic_descriptor" xsi:type="string">Magento\Braintree\Gateway\Request\DescriptorDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- <item name="merchant_account" xsi:type="string">Magento\Braintree\Gateway\Request\MerchantAccountDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- Vault Authorization&Capture command -->
- <virtualType name="BraintreePayPalVaultSaleCommand" type="BraintreePayPalVaultAuthorizeCommand">
- <arguments>
- <argument name="requestBuilder" xsi:type="object">BraintreePayPalVaultSaleRequest</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultSaleRequest" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="authorize" xsi:type="string">BraintreePayPalVaultAuthorizeRequest</item>
- <item name="settlement" xsi:type="string">Magento\Braintree\Gateway\Request\SettlementDataBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END PayPal commands -->
- <!-- Value handlers infrastructure -->
- <type name="Magento\Braintree\Gateway\Response\VaultDetailsHandler">
- <arguments>
- <argument name="paymentTokenFactory" xsi:type="object">Magento\Vault\Api\Data\PaymentTokenFactoryInterface</argument>
- </arguments>
- </type>
- <virtualType name="BraintreeValueHandlerPool" type="Magento\Payment\Gateway\Config\ValueHandlerPool">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="default" xsi:type="string">BraintreeConfigValueHandler</item>
- <item name="can_void" xsi:type="string">Magento\Braintree\Gateway\Config\CanVoidHandler</item>
- <item name="can_cancel" xsi:type="string">Magento\Braintree\Gateway\Config\CanVoidHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeConfigValueHandler" type="Magento\Payment\Gateway\Config\ConfigValueHandler">
- <arguments>
- <argument name="configInterface" xsi:type="object">Magento\Braintree\Gateway\Config\Config</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeAuthorizationHandler" type="Magento\Payment\Gateway\Response\HandlerChain">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="payment_details" xsi:type="string">Magento\Braintree\Gateway\Response\PaymentDetailsHandler</item>
- <item name="txn_id" xsi:type="string">Magento\Braintree\Gateway\Response\TransactionIdHandler</item>
- <item name="card_details" xsi:type="string">Magento\Braintree\Gateway\Response\CardDetailsHandler</item>
- <item name="risk_data" xsi:type="string">Magento\Braintree\Gateway\Response\RiskDataHandler</item>
- <item name="vault_details" xsi:type="string">Magento\Braintree\Gateway\Response\VaultDetailsHandler</item>
- <item name="3d_secure" xsi:type="string">Magento\Braintree\Gateway\Response\ThreeDSecureDetailsHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVaultResponseHandler" type="Magento\Payment\Gateway\Response\HandlerChain">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="payment_details" xsi:type="string">Magento\Braintree\Gateway\Response\PaymentDetailsHandler</item>
- <item name="txn_id" xsi:type="string">Magento\Braintree\Gateway\Response\TransactionIdHandler</item>
- <item name="card_details" xsi:type="string">Magento\Braintree\Gateway\Response\CardDetailsHandler</item>
- <item name="risk_data" xsi:type="string">Magento\Braintree\Gateway\Response\RiskDataHandler</item>
- <item name="3d_secure" xsi:type="string">Magento\Braintree\Gateway\Response\ThreeDSecureDetailsHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END Value handlers infrastructure -->
- <!-- PayPal value handlers infrastructure -->
- <type name="Magento\Braintree\Gateway\Response\PayPal\VaultDetailsHandler">
- <arguments>
- <argument name="paymentTokenFactory" xsi:type="object">Magento\Vault\Api\Data\PaymentTokenFactoryInterface</argument>
- </arguments>
- </type>
- <virtualType name="BraintreePayPalValueHandlerPool" type="Magento\Payment\Gateway\Config\ValueHandlerPool">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="default" xsi:type="string">BraintreePayPalConfigValueHandler</item>
- <item name="can_void" xsi:type="string">Magento\Braintree\Gateway\Config\CanVoidHandler</item>
- <item name="can_cancel" xsi:type="string">Magento\Braintree\Gateway\Config\CanVoidHandler</item>
- <item name="can_capture" xsi:type="string">Magento\Braintree\Gateway\Config\CanVoidHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalConfigValueHandler" type="Magento\Payment\Gateway\Config\ConfigValueHandler">
- <arguments>
- <argument name="configInterface" xsi:type="object">Magento\Braintree\Gateway\Config\PayPal\Config</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalResponseHandler" type="Magento\Payment\Gateway\Response\HandlerChain">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="payment_details" xsi:type="string">Magento\Braintree\Gateway\Response\PaymentDetailsHandler</item>
- <item name="txn_id" xsi:type="string">Magento\Braintree\Gateway\Response\TransactionIdHandler</item>
- <item name="paypal_details" xsi:type="string">Magento\Braintree\Gateway\Response\PayPalDetailsHandler</item>
- <item name="vault_details" xsi:type="string">Magento\Braintree\Gateway\Response\PayPal\VaultDetailsHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalVaultResponseHandler" type="Magento\Payment\Gateway\Response\HandlerChain">
- <arguments>
- <argument name="handlers" xsi:type="array">
- <item name="payment_details" xsi:type="string">Magento\Braintree\Gateway\Response\PaymentDetailsHandler</item>
- <item name="txn_id" xsi:type="string">Magento\Braintree\Gateway\Response\TransactionIdHandler</item>
- <item name="paypal_details" xsi:type="string">Magento\Braintree\Gateway\Response\PayPalDetailsHandler</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END PayPal value handlers infrastructure -->
- <!-- Void Command -->
- <virtualType name="BraintreeVoidCommand" type="Magento\Payment\Gateway\Command\GatewayCommand">
- <arguments>
- <argument name="client" xsi:type="object">Magento\Braintree\Gateway\Http\Client\TransactionVoid</argument>
- <argument name="requestBuilder" xsi:type="object">BraintreeVoidRequestBuilder</argument>
- <argument name="handler" xsi:type="object">Magento\Braintree\Gateway\Response\VoidHandler</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\GeneralResponseValidator</argument>
- <argument name="transferFactory" xsi:type="object">Magento\Braintree\Gateway\Http\TransferFactory</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeVoidRequestBuilder" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="void" xsi:type="string">Magento\Braintree\Gateway\Request\VoidDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END Void Command -->
- <!-- Cancel Command -->
- <virtualType name="Magento\Braintree\Gateway\CancelCommand" type="BraintreeVoidCommand">
- <arguments>
- <argument name="handler" xsi:type="object">Magento\Braintree\Gateway\Response\CancelDetailsHandler</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\CancelResponseValidator</argument>
- </arguments>
- </virtualType>
- <!-- END Cancel Command -->
- <!-- Refund Command -->
- <virtualType name="BraintreeRefundCommand" type="Magento\Payment\Gateway\Command\GatewayCommand">
- <arguments>
- <argument name="client" xsi:type="object">Magento\Braintree\Gateway\Http\Client\TransactionRefund</argument>
- <argument name="requestBuilder" xsi:type="object">BraintreeRefundBuilder</argument>
- <argument name="validator" xsi:type="object">Magento\Braintree\Gateway\Validator\GeneralResponseValidator</argument>
- <argument name="handler" xsi:type="object">Magento\Braintree\Gateway\Response\RefundHandler</argument>
- <argument name="transferFactory" xsi:type="object">Magento\Braintree\Gateway\Http\TransferFactory</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeRefundBuilder" type="Magento\Payment\Gateway\Request\BuilderComposite">
- <arguments>
- <argument name="builders" xsi:type="array">
- <item name="refund" xsi:type="string">Magento\Braintree\Gateway\Request\RefundDataBuilder</item>
- <item name="store" xsi:type="string">Magento\Braintree\Gateway\Request\StoreConfigBuilder</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END Refund Command -->
- <!-- Braintree validators infrastructure -->
- <virtualType name="BraintreeCountryValidator" type="Magento\Payment\Gateway\Validator\CountryValidator">
- <arguments>
- <argument name="config" xsi:type="object">Magento\Braintree\Gateway\Config\Config</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeValidatorPool" type="Magento\Payment\Gateway\Validator\ValidatorPool">
- <arguments>
- <argument name="validators" xsi:type="array">
- <item name="country" xsi:type="string">BraintreeCountryValidator</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END Braintree validators infrastructure -->
- <!-- Braintree PayPal validators -->
- <virtualType name="BraintreePayPalCountryValidator" type="Magento\Payment\Gateway\Validator\CountryValidator">
- <arguments>
- <argument name="config" xsi:type="object">Magento\Braintree\Gateway\Config\PayPal\Config</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreePayPalValidatorPool" type="Magento\Payment\Gateway\Validator\ValidatorPool">
- <arguments>
- <argument name="validators" xsi:type="array">
- <item name="country" xsi:type="string">BraintreePayPalCountryValidator</item>
- </argument>
- </arguments>
- </virtualType>
- <!-- END Braintree PayPal validators -->
- <type name="Magento\Braintree\Block\Info">
- <arguments>
- <argument name="config" xsi:type="object">Magento\Braintree\Gateway\Config\Config</argument>
- </arguments>
- </type>
- <virtualType name="BraintreePayPalInfo" type="Magento\Braintree\Block\Info">
- <arguments>
- <argument name="config" xsi:type="object">Magento\Braintree\Gateway\Config\PayPal\Config</argument>
- </arguments>
- </virtualType>
- <!-- Settlement Report Section -->
- <virtualType name="BraintreeTransactionsCollectionFactoryForReporting" type="Magento\Framework\View\Element\UiComponent\DataProvider\CollectionFactory">
- <arguments>
- <argument name="collections" xsi:type="array">
- <item name="braintree_report_data_source" xsi:type="string">Magento\Braintree\Model\Report\TransactionsCollection</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeTransactionsReporting" type="Magento\Framework\View\Element\UiComponent\DataProvider\Reporting">
- <arguments>
- <argument name="collectionFactory" xsi:type="object">BraintreeTransactionsCollectionFactoryForReporting</argument>
- </arguments>
- </virtualType>
- <virtualType name="BraintreeTransactionsDataProvider" type="Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider">
- <arguments>
- <argument name="reporting" xsi:type="object">BraintreeTransactionsReporting</argument>
- </arguments>
- </virtualType>
- <type name="Magento\Braintree\Model\Report\ConditionAppliers\AppliersPool">
- <arguments>
- <argument name="appliers" xsi:type="array">
- <item name="Braintree\TextNode" xsi:type="object">Magento\Braintree\Model\Report\ConditionAppliers\Text</item>
- <item name="Braintree\RangeNode" xsi:type="object">Magento\Braintree\Model\Report\ConditionAppliers\Range</item>
- <item name="Braintree\MultipleValueNode" xsi:type="object">Magento\Braintree\Model\Report\ConditionAppliers\MultipleValue</item>
- </argument>
- </arguments>
- </type>
- <!-- END Settlement Report Section -->
- <type name="Magento\Config\Model\Config\TypePool">
- <arguments>
- <argument name="sensitive" xsi:type="array">
- <item name="payment/braintree/merchant_id" xsi:type="string">1</item>
- <item name="payment/braintree/private_key" xsi:type="string">1</item>
- <item name="payment/braintree/merchant_account_id" xsi:type="string">1</item>
- <item name="payment/braintree/kount_id" xsi:type="string">1</item>
- <item name="payment/braintree_paypal/merchant_name_override" xsi:type="string">1</item>
- <item name="payment/braintree/descriptor_phone" xsi:type="string">1</item>
- <item name="payment/braintree/descriptor_url" xsi:type="string">1</item>
- </argument>
- <argument name="environment" xsi:type="array">
- <item name="payment/braintree/descriptor_url" xsi:type="string">1</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\Quote\Api\CartManagementInterface">
- <plugin name="order_cancellation" type="Magento\Braintree\Plugin\OrderCancellation"/>
- </type>
- </config>
|