cedriclombardot / ogone-payment-bundle
为symfony2提供的Ogone支付插件
dev-master
2013-08-07 07:15 UTC
Requires
- kriswallsmith/buzz: dev-master
- propel/propel-bundle: 1.*
- symfony/symfony: >=2.1.0
This package is auto-updated.
Last update: 2024-09-24 04:01:34 UTC
README
特性
- 功能齐全的示例控制器
- 简单的交易
- 反馈管理
- 别名管理
即将推出
- 批量操作
设置
在composer.json中添加
"require": {
"cedriclombardot/ogone-payment-bundle": "dev-master"
}
配置您的内核
$bundles = array( new Cedriclombardot\OgonePaymentBundle\CedriclombardotOgonePaymentBundle(), );
在config.yml中配置Ogone
cedriclombardot_ogone_payment: secret: shaInKey: Mysecretsig1875!? shaOutKey: Mysecretsig1875!? algorithm: sha512 general: PSPID: MyCompagny currency: EUR language: en_EN design: title: Give Me Your money - Payment page bgColor: "#4e84c4" txtColor: "#FFFFFF" tblBgColor: "#FFFFFF" buttonBgColor: "#00467F" buttonTxtColor: "#FFFFFF" fontType: "Verdana"
创建交易
在控制器中
<?php $client = OgoneClientQuery::create() ->filterByEmail('test@test.com') ->findOneOrCreate(); $client->save(); $transaction = $this->get('ogone.transaction_builder') ->order() ->setClient($client) ->setAmount(100) ->end() ->configure() ->setBgColor("red") ->setAcceptUrl($this->generateUrl('ogone_payment_feedback', array(), true)) ->setDeclineUrl($this->generateUrl('ogone_payment_feedback', array(), true)) ->setExceptionUrl($this->generateUrl('ogone_payment_feedback', array(), true)) ->setCancelUrl($this->generateUrl('ogone_payment_feedback', array(), true)) ->setBackUrl($this->generateUrl('ogone_payment_feedback', array(), true)) ->end() ; $form = $transaction->getForm(); return $this->render( 'CedriclombardotOgonePaymentBundle:Payment:index.html.twig', array( 'form' => $form->createView(), ) );
以及反馈
<?php public function feedbackAction() { if (!$this->get('ogone.feedbacker')->isValidCall()) { throw $this->createNotFoundException(); } $this->get('ogone.feedbacker')->updateOrder(); return $this->render( 'CedriclombardotOgonePaymentBundle:Payment:feedback.html.twig' ); }
别名管理
您有带有别名选项的Ogone高级账户
编辑config.yml
cedriclombardot_ogone_payment: general: use_aliases: true
在您的交易控制器中
// Client recuperation HERE // Alias creation if ($this->container->getParameter('ogone.use_aliases')) { $alias = OgoneAliasQuery::create() ->filterByOgoneClient($client) ->filterByOperation(OgoneAliasPeer::OPERATION_BYMERCHANT) ->filterByName('ABONNEMENT') ->findOneOrCreate(); $alias->setLabel('Your abonnement'); $alias->save(); } // Transaction creation HERE if ($this->container->getParameter('ogone.use_aliases')) { $transaction->useAlias($alias); } $form = $transaction->getForm(); // call the view
在此处查看完整的控制器实现 https://github.com/cedriclombardot/OgonePaymentBundle/blob/master/Controller/PaymentController.php