- Dropped PHP 8.2 Support
- Changed the minimum Laravel 10 version to v10.48
- Added Laravel 12 Support
- PHP 8.4 deprecation notice fixes:
- The
$shippingAddress
parameter in thePaymentGateway::createPaymentRequest()
interface method is now explicitly nullable
- The
- Changed
PaymentMethod::hasConfiguration()
to return false on empty arrays as well
- Changed the offline payment gateway's icon from a circle to a plug+x
- [EXPERIMENTAL] Added the supportsRetry, allowsRefund, canBeRetried and getRetryRequest methods to the TransactionHandler interface
- [EXPERIMENTAL] Added the
NoTransaction
DTO
- Dropped PHP 8.0 & PHP 8.1 Support
- Dropped Laravel 9 Support
- Dropped Enum v3 Support
- Added PHP 8.3 Support
- Added Laravel 11 Support
- Changed minimum Laravel version to v10.43
- Changed minimal Enum requirement to v4.2
- BC: Added the
getRemoteId()
method to thePaymentRequest
interface - BC: Added the following methods to the
Payment
interface:getSubtype()
hasRemoteId()
getRemoteId()
isOffline()
- BC: Added the
getTransactionAmount()
method to thePaymentResponse
interface - BC: Added the
transactionHandler()
method to thePaymentGateway
interface (experimental feature) - BC: Added the
svgIcon()
static method to thePaymentGateway
interface - BC: Changed the
PaymentMethod
interface into Configurable - Deprecated the
PaymentMethod::getConfiguration()
in favor ofconfiguration()
- Deprecated the
PaymentResponse::getAmountPaid()
method in favor ofgetTransactionAmount()
- Added a series of experimental transaction-style interfaces. They shouldn't be used yet, but have been added so that they can be implemented during the v4.x lifecycle without breaking existing implementations
- Added missing Payment Status magic comparison annotations to the interface/model
- Added the
hasRemoteId()
,getRemoteId()
andisOffline()
helper methods to the Payment model (v4 interface candidates)
- Added
getRemoteId()
method to theNullRequest
class - it is a proposed v4 interface extension
- Added Laravel 10 support
- Added the
subtype
field and thegetSubtype()
method to thePayment
model
- Bump module version to mainline (no change)
- Added
Configurable
interface to thePaymentMethod
model - Changed the
PaymentMethod
model to use theConfigurableModel
trait
- Added final PHP 8.2 support
- Changed minimum Concord version requirement to v1.12
- Added Enum 4.0 Support
- Changed minimum Laravel requirement to 9.2
- Changed minimum Konekt module requirements to:
- Concord: 1.11
- Enum: 3.1.1
- Added the
getGatewayName()
method to the PaymentMethod class. It can retrieve the gateway name without instantiating it, thus gateway configuration errors don't affect it
- Bump module version to mainline (no change)
- Added Laravel 9 support
- Added PHP 8.1 support
- Dropped PHP 7.4 Support
- Dropped Laravel 6-8 Support
- Removed Admin from "Framework" - it is available as an optional separate package see vanilo/admin
- Minimum Laravel version is 8.22.1. See GHSA-3p32-j457-pg5x
- Added
status_message
field to payments table - Added
remote_id
field to payments table - Added payment history handling
- Added
authorized
,on_hold
,cancelled
,refunded
andpartially_refunded
values to payment status enum - Added
getStatus
andgetNativeStatus
methods to thePaymentResponse
interface - Added
PaymentResponseHandler
to simplify processing of payment responses in applications - Added support trait intended to be used by gateway plugins for substituting payment URL parameters
- Added expectation: Gateways should return
getAmountPaid()
as negative at refund/rollback types of transactions - Dropped PHP 7.3 support (added attribute field types)
- Changed internal CS ruleset from PSR-2 to PSR-12 (incl. declare strict types)
- Fixed a possible string return type instead of float in Payment module
- The very first release of this module
- Supports PHP 7.3 - 8.0
- Supports Laravel 6 - 8
- Added payments, payment statuses, payment methods
- Added gateway registry
- Added Payment factory (creates payment from payables and payment methods)
- Added payment events
- Added payment- gateway, method, request and response contracts
- Added NullGateway