rodgermd / sofort2-bundle
Symfony 2 bundle for sofort payment PHP library
Installs: 3 951
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 1
Open Issues: 1
Type:symfony-bundle
Requires
- rodgermd/sofort2-lib: @stable
This package is not auto-updated.
Last update: 2024-12-21 17:14:49 UTC
README
Symfony2 Bundle for Sofort PHP Library 2.x
Installation
Add bundle
AppKernel.php:
public function registerBundles() { $bundles = array( ... new Sofort\SofortBundle(), ... }
Add controller routing
routing.yml:
sofort_controller: resource: "@SofortBundle/Controller/" type: annotation prefix: /sofort
Optionally add test config key
parameters.yml
sofort: test_key: 'XXX:XXX:XXXXXXXXXXXX'
Usage
Manager
$manager = $container->get('sofort.manager') $manager->setConfigKey($sofortConfigKey);
request create transaction
// Prepares model $model = new PaymentRequestModel(); $model ->setAmount(0.1) ->setReason('test reason') ->setCountry('DE') ->setName('Max Mustermann') ->setAccountNumber('88888888') ->setBankCode('12345678'); // Call manager $event = $manager->createTransaction($model);
When calling $manager->createTransaction($model), the 'sofort.transaction.created' event is fired with TransactionCreateEvent argument.
The argument contains $response and $transactionId properties
request transaction details
$response = $manager->requestTransaction($transactionId);
The $response is ant instance of SofortLibTransactionData.
On successfull details retrieve, the event SofortEvents::DETAILS is fired with TransactionDetailsEvent as argument
SofortLibTransactionData methods available:
- getAmount
- getAmountRefunded
- getCount
- getPaymentMethod
- getConsumerProtection
- getStatus
- getStatusReason
- getStatusModifiedTime
- getLanguageCode
- getCurrency
- getTransaction
- getReason
- getUserVariable
- getTime
- getProjectId
- getRecipientHolder
- getRecipientAccountNumber
- getRecipientBankCode
- getRecipientCountryCode
- getRecipientBankName
- getRecipientBic
- getRecipientIban
- getSenderHolder
- getSenderAccountNumber
- getSenderBankCode
- getSenderCountryCode
- getSenderBankName
- getSenderBic
- getSenderIban