chub/interkassa-bundle
Bundle to integrate interkassa payment system to your Symfony2 project
Maintainers
Package info
github.com/ChubV/InterkassaBundle
Type:symfony-bundle
pkg:composer/chub/interkassa-bundle
Requires
- php: >=5.3
- symfony/form: >=2.1
- symfony/framework-bundle: >=2.1, <2.3.*-dev
- symfony/twig-bundle: >=2.1
- symfony/yaml: >=2.1
- twig/extensions: 1.0.*
- twig/twig: >=1.5
Requires (Dev)
- symfony/browser-kit: >=2.1
- symfony/class-loader: >=2.1
- symfony/css-selector: >=2.1
- symfony/finder: 2.*
Suggests
None
Provides
None
Conflicts
None
Replaces
None
Unknown License 1253301030f6b0b186d04b1af4acf6ee3577a2ad
- Vladimir Chub <v.woop@chub.com.ua>
This package is not auto-updated.
Last update: 2026-06-20 21:43:21 UTC
README
Symfony2 InterkassaBundle allows us to get user payments using Interkassa system. Interkassa is the one of the biggest payment system integrator in Russia and Ukraine.
Installation
Use composer
Add "chub/interkassa-bundle": "*" to your required section of composer.json and run php composer.phar update.
Register your bundle
Add it to your kernel
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new ChubProduction\InterkassaBundle\InterkassaBundle(), ); // ... }
Configuration
Add interkassa section to your app\config.yml
interkassa: connections: # contain shop descriptions intercassa: shop_id: ololo # Shop id (you can get it in your profile) secret_key: ololo # Secret key (you can get it in your profile) fail_url: /profile/balance # Url to redirect user on transaction fail success_url: /profile/balance # Url to redirect user on transaction success #another_shop: # ....
Add some routes:
payment_status: pattern: /payment/status/{connection} defaults: { _controller: InterkassaBundle:Payment:status } payment_success: pattern: /payment/success/{connection} defaults: { _controller: InterkassaBundle:Payment:success } payment_fail: pattern: /payment/fail/{connection} defaults: { _controller: InterkassaBundle:Payment:fail }
Usage
- Create your payment item class
<?php //.. use ChubProduction\InterkassaBundle\Entity\Payment; use ChubProduction\InterkassaBundle\Service\PaymentItemInterface; class PaymentItem implements PaymentItemInterface { public function getAmount() { // return '1.00'; } public function getDescription() { // return 'ololo'; } public function setPayment(Payment $p) { // TODO: Implement setPayment() method. } }
- Create a payment object
$po = new PaymentItem();
- Redirect user to pay
// Somewhere in your Action $response = $this->get('payment')->createInvoice($po, 'intercassa'); return $response
- Check status of the payment
$po->getPayment()->isPaid();
Event system
You can also register your own event subscriber/dispatcher to handle invoice creation, successful or failed transaction.
There are InterkassaPaymentEvent object and InterkassaPaymentEvent::ON_INVOICE,
InterkassaPaymentEvent::ON_STATUS_SUCCESS, InterkassaPaymentEvent::ON_STATUS_FAIL events for this
