Release Notes - January '25
ย ย ย Our release communication aims to inform you early of upcoming releases. Please keep in mind that the scope of a release is subject to change prior to the production release date.
Important Dates:
- Release to Sandboxes: December 29, 2024
- Release Webinar: January 3, 2025
- Release to Production: January 26, 2025
ย ย ย The January '25 release includes the full scope of the cancelled November '24 production release.
NEW PILOT
FinDock Bank Feed
Our latest major new feature development, FinDock Bank Feed, is ready for piloting. FinDock Bank Feed enables you to directly connect FinDock to your bank account(s) for automatic transaction import and matching. This eliminates manual bank file handling in the reconciliation process and ensures Salesforce payment data is up to date in near real-time.
Please join us at the release webinar to learn more!
NEW BETA FEATURES
PayLinks support for updating recurring payments
We are happy to announce that FinDock PayLinks now supports updating existing recurring payments. For example, you can use now use PayLinks to update recurring card payments when the card expires or when the bank account needs to be changed.
New Payment API endpoint for recurring payments
We have added a new /Recurring
endpoint to the Payment API to allow developers to get details on existing recurring payments from source-specific objects like Recurring Payment (FinDock Standalone), Recurring Donation (NPSP) and Gift Commitment (Fundraising).
Similar to the /Installments
endpoint, you use a GET request with an identifier, either the record Id or GUID, to fetch details. The response message includes, for example, the recurring payment start date, frequency, currency, and amount. The provided details allow you to take further actions to manage the payment, like changing the payment method.
Update recurring payments through Payment API
Using the /PaymentIntent
endpoint, you can now update existing recurring payments of source-specific objects like Recurring Payment (FinDock Standalone), Recurring Donation (NPSP) and Gift Commitment (Fundraising). This significant enhancement allows you to change Payment Method, Payment Processor and Target for the recurring payment, along with the related Mandate and Payment Profile records.
Similar to working with existing installments, you can identify the recurring payment to be updated by using the recurring Id. However, you can also use the GUID as an identifier. When using this new update option, please keep in mind that FinDock will use defaults for anything that is not explicit in the request body. Additional parameters for updating mandates and payment profiles are optional.
In addition to the Payment API changes, we have updated the default Guided Matching rule set for payment intent inbound reports to handle the new recurring aspects of the report.
Core
New managed layouts for Transaction Set and Transaction
We are happy to announce two new managed layouts for Transaction Set and Transaction. Before this release, the standard layouts for these objects typically required significant customization. With the managed layouts from FinDock, you get most if not all your required payments management details out of the box.
New installations will use these managed layouts automatically. For existing installations, you can manually move to the new layouts if desired.
Guided Matching performance enhancements
This release includes some backend refactoring and clean up of Guided Matching to improve performance and reliability.
Guided Matching Installment status handling update
Issue: The Installment status Paid, used to indicate a payable installment has been disbursed, was not included as a closed state in the Query rule logic. This could lead to unexpected Guided Matching results with disbursement reconciliation.
Solution: We've added Paid as a closed status so that the status is handled the same way as Collected and other closed states. The changes only impacts SEPA Credit Transfer reconciliation, and we are reaching out to customers who may be affected.
Fundraising
Gift transaction handling after migration
Issue: When using the Disable installment creation for migration setting in the FinDock for Fundraising, FinDock does not create installments for a gift commitment with gift transactions that have the status Paid or Fully Refunded. However, if that setting is disabled and those gift transactions are later updated, FinDock incorrectly created installments for the transactions.
Solution: We have modified the generate installment logic for Fundraising to prevent installments from being created when gift transactions with Paid or Fully Refunded status are updated.
Paid Gift Transaction handling update
Issue: If you update the status of a gift transaction to Paid and the Transaction Date on the record is not Today, the related installment could not be saved with the error CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY
.
Solution: We removed the create and update logic on Installment that caused the error. This has now been replaced with a new field mapping between Transaction Date on Gift Transaction and Last Collection Date on Installment that is synced both directions.
Transaction Date handling update
Issue: The Transaction Date on a gift transaction is filled with the Due Date from the related installment when the installment is created. This does not reflect the current meaning of Transaction Date, a date which indicates the transaction is completed, i.e. collected.
Solution: This behavior was developed in the early changes of our Fundraising source connector. Since then, the Salesforce implementation has evolved, so our original solution is no longer ideal. This behavior has now be removed and replaced by a new field mapping between Transaction Date on Gift Transaction and Last Collection Date on Installment that is synced both directions.
Sweden
SSN check for Autogiro payments
Issue: When using FinDock e-mandates together with Autogiro, it was possible to setup up the Autogiro payment with one social security number (SSN) using Giving Pages or a custom Payment API front-end, but sign the e-mandate with a different SSN.
Solution: We have updated the e-mandate process to check the SSN provided by the payer to sign the e-mandate with the SSN on for the new Autogiro mandate. If these are not equal, the payer is redirected to the failure URL, and FinDock sets the new mandate and installment to Failed.
Giro payments with existing personnummer
Issue: If payer already has a personnummer (NPFF__Personnummer__c
) and made a Giro payment using the same contact details through the Payment API (including Giving Pages), the personnummer would get overwritten with a blank value.
Solution: We have corrected the personnummer handling to prevent existing values from being overwritten.
ProcessingHub reconnect and Bankgirot SFTP service
Issue: If ProcessingHub is disconnected after an Autogiro target is configured and Bankgirot SFTP service polling has started, polling does not resume after ProcessingHub is reconnected.
Solution: We identified and resolved the issue causing SFTP polling to not resume. When ProcessingHub is reconnected, FinDock starts polling the Bankgirot SFTP service for configured Autogiro targets as expected.
Adyen
Support for Apple Pay and Google Pay
With this release, the Adyen payment extension now supports making one-time and recurring payments with Apple Pay and Google Pay. These are implemented as alternative payment methods for the credit card payment method, so no configuration changes are needed in FinDock, though you need to enable these methods in your Adyen account. When a payer selects the credit card method and has a digital wallet on the device, the Adyen hosted payment page automatically recognizes the wallet and shows an Apple Pay or Google Pay button.
Buckaroo
Redirect for cancelled payments
Issue: If a payer selected Bancontact in the FinDock payment form and then cancels the payment on Buckaroo's Hosted Payment Page (HPP) by, for instance, clicking the Back button, the payer is redirected to the Success URL. This leads to a failed installment along with incorrect feedback to the payer.
Solution: This issue was caused by Bancontact missing an error URL definition in the FinDock payment extension. We have now set the Failure URL to be the error URL for Bancontact as is the case for other Buckaroo payment methods.
GoCardless
GoCardless: Charge back notification failures
Issue: If FinDock receives the payments.confirmed
and payments.charge_back
notifications from GoCardless simultaneously or out of order, the charge back processing fails, resulting in the related Installment record not getting updated to Failed.
Solution: We have re-worked how GoCardless notifications are sorted in Notification Gateway, as well as how they are processed through Guided Matching. With these changes, the ordering of the payments.charge_back
notification handling is fixed so that inbound report processing results in a failed installment as expected.
Mollie
Queueable framework for recurring payments
To boost performance of installment generation in large payment schedules (with many recurring payments), we have implemented our queueable framework for Mollie as payment processor. This is an established framework that is already used, for example, to run payment schedules in large data volume (LDV) org.
Saferpay
PostFinance Pay replaces PF Card and PF e-finance
With this release, the PostFinance Card and PostFinance e-finance payment methods available through Saferpay are replaced by the new PostFinance Pay payment method. Due to the extremely low usage of PostFinance Card and PostFinance e-finance, both of which are fully deprecated by Saferpay already, we are removing these methods from the Saferpay extension and have directly informed customers who have Saferpay.
Stripe
Notifications after connecting a different org
Issue: If a Stripe account that has been connected to one org is used to connect to a different org, FinDock would still route Stripe notifications to the previously connected org.
Solution: The issue was caused by a backend environment variable that was being unexpectedly overwritten. This has now been resolved so the new org connection details are correctly stored and used as expected.
Worldpay
Support for Apple Pay and Google Pay
With this release, the Worldpay Corporate Gateway payment extension supports one-time and recurring payments with Apple Pay and Google Pay. These are implemented as alternative payment methods for the credit card payment method, so no configuration changes are needed. When a payer selects the credit card method and has a digital wallet on the device, the Worldpay hosted payment page automatically recognizes the wallet and shows an Apple Pay or Google Pay button.
Heroku app maintenance
This release includes version upgrades for software components used in FinDock apps on Heroku. These updates apply to ProcessingHub, WebHub, Notification Gateway and FinDock installation frameworks.