I have these files in my payment method module module is enabled but I cant see payment option in checkout.root … what am I doing wrong?
checkout_index_index.xml
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column"
xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
<body>
<referenceBlock name="checkout.root">
<arguments>
<argument name="jsLayout" xsi:type="array">
<item name="components" xsi:type="array">
<item name="checkout" xsi:type="array">
<item name="children" xsi:type="array">
<item name="steps" xsi:type="array">
<item name="children" xsi:type="array">
<item name="billing-step" xsi:type="array">
<item name="component" xsi:type="string">uiComponent</item>
<item name="children" xsi:type="array">
<item name="payment" xsi:type="array">
<item name="children" xsi:type="array">
<item name="renders" xsi:type="array">
<!-- merge payment method renders here -->
<item name="children" xsi:type="array">
<item name="custom_payment" xsi:type="array">
<item name="component" xsi:type="string">
Acme_Pos/js/view/payment/custom_payment
</item>
<item name="methods" xsi:type="array">
<item name="custom_payment" xsi:type="array">
<item name="isBillingAddressRequired"
xsi:type="boolean">true
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</item>
</argument>
</arguments>
</referenceBlock>
</body>
Acme/Pos/view/frontend/web/js/view/payment/method-renderer/custom_method_renderer.js
define( [ 'jquery', 'Magento_Payment/js/view/payment/iframe', 'Magento_Checkout/js/action/set-payment-information' ], function ($, Component, setPaymentInformationAction) { 'use strict';
return Component.extend({ defaults: { template: 'Acme_Pos/payment/custom-payment' },
}); } );
Acme/Pos/view/frontend/web/js/view/payment/custom_payment.js
define( [ 'uiComponent', 'Magento_Checkout/js/model/payment/renderer-list' ], function ( Component, rendererList ) { 'use strict'; rendererList.push( { type: 'custom_payment', component: 'Acme_Pos/js/view/payment/method-renderer/custom-payment-renderer' } ); /** Add view logic here if needed */ return Component.extend({}); }
);