How to remove Venmo option on Magento 2 website

rnewton88
New Community Member

Our Live website has a paypal button with no issues, however we are getting the website patched (Magento 2), and the developer instance of the website has a Paypal button that also shows "Venmo".

How do I remove the Venmo option when someone clicks on Paypal on my website (Magento 2). The developer said it was an account function and that I needed to remove it on my end? Our live website doesn't show Venmo however? The developer site has our paypal credentials but it is in sandbox mode. Will the Venmo option go away if we take it out of sandbox mode?

Thanks

Login to Me Too
3 REPLIES 3

MTS_Chiranjeevi
Moderator
Moderator

Good day @rnewton88,

 

Thank you for posting to the PayPal community.

 

Please try passing the disable-funding=venmo in the PayPal JavaScript SDK

 

<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID&disable-funding=venmo”> </script>

 

https://developer.paypal.com/sdk/js/configuration/#link-disablefunding 

 

Important : By default, funding source eligibility is determined based on a variety of factors. To prevent certain buttons from displaying, see Disable funding in the JavaScript SDK reference.

 

The buttons that display are decided automatically, based on a range of factors, including:

  • Buyer country 

  • Device type

  • Funding sources the buyer has opted to see.

https://developer.paypal.com/sdk/js/reference/#link-whichbuttonswillisee 

 

Sincerely,

Chiranjeevi

PayPal/Braintree MTS

 

If this post or any other was helpful, please enrich the community by giving kudos or accepting it as a solution.

Login to Me Too

svgupta64
Contributor
Contributor

To remove the Venmo button you need to override the below file function so it will remove from the full website. 
File Path: vendor/magento/module-paypal/Model/SdkUrl.php

Function:

 

 

    private function getAllowedFunding(): string
    {
        $payLaterActive = (bool)$this->config->getPayLaterConfigValue('experience_active');

        // If Pay Later is disabled, paylater parameter will be removed from enable-funding parameter list
        if (!$payLaterActive) {
            unset($this->supportedPaymentMethods['paylater']);
        }

        unset($this->supportedPaymentMethods['venmo']); // Venmo buttons will no longer appear on any pages of the Magento website after this line.

        return implode(',', $this->supportedPaymentMethods);
    }

 

Login to Me Too

jessethomas805
New Community Member

I tried the above method and it works, but you should not edit core files.

 

Create a module with a app/code/{namespace}/{module}/etc/fronend/di.xml file like this (M2.4.5)

 

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <!-- Disable Venmo Buttom -->
    <type name="Magento\Paypal\Model\SdkUrl">
        <arguments>
            <argument name="unsupportedPaymentMethods" xsi:type="array">
                <item name="venmo" xsi:type="string">venmo</item>
            </argument>
        </arguments>
    </type>
</config>

 

Login to Me Too

Haven't Found your Answer?

It happens. Hit the "Login to Ask the community" button to create a question for the PayPal community.