支払いにその他のメタデータを追加する
Adobe Commerce から Stripe に追加の支払いメタデータを送信します。
Stripe ダッシュボードで支払いをクリックすると、Magento での注文番号や支払いの回収に使用されているモジュールバージョンなど、支払いに設定されているメタデータが表示される場合があります。このガイドでは、Stripe モジュールを拡張して、各支払いにその他のメタデータを追加する方法を説明します。
新しいモジュールを作成
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
registration.
内で、モジュールを Magento に登録します。
<?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Vendor_StripeCustomizations', __DIR__ );
etc/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>
etc/di.
内で、以下のプラグインを定義します。
<?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>
Plugin/Payments/ConfigPlugin.
内で、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; } }
モジュールを有効化します。
php bin/magento module:enable Vendor_StripeCustomizations php bin/magento setup:upgrade php bin/magento cache:clean php bin/magento cache:flush