Ajouter des métadonnées aux paiements
Envoyez des métadonnées de paiement supplémentaires d'Adobe Commerce à Stripe.
Lorsque vous cliquez sur un paiement dans votre Dashboard Stripe, vous pouvez voir certaines métadonnées déjà définies sur le paiement, comme le numéro de commande dans Magento et la version du module utilisé pour collecter le paiement. Ce guide décrit comment modifier le module Stripe pour ajouter des métadonnées supplémentaires à chaque paiement.
Créer un module
Create a new module with the following directory structure. Replace Vendor
with your preferred vendor name.
app/code/Vendor/StripeCustomizations/ ├── etc/ │ ├── module.xml │ └── di.xml ├── Plugin/ │ └── Payments/ │ └── ConfigPlugin.php ├── registration.php
Dans registration.
, enregistrez votre module auprès de Magento.
<?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Vendor_StripeCustomizations', __DIR__ );
Dans le fichier etc/module.
, définissez le module et configurez les dépendances pour vous assurer qu’il se charge après le module Stripe.
<?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>
Dans le fichier etc/di.
, définissez le plugin suivant :
<?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\Model\Config"> <plugin name="vendor_stripecustomizations_payments_config_plugin" type="Vendor\StripeCustomizations\Plugin\Payments\ConfigPlugin" sortOrder="10" disabled="false" /> </type> </config>
Dans Plugin/Payments/ConfigPlugin.
, créez un intercepteur afterMethod :
<?php namespace Vendor\StripeCustomizations\Plugin\Payments; use StripeIntegration\Payments\Model\Config; class ConfigPlugin { /** * After plugin for getMetadata method. * * @param Config $subject * @param array $result * @param Order $order * @return array */ public function afterGetMetadata(Config $subject, array $result, $order) { // Add new metadata $result['CustomKey1'] = 'CustomValue1'; $result['CustomKey2'] = 'CustomValue2'; // You can add dynamic data based on business logic // For example, adding customer group $customerGroup = $order->getCustomerGroupId(); $result['Customer Group'] = $customerGroup; return $result; } }
Activez le module :
php bin/magento module:enable Vendor_StripeCustomizations php bin/magento setup:upgrade php bin/magento cache:clean php bin/magento cache:flush