Release 1.16.0

Core Functionality Updates

ChangesDescription
Direct PAN Usage for Initial Transactions with WorldpayPreviously, during payment processing via Worldpay, we first requested a token and then executed the payment using the token. With this update, the Primary Account Number (PAN) is now directly utilized for the first transaction, streamlining the process and reducing latency for initial payments.
Configurable Retry Timing for Backup Processor PaymentsWe have introduced a feature that allows configuring the delay before the system retries a payment with the backup processor if the initial attempt with the primary processor fails. By default, the retry is immediate (0 minutes), but you can now set a delay of up to 60 minutes. This provides greater flexibility in managing transaction retries and optimizing payment workflows.
Enhanced Card Handling for Subscription PaymentsOur system supports linking multiple cards to a subscription and sequentially attempting payments. If the payment with the first card fails, the system will try the second card, and so on.

With the new feature, you can configure whether the second and subsequent cards should be used on the same day as the initial attempt or only in the next recycle cycle. This added flexibility allows for better control over retry strategies and ensures alignment with business needs.
Introduction of Stateful Webhooks with Enhanced FeaturesWe have transitioned from a stateless to a stateful webhook mechanism to align with industry best practices. This new implementation improves reliability, transparency, and efficiency when notifying external systems about events.

Key Features:

Stateful Webhooks: Each webhook now includes the state of the entity at the moment of generation, ensuring accurate context for external systems.

Retry Mechanism: Supports progressive retries in case of transient failures, enhancing delivery reliability.

Preserved Order: Webhooks are processed sequentially for each merchant, preventing disorder and ensuring consistent event streams. Processing halts and resumes as issues are resolved.

Custom Configuration: Merchants can now define specific webhook types they wish to receive, reducing system load and unnecessary notifications.

This update ensures a robust, scalable, and configurable webhook experience for merchants and their integrated systems.
Optimized EPX Transaction ProcessingTransactions with EPX now process faster by using the PAN for the first payment when no token is available. Token retrieval happens in parallel, ensuring seamless processing for subsequent transactions.
Enhanced TSYS Transaction ProcessingThe transaction flow with TSYS has been improved to reduce delays. For the first payment method transaction without a token, the PAN is used directly, while token retrieval occurs in parallel to ensure smooth processing for future payments.

Documentation Portal Updates

ChangesDescription
Webhook UsageWe have revised the documentation on the portal to reflect the latest changes and best practices for using webhooks: Webhook Events.
Network Processing TypesWe have revised and expanded the documentation on transaction processing to provide clearer guidance for various transaction types, including Initial Recurring, Recurring, and others: Network Processing Types.
Descriptor GuideWe have also updated the Descriptor Guide to include the latest recommendations and examples for customizing transaction descriptors: Descriptor Guide.

Technical Enhancements

ChangesDescription
Optimization of Processor RequestsWe have optimized the number of requests sent to payment processors by removing unnecessary calls. This improvement reduces the overall transaction volume and helps to minimize operational costs associated with processing fees.
Direct Integration with Nuvei for Network Transaction ID SupportTo address the limitation in the Nuvei SDK, which currently does not support the network transaction ID required for linking recurring transactions into a unified stream, we have implemented a direct integration with Nuvei.

This new integration bypasses the SDK, allowing us to include the network transaction ID and ensure seamless handling of recurring transactions.
Bug fixesWe've resolved several bugs to improve the stability and performance of the product.