Payum Bundle的配置如何工作?

时间:2014-05-31 03:37:58

标签: symfony configuration payum

我是Payum的新手,我正在尝试创建一个新的支付网关。但是,我无法弄清楚配置值与我创建的文件(操作/工厂等)之间的关系。

这是我到目前为止所拥有的;

payum:
    security:
        token_storage:
            Path\To\PaymentSecurityToken:
                doctrine:
                    driver: orm
    contexts:
        xxx:
            yyyy:
                api:
                    options:
                        sandbox: true
        storages:
            Path\To\Payment:
                doctrine:
                    driver: orm

我没有得到我应该放入 xxx yyy 的内容。无论我尝试什么价值观,我仍然无法得到它。我一直收到以下错误。

InvalidConfigurationException: Unrecognized options "yyy" under "payum.contexts.xxx"

任何人都可以告诉我这些值应该是什么以及我设置的值如何与网关相关以及需要的位置以便配置实际上与网关代码中的内容相匹配?

提前致谢:)

1 个答案:

答案 0 :(得分:1)

yyyy - 是付款(或存储)工厂名称。在此部分下,您可以选择付款方式。它们在addConfiguration method中定义。这些选项后来传递给creates a payment service

的方法

There are some factories shipped with Payum bundle。您可以使用它们或添加自己的。为此,您必须实现PaymentFactoryInterface和register it like others to Payum extension

xxx - 它是上下文名称(您将其命名)。它背后的想法非常简单。您可以支付两笔PayPal,但配置不同。一个用于美国,一个用于欧盟(不同的paypal帐户)。类似的东西:

payum:
   contexts:
       paypal_eu:
           paypal_express_checkout_nvp:
               username: ~
               password: ~
               signature: ~
       paypal_us:
           paypal_express_checkout_nvp:
               username: ~
               password: ~
               signature: ~

稍后,当您想要获得付款实例时,您必须使用上下文名称:

$payment = $container->get('payum')->getPayment('paypal_eu');

P.S。您可以在docs中找到一些真实的配置示例。