-
Notifications
You must be signed in to change notification settings - Fork 9.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Braintree sandbox errors when using alternative Merchant Account ID on Magento CE 2.1.0 #5910
Comments
Hi, @flecxie. Perhaps a problem related to created merchant account. We have 3 different merchant account for testing and works with/without 3D secure. I suppose you need to contact with Braintree support and ask to enable 3D secure for your new merchant account. |
@joni-jones: Appreciate your help! I have checked with Braintree and they confirmed that 3D secure is enabled for all our sandbox merchant accounts, they also provided the following information:
I have also checked & can reproduce this issue on the developer branch: all payments fail when I specify the alternative merchant account id & enable 3D Secure Verification in the Magento backend. When I disable 3D secure verification or when I change my merchant account id to the default one then payments do go through. Happy to give you access to our test server if that helps... |
Digging through the code a bit more I believe that we need to specify merchantAccountId in ClientTokenGateway.php before the token is generated. When I hack the following line in the generate function of vendor/braintree/braintree_php/lib/Braintree/ClientTokenGateway.php then the payment does go through under my 'testtesttes' merchant account:
See https://developers.braintreepayments.com/reference/request/client-token/generate/php#merchant_account_id for more information. |
Was able to resolve this issue for me by applying the following changes on Magento CE 2.1.0: vendor/braintree/braintree_php/lib/Braintree/ClientTokenGateway.php:
vendor/braintree/braintree_php/lib/Braintree/Configuration.php:
vendor/magento/module-braintree/Model/Adapter/BraintreeAdapter.php:
|
Created internal ticket MAGETWO-56342. |
…ernative Merchant Account ID
…ernative Merchant Account ID
Fixed issues: - MAGETWO-56344: [Github] #5902 Braintree doesn't work when using table prefixing - MAGETWO-55953: Exception occurs when tracking shipment with invalid FedEx tracking number - MAGETWO-56801: [GITHUB] Fixed column description for "website_id" column #4388 - MAGETWO-56745: [Github] PayPal Express Checkout "Display on Shopping Cart -> NO" does not work - MAGETWO-56467: Free shipping threshold fields are mixed up in UPS and Fedex configurations - MAGETWO-56342: [Github] #5910 Braintree sandbox errors when using alternative Merchant Account ID - MAGETWO-56115: [Github] #5857 Impossible to configure custom availability gateway validator - MAGETWO-54134: CE module depends on EE code - MAGETWO-56447: UPS not providing shipping rates for Puerto Rico
Hi @flecxie Fix for MAGETWO-56342 ticket is already merged to develop branch. |
FYI: Noticed that this hasn't been fixed yet in Magento CE 2.1.2 - still need to apply my hacks to make multi-currency setup work. |
…ernative Merchant Account ID for 2.1.x
Fixed issues: - MAGETWO-56910: Braintree doesn't work when using table prefixing - MAGETWO-57426: [Github] Braintree Vault payments causing GET order API to throw error - MAGETWO-56932: Checkout page freezes when ordering Virtual Gift Card with Authorize.net set to Authorize and Capture - MAGETWO-57037: UPS not providing shipping rates for Puerto Rico - MAGETWO-57086: [Github] #5910 Braintree sandbox errors when using alternative Merchant Account ID
@magento-engcom-team has this been fixed on 2.2.2? I am experiencing this issue for a Second website please see here: https://magento.stackexchange.com/questions/217570/magento-2-braintree-payment-method-error-for-second-website |
When using an alternative Merchant Account ID on a vanilla Magento CE 2.1.0 payments are unsuccessful and Braintree responds with error id 91584 (Merchant account must match the 3D Secure authorization merchant account.).
Steps to reproduce
Expected result
Actual result
When the Merchant Account ID is either removed or changed to the default one (visible in Braintree under Settings -> Processing -> Merchant Accounts) then the transaction is successful.
Any chance that merchantaccount & merchantaccountid got mixed up somewhere (when displaying the 3D secure window)?
The text was updated successfully, but these errors were encountered: