Manuelle Erfassung aktivieren
Separate Autorisierung und Erfassung für zulässige Stripe-Zahlungsmethoden zulassen
Stripe unterstützt die manuelle Erfassung für einige Zahlungsmethoden. Sie können dieses Verhalten auf der Seite mit den Anwendungseinstellungen konfigurieren, indem Sie die Eigenschaft Payment Action
einer geeigneten Zahlungsmethode auf Nur autorisieren setzen.
Normalerweise erfordert die Aktivierung der manuellen Erfassung für eine neu eingeführte Zahlungsmethode, die dies unterstützt, ein Upgrade Ihres Stripe-Moduls. In diesem Leitfaden erfahren Sie, wie Sie die manuelle Erfassung für geeignete Zahlungsmethoden aktivieren können, ohne das Stripe-Modul zu aktualisieren, indem Sie die Hilfsdatei für Zahlungsmethoden direkt aktualisieren.
Neues Modul erstellen
Erstellen Sie ein neues Modul mit der folgenden Verzeichnisstruktur. Ersetzen Sie Vendor
durch Ihren bevorzugten Anbieternamen.
app/code/Vendor/StripeCustomizations/ ├── etc/ │ ├── module.xml │ └── di.xml ├── Plugin/ │ └── Helper/ │ └── PaymentMethodPlugin.php ├── registration.php
Registrieren Sie Ihr Modul in der Datei registration.
bei Magento.
<?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Vendor_StripeCustomizations', __DIR__ );
Definieren Sie in etc/module.
das Modul und richten Sie Abhängigkeiten ein, um sicherzustellen, dass es nach dem Stripe-Modul geladen wird.
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"> <module name="Vendor_StripeCustomizations" setup_version="1.0.0"> <sequence> <module name="StripeIntegration_Payments"/> </sequence> </module> </config>
Definieren Sie in etc/di.
das folgende Plugin:
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <type name="StripeIntegration\Payments\Helper\PaymentMethod"> <plugin name="vendor_stripecustomizations_helper_paymentmethod_plugin" type="Vendor\StripeCustomizations\Plugin\Helper\PaymentMethodPlugin" sortOrder="10" disabled="false" /> </type> </config>
Erstellen Sie in Plugin/Helper/PaymentMethodPlugin.
einen afterMethod
-Interceptor:
<?php namespace Vendor\Module\Plugin; class PaymentMethodPlugin { public function afterGetPaymentMethodsThatCanCaptureManually( \StripeIntegration\Payments\Helper\PaymentMethod $subject, $result ) { // Modify or extend the result to include another payment method code that supports manual capture. $result[] = 'new_payment_method_code'; return $result; } }
Aktivieren Sie das Modul:
php bin/magento module:enable Vendor_StripeCustomizations php bin/magento setup:upgrade php bin/magento cache:clean php bin/magento cache:flush