如何添加paypal pro(omnipay网关)到sylius

时间:2014-05-31 00:22:50

标签: paypal paypal-sandbox sylius omnipay payum

我觉得我已经阅读了很多想要帮助添加网关的人,但我似乎没有找到任何解决方案,一旦提问者找到答案就已经分享了。我知道有人建议查看Payum Bundle文档,但由于我无法弄清楚Sylius究竟是如何与Payum Bundle集成的,所以我无法从payum文档中获得太多帮助。有人能够帮助解释让PayPal Pro在sylius应用程序中运行所需的内容吗?

我已将此添加到配置文件中:

payum:
    contexts:
        paypal_pro:
            omnipay:
                type: PayPal_Pro
                options:
                    username:  %paypal.username%
                    password:  %paypal.password%
                    signature: %paypal.signature%
                    testMode:  %paypal.test_mode%
            storages:
                Sylius\Component\Core\Model\Order:
                    doctrine:
                        driver: orm
                Sylius\Component\Core\Model\Payment:
                    doctrine:
                        driver: orm

这在我的services.yml文件中:

sylius.payum.paypal.action.capture_payment_using_credit_card:
    class: %sylius.payum.paypal.action.capture_payment_using_credit_card.class%
    tags:
        - { name: payum.action, factory: omnipay }

对于CapturePaymentUsingCreditCardAction类,我只是复制了Sylius的Stripe一个。我认为这就足够了,因为Stripe据说也可以开箱即用。当我输入假信用卡信息(我们处于沙箱模式)时,我只是在重定向到付款方式选择页面后收到“未知付款错误”的Flash消息。根据我从阅读this thread的理解,状态由状态机自动管理。我简单地添加了一个PaymentStatusAction(从Dummy类复制并var_dumping详细信息),但这没有任何帮助。

另外,有人能够解释是否需要ExecuteSameRequestWithDetailsAction?它看起来与CapturePaymentUsingCreditCardAction类似。

0 个答案:

没有答案