Question

I'm using Magento CE 1.9 and the Paypal Express Checkout option. I have it setup to accept Credit Cards without a PayPal account. However, during the checkout process, it is not clear to the customer that he can pay by credit card without a PayPal account:

enter image description here

Is it possible to edit or change the PayPal icon or text to show that credit cards are accepted without a PayPal account?

Was it helpful?

Solution

You can edit that section of the checkout process in this file:

app\design\frontend\base\default\template\paypal\payment\mark.phtml

at approximately line 33 you can see the HTML comment for where PayPal starts

<!-- PayPal Logo -->

You can add text explaining that the client does not need a PayPal account to use a credit card in the appropriate position for your design.

If however you want to edit the button itself using Chrome browser simply right click on the image and click Inspect Element. You can find the image being called in the HTML/CSS and it in your theme files. Be sure to copy this changed image to your package and theme so that it is safe for upgrades.

OTHER TIPS

I came to this page with the same issue.

Jason's answer is correct, though as the question "Any idea where 'getPaymentAcceptanceMarkSrc' is getting its value from?" was never answered, I thought I'd try and get to the bottom of that for the sake of learning a bit more about Magento.

The value is set for use in the mark.phtml template in app\code\core\Mage\Paypal\Block\Standard\Form.php with the following code:

$mark = Mage::getConfig()->getBlockClassName('core/template');
        $mark = new $mark;
        $mark->setTemplate('paypal/payment/mark.phtml')
            ->setPaymentAcceptanceMarkHref($this->_config->getPaymentMarkWhatIsPaypalUrl($locale))
            ->setPaymentAcceptanceMarkSrc($this->_config->getPaymentMarkImageUrl($locale->getLocaleCode()))
        ; // known issue: code above will render only static mark image

This calls the function $this->_config->getPaymentMarkImageUrl to get the URL of the image. This is also a PayPal-module specific function, which can be found in app\code\core\Mage\Paypal\Model\Config.php

The function is as follows

public function getPaymentMarkImageUrl($localeCode, $orderTotal = null, $pal = null, $staticSize = null)
{
    $country = Mage::getStoreConfig(Mage_Paypal_Helper_Data::MERCHANT_COUNTRY_CONFIG_PATH);
    if ($country == Mage_Paypal_Helper_Data::US_COUNTRY) {
        return 'https://www.paypalobjects.com/webstatic/en_US/i/buttons/pp-acceptance-medium.png';
    }
    if ($this->areButtonsDynamic()) {
        return $this->_getDynamicImageUrl(self::EC_BUTTON_TYPE_MARK, $localeCode, $orderTotal, $pal);
    }

    if (null === $staticSize) {
        $staticSize = $this->paymentMarkSize;
    }
    switch ($staticSize) {
        case self::PAYMENT_MARK_37x23:
        case self::PAYMENT_MARK_50x34:
        case self::PAYMENT_MARK_60x38:
        case self::PAYMENT_MARK_180x113:
            break;
        default:
            $staticSize = self::PAYMENT_MARK_37x23;
    }
    return sprintf('https://www.paypal.com/%s/i/logo/PayPal_mark_%s.gif',
        $this->_getSupportedLocaleCode($localeCode), $staticSize);
}

Here we can see that it is loading the image directly from Paypal, rather than there being a configuration setting to override it.

Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange
scroll top