Question

I'm making a payment by PayPal as a customer (express & Standard) in IWD OPC and I getting this error. This happened in my both sites after the 2.3.3 updated enter image description here

[2019-10-16 07:11:40] main.CRITICAL: Report ID: webapi-5da6b02296f14; Message: Property "DisableTmpl" does not have accessor method "getDisableTmpl" in class "Magento\Quote\Api\Data\PaymentInterface". {"exception":"[object] (Exception(code: 0): Report ID: webapi-5da6b02296f14; Message: Property \"DisableTmpl\" does not have accessor method \"getDisableTmpl\" in class \"Magento\\Quote\\Api\\Data\\PaymentInterface\". at /home/332092.cloudwaysapps.com/wvrgznubmd/public_html/vendor/magento/framework/Webapi/ErrorProcessor.php:208, LogicException(code: 0): Property \"DisableTmpl\" does not have accessor method \"getDisableTmpl\" in class \"Magento\\Quote\\Api\\Data\\PaymentInterface\". at /home/332092.cloudwaysapps.com/wvrgznubmd/public_html/vendor/magento/framework/Reflection/NameFinder.php:100)"} []

Appreciate any help Thanks, Kobi

Was it helpful?

Solution

Open the below js file and update as per given below then do compilation and test.

File path: vendor/magento/module-checkout/view/frontend/web/js/action/select-payment-method.js

Overwrite to: app/design/frontend/{your theme}/{theme name}/Magento_Checkout/web/js/action/select-payment-method.js

Old:

define([
    '../model/quote'
], function (quote) {
    'use strict';

    return function (paymentMethod) {
        if (paymentMethod) {
            paymentMethod.__disableTmpl = {
                title: true
            };
        }
        quote.paymentMethod(paymentMethod);
    };
});

New:

 define([
    '../model/quote'
], function (quote) {
    'use strict';

    return function (paymentMethod) {
        /*if (paymentMethod) {
            paymentMethod.__disableTmpl = {
                title: true
            };
        }*/
        quote.paymentMethod(paymentMethod);
    };
});

Then do the compilation, then it will work.

Reference link.

OTHER TIPS

It's always no good to modify the core file. It'd be better to override it by copying the file to your theme and put it in Magento_Checkout directory . For example copy the file from vendor/magento/module-checkout/view/frontend/web/js/action/select-payment-method.js to app/design/frontend/{your theme}/{theme name}/Magento_Checkout/web/js/action/select-payment-method.js. Then modify the copied file like ManiMaran A said.

I'm having the same problem at the moment, just using stock paypal express module. And we're getting this error..

Property "DisableTmpl" does not have accessor method "getDisableTmpl" in class "Magento\Quote\Api\Data\PaymentInterface".

In the IWD Onepage checkout, it doen't matter if i disable it or not.. it's very frustrating.. we're also working with a VES Theme

We just updated to Magento version 2.2.11

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