私は多くの投稿を見てきましたが、私の質問に対する解決策はどこにも見つかりませんでした。新しい支払いゲートウェイを Sylius Payum Bundle に適切に追加する方法を説明している場所がインターネット上に 1 つもありません。
最新sylius
0.10.*
バージョンを使用していますが、新しい支払いゲートウェイ (Rabobank Omnikassa、オランダの支払いエンドポイント) を追加したいと考えています。
に を追加する方法についての情報がありPaymentFactory
ますPayumPayumBundle
が、このバンドルのフォルダー構造はSyliusPayumBundle
. Acme\Bundle\PayumBundle
からオーバーライドする独自のものを作成しましたSyliusPayumBundle
。
PaypalExpressCheckoutPaymentFactoryと同様の方法で設定したいと思います。
config/payum.yml
ここでは、Sylius に自分のものを見つけてもらうために、いくつかのことをテストしています。
payum:
contexts:
rabobank:
storages:
Sylius\Component\Core\Model\Order:
doctrine:
driver: orm
Sylius\Component\Core\Model\Payment:
doctrine:
driver: orm
custom:
actions:
- Shopfish\Bundle\PayumBundle\Payum\Rabobank\Action\CapturePaymentAction
- Shopfish\Bundle\PayumBundle\Payum\Rabobank\Action\NotifyOrderAction
config/services.xml
どこでどのサービスタグを使用すればよいかわかりません..
<parameters>
<parameter key="shopfish.payum.rabobank.action.capture_payment.class">Shopfish\Bundle\PayumBundle\Payum\Rabobank\Action\CapturePaymentAction</parameter>
<parameter key="shopfish.payum.rabobank.action.notify_order.class">Shopfish\Bundle\PayumBundle\Payum\Rabobank\Action\NotifyOrderAction</parameter>
<parameter key="shopfish.payum.rabobank.action.payment_status.class">Shopfish\Bundle\PayumBundle\Payum\Rabobank\Action\PaymentStatusAction</parameter>
</parameters>
<services>
<!-- Rabobank Omnikassa -->
<service id="shopfish.payum.rabobank.action.capture_payment" class="%shopfish.payum.rabobank.action.capture_payment.class%" public="false">
<tag name="payum.action" factory="omnipay" />
</service>
<service id="shopfish.payum.rabobank.action.notify_order" class="%shopfish.payum.rabobank.action.notify_order.class%" public="false">
<argument type="service" id="event_dispatcher" />
<argument type="service" id="sylius.manager.payment" />
<argument type="service" id="finite.factory" />
<tag name="payum.action" factory="paypal_express_checkout_nvp" />
</service>
</services>
config/config.yml
もちろん、ゲートウェイをconfig.ymlファイルに登録しています
sylius_payment:
gateways:
rabobank: Rabobank Omnikassa
例外: パスの構成が無効です
Rabobank
有効な型として認識されていないようです。新しいタイプはどこに登録しますか?
InvalidConfigurationException: Invalid configuration for path "payum.contexts.rabobank.omnipay": Given type Rabobank is not supported. These types AuthorizeNet_AIM, AuthorizeNet_SIM, Buckaroo, CardSave, Dummy, Eway_Rapid, GoCardless, Manual, Migs_ThreeParty, Migs_TwoParty, Mollie, MultiSafepay, Netaxept, NetBanx, PayFast, Payflow_Pro, PaymentExpress_PxPay, PaymentExpress_PxPost, PayPal_Express, PayPal_Pro, Pin, SagePay_Direct, SagePay_Server, SecurePay_DirectPost, Stripe, TargetPay_Directebanking, TargetPay_Ideal, TargetPay_Mrcash, TwoCheckout, WorldPay are supported.
支払いファクトリーの登録
このファイルでは、Payum に工場を登録する方法を確認できます。自分のバンドル内から Sylius で同じことをしたいと思います。
ここから取るべき良いステップは何ですか?