- [reply] remove "continue", clicking on it user can do double payment
- [factory] Add
UpdateRecurringPaymentProfileAction
config on PaymentFactory.
- [facade] add ability to pass builders (closures) to Payum facade builder, various bug fixes.
- [registry] add ability to disable auto adding of storage extensions.
- [registry] Add FallbackRegistry
- [facade] add Payum facade and its builder
- [doc] Update supported-gateways.md
- [paypal-ec] Fix empty paypal description
- Licence owner is changed
- Drop support of php5.3 and php5.4
- [vendors] Make some libraries non required. They are still required but "softly".
- [http-client] Reuse PSR-7 as http client.
- [twig] Move javascript vendors to separate twig block
- [factory] Introduce core gateway factory.
- [request] Add setter\getter for parameters property in RenderTemplate request. Remove context.
- [request] Add ability to pass first\current models with obtain credit card request.
- [symfony] Fix compatibility with Symfony 2.7
- [symfony] Add EventDispatcherExtension.
- [payex] Change exception message
- [paypal][rest] require stable version of sdk.
- [paypal][api] Replace $request by $fields
- [klarna] Klarna Invoice Update
- [klarna] Use sandbox recurring base uri if sandbox mode.
- [stripe] Add currency to checkout token template
- [stripe] Set stripe form payment action if variable exists
- [stripe] Use stripe javascript object only after the script is loaded
- [tests] use ::class whenever its possible
- [travis] Run tests on php7
- [reply] remove "continue", clicking on it user can do double payment
- [factory] Add
UpdateRecurringPaymentProfileAction
config on PaymentFactory.
- [buzz] Do not force TLSv1 Cipher for NSS.
- [paypal-ec] Add
UpdateRecurringPaymentsProfile
require and an action for it.
- [composer] Require stable versions
- [extension] Rework extension. Introduce context.
- [storage] Change
StorageInterface::findBy
returned value. It must be an array of object. or empty. - [doctrine][mongo] add a mapping for GatewayConfig.
- [doc] document iso4217 use cases.
- [request] decouple GetCurrency request from Payum\ISO4217 lib.
- [gateway] Allow pass custom instance of iso4217.
- [travis] sudo: false
- Add payum/iso4217 to composr deps.
- Rename Order to Payment
- Rename Payment and PaymentXXX classes to Gateway and GatewayXXX ones.
- [action] Add ability to get ISO4217 info. Add a request and action for that. Simply payment interface.
- [action] use Convert request in CapturePaymentAction.
- [request] Add convert request. Remove FillOrderDetails one.
- [symfony] Add
CreditCardDateValidator
validator. - [request] Make
GetHumanStatus
request compatible with interface. - [payment] add setter and getter for credit card on payment.
- [stripe] add support of direct payments.
- [stripe] improve payment status handling, add support of authorize\refund. better handling of pending.
- [klarna] Klarna return amount
- [klarna] Klarna credit invoice
- [klarna] Klarna resend invoice
- [klarna-checkout] allow use of v2.0 SDK.
- [klarna-checkout] check if acceptHeader property exists.
- [klarna-checkout] change constant names
- [klarna-checkout] add support of klarna checkout recurring payments.
- [reply] remove "continue", clicking on it user can do double payment
- [factory] Add
UpdateRecurringPaymentProfileAction
config on PaymentFactory.
- [paypal-ec] Add
UpdateRecurringPaymentsProfile
require and an action for it.
- [bridge][symfony] allow unset checkbox field (sandbox for example) on payment config form.
- [composer] add symfony\validator package to dev dependencies.
- [symfony] Add
CreditCardDate
constraint. Checks that expiration date is greater than today.
- Introduce Payment model. Deprecate Order model.
- Introduce Gateway interfaces and classes. Deprecate Payment ones.
- [doc] add basic examples.
- [klarna-invoice] Fix payment factory. Always runs in live mode.
- [paypal-ec] Add CancelRecurringPaymentsProfileAction.
- [doc] update list of supported payments
- [payment-factory] pass config to core payment factory too.
- [payment-factory] allow set default config to payment factory.
- [payment-factory] add factory name and title to the payment config.
- [payment-factory] return default options when call createConfig.
- [doc] add EloquentStorage to list of support storages.
- [doc] add Propel2Storage to list of supported storages.
- [doc] add Propel1Storage to supported storages.
- [security] add token factory extension.
- [security] use composition of token factories. move some code to plain php bridge.
- [offline] if order details are set don't set it again.
- [storage] Add storage method findBy code improve tests include base models and example schema.
- [registry] Add DynamicRegistry registry.
- [symfony][form] Add payment config form, and payment factories choice.
- [registry] Introduce payment factories registry interface.
- [payex] add missed action to factory.
- [paypal-express-checkout] Paypal request parameters should be lowercased.
- [paypal-pro] fix api in factory.
- [payment-factory] options lower case
- [payment-factory] allow set which actions\apis\extensions must be prepend.
- [ssl] Added cURL Options for the PayPal Sandbox SSL 3.0 Vulnerability (POODLE)
- [payment] remove all addXXX methods from PaymentInterface.
- [payment] Introduce
PaymentFactoryInterface
. Simplify exist factories. - [request] Add missed markSuspended method to GetStatusInterface.
- [request] Allow get raw content of the request.
- [reply] Add ability to set Http StatusCode and headers.
- [action] Remove generic order action. Improve execute same request with details action.
- [action] Execute same request with details has to be the last action.
- [storage] Rename methods. Improve usage of Identity.
- [doctrine] fix mapping of
details
field in the order model. It has to be object. - [buzz] Create default curl client, if no client is passed
- [security] Reuse league/url while manipulation with tokens urls.
- [security] Making
afterPath
optional onTokenFactoryInterface
. - [paypal-pro] Add support of refunds.
- [paypal-pro] Refactor Paypal Pro, remove not used stuff, simplify logic.
- [omnipay] Allow install Omnipay bridge ONLY as a standalone package. Not shipped with payum/payum any more.
- [symfony] Allow configure min max expiration years.
- [docs] Add chapter about refund.
- [authorize.net] Amount must be decimal.
- [request] add
getFirstModel
method toGeneric
request.
- [action] Back port from master a
GenericOrderAction
. Fixes "Attempted to call method "getClientId" in done script but got array instead of order"
- [klarna-checkout] Mark failed if error_code set in details.
- [action] Add
NotifyOrderAction
action.
- [doc] add sagepay and redsys to list of supported payments.
- [security] token factory should accept Identificator instance as model.
- [paypal-ec] use capture\authorize details as details for notify token.
- [request] add cancel request.
- [stripe] description in template must have default val.
- [paypal-ec] Allow purchase order with custom details
- [security] Added cURL Options for the PayPal Sandbox SSL 3.0 Vulnerability (POODLE)
- [omnipay-bridge] catch invalid credit card exception.
- [symfony-bridge][forms] Fix exception "there is only 'years' option available."
- [symfony-bridge] Add obtain credit card basic template.
- [doc] add Silex to the list of supported frameworks.
- [action] add basic get http request action.
- [action]
ExecuteSameRequestWithModelDetailsAction
now do sub request for empty details too. - [request] move
ModelAwareInterface
to model namespace andTokenAwareInterface
to Security one. - [request] add
Refund
request - [request] remove usages of STATUS_SUCCESS and all related methods.
- [request]
BaseModelAware
request was renamed toGeneric
one. - [request] move logic from
SecuredXXX
requests toGeneric
, remove allSecuredXXX
requests. - [tests] reduce code duplications in tests, introduce
GenericActionTest
. - [stripe] add
GetHttpRequestAction
to checkout factory. - [stripe] add
GetHttpRequestAction
to js factory. - [bridge][symfony] add
ObtainCreditCardAction
and credit card form to bridge from bundle. - [bridge][symfony] add symfony response to reply converter.
- [orders] unified interface for all possible payments.
- [order][paypal] set automatically notify url if not defined.
- [order][doctrine] add mongo and orm mappings for order model.
- [order][payex] add fill order details action.
- [order][paypal-pro] add fill order details action.
- [offline] add fill order details action.
- [omnipay-bridge] add fill order details action.
- [omnipay-bridge] refactor tests, add auto fill of returnUrl, cancelUrl and clientIp.
- [omnipay-bridge] fix undefined offset 1 error. set holder name as first name always.
- [klarna-checkout] fix bad request. merchant.id invalid.
- [klarna-checkout] Remove GlobalXXXConnector. Replace CaptureAction with Authorize one.
- [klarna-invoice] add refund support.
- [paypal] correctly recognize authorize status.
- [paypal] add make status action aware of refunded payment status.
- [klarna-checkoout] set correctly orderid in notify action.
- [klarna-invoice] populate klarna from details must be inside try catch block.
- [payment] Critcal bug fix. It was possible to mix credentials of different payments if you use them in single process.
- [paypal][ipn] do not update express checkout related info when session has expired.
- [klarna] add
CreditPart
action.
- [klarna] error_code has to be int.
- [klarna] fix encoding when setting error code, message back to details.
- [storage] fix bug "Interface Doctrine\Common\Persistence\Proxy does not exist".
- [paypal-pro]
StatusAction
has to acceptGetStatusInterface
, not onlyGetBinaryStatus
instance.
- [omnipay] Fix undefined offset 1 error. No more splits, the holder name is set as a first name.
- [doctrine][registry] fix ability to get a storage by passing doctrine proxy object.
- [klarna] add klarna invoice support.
- [request] add authorize request.
- [tests] upgrade phpunit up to 4.x
- [request] Rename interactive requests to replies.
RedirectUrlInteractiveRequest
becomeHttpRedirect
reply. - [request] Remove
Request
postfix. CaptureRequest become just Capture. - [request] Rename
SimpleStatusRequest
toGetHumanStatus
request. - [request] Rename
BinaryMaskStatusRequest
toGetBinaryStatus
request.
- [doc] fix typos, improve examples, get-it-started page.
- [paypal ec][api] simplify Api class constructor. The client is optional now.
- [paypal ec][api] Api methods now takes array as argument and return array as well. Do not expose buzz outside Api.
- [tests] remove fragile functional tests.
- [composer] fix typos in composer.json
- [http] add client ip and user agent to the get http request.
- [doctrine] rename
array
property todetails
. - [stripe] add stripe.js, checkout support.
- [template] use twig as a templating engine.
- [template] add twig factory, simplify first setup.
- [template] allow configure a layout.
- [request] remove deprecated requests.
- [registry] decouple
StorageRegistry
from payments removing name argument.
- [doctrine] Quote a column
array
in metadata forArrayObject
class. Array is a reserved word in some databases.
- [request] fix post redirect interactive request, it has to extend response interactive request.
- [be2bill] fix capture with aliased credit card.
- [registry] decouple
StorageRegistry
from payments. Thename
argument was removed. - [security] allow create notify token without model set.
- [creditcard] allow set null as expire at date.
- [creditcard] allow secure credit card sensitive values.
- [creditcard]
CreditCardInterface
getters does not returnSensitiveValue
anymore. - [creditcard] rename credit card method
setCardholder
andgetCardholder
to justsetHodler
andgetHolder
. - [creditcard] use
DateTime
to represent expire date. - [spl] the method
ArrayObject::validatedNotEmpty
was renamed tovalidateNotEmpty
. - [request] remove
UserInputRequeredRequest
request. - [omnipay] support Omnipay version >=2.
- [omnipay] add
OnsiteCaptureAction
. - [omnipay] allow obtain credit card in
CaptureAction
. - [omnipay] fix not imported namespace, onsite capture, prepare for obtain cc.
- [omnipay] add support of POST redirect.
- [paypal-pro] allow obtain credit card.
- [be2bill] allow obtain credit card.
- [authorize.net] allow obtain credit card.
- [paypal] Add DoReferenceTransactionActionAction and DoReferenceTransactionActionRequest
- [security][symfony] Pass bollean true to url generator. Fixes fatal error on an old symfony's versions.
- [request] add ObtainCreditCardRequest.
- [model] add credit card model.
- [security] add mask util. allows mask strings with diff options.
- [doc] configure TokenStorage to use hash field as idPropery.
- [request] add simple status request.
- [security] allow create notify token without model set.
- [be2bill] should not use capture onsite action when aliased credit card used.
- [be2bill] api endpoint has ".php" at the end. Fixes temporal glitches with api.
- [security][symfony] Fix bug:
PHP Fatal error: Undefined class constant 'ABSOLUTE_URL' in ...
- [paypal] Set return\cancel (if not set) url from secured capture request.
- [paypal] Add NotifyAction to PaymentFactory.
- [paypal][action] Add generic NotifyAction.
- [security] Fix
GenericTokenFactory
. It did not handle afterPath correctly, when it is url. - [symfony][request] move symfony's response interactive request to bridge.
- [security] symfony's TokenFactory now require UrlGeneratorInterface.
- import namespaces.
- [security][symfony] move HttpRequestVerifier from bundle to bridge.
- [security][symfony] move TokenFactory from symfony bundle to bridge.
- [security] TokenFactory accepts urls as targetPath and afterPath.
- [doc] added laravel to supported frameworks list.
- [offline] wrap model by ArrayObject from bridge.
- [offline] Fixing Notice: Undefined index: paid in ...
- [paypal][pro] set bigger timeout to prevent test fails
- [klarna] add support of klarna checkout payment.
- [zend][storage] add zend table gateway storage.
- [omnipay] do not wrap omnipay's exceptions in capture action.
- [security] add generic token factory.
- [security] introduce token factory.
- [action] add tests for notify action
- [request] add response interactive request.
- [payex] remove duplicated tests.
- [registry] register storage extensions lazily.
- [be2bill][api] add a method to verify params hash.
- [registry]
SimpleRegistry::registerStorageExtensions
method is deprecated.
- merge all payment gateway into one payum repository and setup subtree split.
- move all current root classes to core namespace.
- [request] add
GetHttpQueryRequest
request - [request] add
PostRedirectUrlInteractiveRequest
request - [request] remove deprecated
XXXDetailsAggregatedModelsAction
actions. - [request] use execute same request with model details action
- [payment] making
findSupport
method more specific on the return value. Now it returns false when not supported action. - [composer] add missed libs to replace section
- [security] improve token hash generator
- [security] prevent accidental storing of sensitive info
- [security] wrapp sensitive values to prevent its saving somewhere
- [security] use SensitiveValue to safely process card number etc.
- [storage][filesystem] add identity map for filesystem storage.
- [payment] add
forcePrepend
argument toPayment::addApi
method. - [registry] add
SimpleRegistry::registerStorageExtensions
helper method. - [registry] add
PaymentRegistryInterface::getPayments
method. - [doctrine][orm] add mapping for simple model.
- [doctrine][mongo] add mapping for simple model.
- [model] add simple unified array model.
- [authorize.net] remove payment details custom model. Use ArrayObject from core or your own.
- [be2bill] add support of be2bill onsite payments
- [be2bill] fix. capture with credit card should support if
CARDCODE
provided. - [paypal express checkout][model] remove custom model and doctrine mapping for it.
- [paypal] Allow set custom params to authorize token url
- [payex][model] remove custom model and doctrine mapping for it.
- [request] CaptureDetailsAggregatedModelAction is deprecated.
- [request] SyncDetailsAggregatedModelAction is deprecated.
- [request] StatusDetailsAggregatedModelAction is deprecated.
- [exception] improve message of request not supported exception.
- [registry] improve exception messages for getStorageForClass method.
- [composer] lower required php version from 5.3.9 to 5.3.3
- [doctrine] add functional tests for doctrine storage and mongo manager
- [storage] move identificator to model namespace. deprecate storage one
- [doctrine] deprecate bridge models. provide mappings for basic ones
- [mongo] add custom type
ObjectType
to avoid probmels with mongo. - [request] add base status request.
- [security] allow set any details to token.
- [storage] better handling of id property in filesystem storage.
- [storage][mongo] add mongodb support
- [doc] add managing notifications doc
- [doc] add get it started doc
- [registry] add simple registry
- [storage] schedule for update models set in action
- [storage] do not throw on not supported identifier
- [security] introduce security layer. added
HttpRequestInterface
,TokenInterface
- [storage][extension] update model after last request is executed
- [storage][extension] update model on exception as well.
- [storage] add
StorageInterface::findModelByIdentifier
method. update abstract storage - [storage] add abstract storage
- [storage] mark deprecated
Storage::supportModel
- [log] add documentation.
- [log] adjust log messages.
- [log] suggest monolog as logger.
- [extension] add debug extension that wrtite call stack to log
- [extension] add PSR-3 log extensions
- [request]
StatusRequestInterface
now extendsModelRequestInterface
- [spl] add
ArrayObject::validatedKeysSet
to check array key present or not
- [security] make details property optional in
TokenizedDetails
model - [request] add instant payment notifications request
- No changes
- [request] move
CaptureTokenizedDetails
request from the bundle
- [spl] add
ArrayObject::validatedKeysSet
to check array key present or not.
- add the architecture doc
- add
StorageRegistryInterface::getStorages
method - add
RegistryInterface
interface. - [storage] ensure models always is saved
- [storage] add
StorageInterface::deleteModel
method - [security] add targetUrl, afterUrl to TokenizedDetails model
- [security] introduce
TokenizedDetails
model - [storage] add identificator model to easy find payment models
- fix suggest section of
composer.json
- add keywords to
composer.json
- add
StorageRegistryInterface
interface - add
PaymentRegistryInterface
interface
- remove
HttpResponseStatusNotSuccessException
- rename
ActionPaymentAware
toPaymentAwareAction
- remove
ApiAwareActionInterface
- remove
PaymentAwareActionInterface
- rename instruction aware\aggregate models to details ones
- add expired and suspended statuses.
- rename
StatusRequestInterface::isInProgress
toisPending
- remove
ArrayObject::offsetsExists
method. - add
ArrayObject::validateNotEmpty
method
- allow any stable buzz version
- add
forcePrepend
option toPaymentInterface::addAction
method - add
ArrayObject::ensure
method. do not create nested models arrays - fix variaty bugs in ArrayObject implementation
- add an action for
PaymentInstructionAggregate
models - remove null storage
- add storage extension
- add extensions
- add omnipay to the list of supported payments
- change doctrine version to stable in composer
- ability to set several APIs to the
Payment
instance - fix
ArrayObject::replace
method - add
BaseModelRequest
andBaseModelInteractiveRequest
- update list of supported payments
- add
setModel
method to a request - catch interactive requests to payment and reutrn it
- move
SyncRequest
request from paypal express checkout - add
NullStorage
- rework storages, change name, namespace
- remove
SimpleSell
request - rework
PaymentInstructionAggregate\Aware
interfaces - remove
CreatePaymentInstructionRequest
class - remove
ModelInterface
andPaymentInstruction
interfaces - add testo lib (generates code examples using test cases)
- add travis status to readme
- add travis
- add status request
- add interactive request
- rename aggregate -> aware
- add domain model
- add storages support
- initial classes and interfaces.