sfPaymentWebMoneyPlugin - 0.1.2
sfPaymentPlugin WebMoney implementation
You are currently browsing
the website for symfony 1
The sfPaymentWebMoneyPlugin enchances the sfPaymentPlugin and offers funcionality for working with WebMoney services
Plugin allows to interact with WebMoney. Plugin based on sfPaymentPlugin
|Nikita Korotkih||lead||moc.liamg <<ta>> hiktorok.atikin|
Copyright (c) 2010 Nikita Korotkih
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
WARNING : This plugin is in alpha state, therefore NOT READY for production. It still needs contribution to be fully functional.
NOTE : You need to install sfPaymentPlugin
sfPaymentWebMoneyPlugin is intended to ease integration with webmoney payment
Install the plugin
$ symfony plugin:install sfPaymentWebMoneyPlugin --stability=alpha
Clear you cache
$ symfony cc
At first, you need to configure the plugin by editing config/app.yml file. You have to change the vendor_purse, secret_key, because they depends on your webmoney references. Also you can change default module actions and validation algorithm(now only MD5 is supported).
When the plugin is ready!
Create a payment form. It can be done by BasesfPaymentWebMoneyActions::executePayForm() method. Optional parameters, such as user_id or order_id can be added too.
Results from WebMoney processed in BasesfPaymentWebMoneyActions::executeIpn() method. If payment is valid transactionCompleted will called.
There are two possible means to verify payment. One of this is SIGN method. It's more complicated than MD5 method, but I guess more reliable. And It needs a WebMoney Keeper Classic. I haven't install it yet.
So that's how it works:
DONE Make a string by sticking the parameters received in the â€˜Payment notification formâ€™ in the same order as at the control signature generation (see above). Remember that the Secret Key is used to generate the signature.
There is ready PHP-lib Verify the digital signature. Use Interface X7. Specify the following parameters:
Test is written for use with sfPHPUnit2Plugin