Releases: paypal/mirakl-hyperwallet-connector
Release 5.2.0
This release is focused on implementing 2 new features based on Mirakl SDK 7.x.x
🪚 Technical Improvements
Upgraded Mirakl SDK to the latest version (7.2.0)
⚙️ Improvements
-
Map default language from billing information to Hyperwallet user. Only languages supported by Hyperwallet will be mapped, the rest languages will be set to English
-
API IV07 supports a new parameter
confirm_linked_manual_documents
as default is set totrue
. The value of the parameter could be changed with the propertyPAYPAL_HYPERWALLET_CONFIRM_LINKED_MANUAL_DOCUMENTS
📄 Documentation
No changes.
🐛 Bugfixing
- Retrieve failed notifications by tokenProgram
- Avoid storing failed notifications at every attempt
🛠️ Property changes
-New property added PAYPAL_HYPERWALLET_CONFIRM_LINKED_MANUAL_DOCUMENTS
- If the property is set to
true
you confirm the payment of all linked manual accounting documents at once. - if the property is set to
false
you must confirm the payment of each manual accounting document present in the billing cycle
Release 5.1.0
This release is focused on updating Mirakl SDK so it's compatible with the latest changes in Mirakl, supporting shops that are in the TERMINATED
state.
🪚 Technical Improvements
- Upgraded Mirakl SDK to latest version (6.37.0)
⚙️ Improvements
No changes.
📄 Documentation
No changes.
🐛 Bugfixing
- Now the connector doesn't fail when there are shops in
TERMINATED
state in Mirakl.
🛠️ Property changes
No changes.
Release 5.0.0
WARNING: If your are upgrading from versions 4.x, you should read the upgrade guide, since there have been important changes in the requisites and configuration variables and the connector won't correctly run if you don't follow the instructions in the guide.
🪚 Technical Improvements
This major release contains many internal changes to ensure that the codebase is well organized, clean and uses modern versions of the underlying technology of the connector.
- The connector has been upgraded to Java 17, Spring Boot 3.x, Gradle 7.6, and the dependencies have been udpated to their latest versions.
- The configuration has been improved so all the configuration settings can be changed using environment variables without the need to change any properties file.
- The code has been reorganized and cleaned, removing the usage of Spring profiles and unnecessary QA related code.
⚙️ Improvements
- A new parameter has been added to the HTTP API of the invoice jobs. It is now possible to reprocess invoices that are in the
PAID
status (without duplicating the payment). - A new HTTP traffic audit functionality has been added. When enabled, the connector will log all the HTTP requests and responses made to the Mirakl and Hyperwallet APIs as well as all the notifications received from Hyperwallet.
- Configuration of Hyperwallet programs when using a hierarchical can now be made using environment variables without modifying internal properties file.
- An optional new mapping between Mirakl shops and Hyperwallet users has been added. With this new mapping the shop name will be mapped into the
businessOperatingName
of the Hyperwallet user, and the corporate name will be mapped into thebusinessName
.
📄 Documentation
- The documentation has been fully reorganized and rewritten for simplicity.
- The installation guide has been improved, including a new installation approach based on the generation of binaries instead of running the connector with Gradle in production environments.
🐛 Bugfixing
- The internal persistent cache used to maintain the relationships between Mirakl shops and Hyperwallet programs and bank accounts is now always up-to-date meaning it isn't needed anymore to remove the data folder or destroy the Docker container/volume when the program or the bank account token of a shop has been changed.
🛠️ Property changes
- New property
PAYPAL_HYPERWALLET_NEW_USER_MAPPING_ENABLED
:- If the variable is set to
false
, the shop name is mapped to thebusinessName
in Hyperwallet, which is the business legal name, and the coporate name is mapped tobusinessOperatingName
- If the variable is set to
true
, the shop name will be mapped tobusinessOperatingName
and the corporate name will be mapped tobusinessName
. This is the recommended value for new deployments where sellers have not been onboarded yet. - By default this variable is set to
false
. This is the required value for existing deployments with sellers already onboarded. - Setting an incorrect value to this variable could be dangerous. Please, review the toggle features configuration guide
- If the variable is set to
- New variables for program configuration:
PAYPAL_HYPERWALLET_PROGRAMS_NAMES
,PAYPAL_HYPERWALLET_PROGRAMS_BANKACCOUNTTOKENS
,PAYPAL_HYPERWALLET_PROGRAMS_PAYMENTTOKENS
andPAYPAL_HYPERWALLET_PROGRAMS_USERTOKENS
. For more details see the program configuration guide
Release 4.19.0
⚙️ Improvements
This release provides the following improvements:
- When the currency used by the marketplace in Mirakl is not allowed in Hyperwallet for the bank account information of the seller, the connector automatically chooses a compatible currency for the bank account in Hyperwallet. The payment is always made in the marketplace currency.
- Updating of bank accounts has been improved. If a seller makes a modification to the bank account in Mirakl that it's not allowed in Hyperwallet, now the connector creates a new bank account in Hyperwallet instead of throwing an error. The following, are examples of unsupported bank account modifications in Hyperwallet:
- Change the IBAN bank account number for another of a different country.
- Change the bank account type, for example from UK to IBAN.
Release 4.18.1
🐛 Bugfixing
- Now for ABA, Canada, and UK bank account types, the transfer method country in Hyperwallet is fixed to
US
,CA
, andGB
respectively, instead of reading the country from the shop contact information in Mirakl.
Releae 4.18.0
⚙️ Improvements
This release provides the following improvements:
- A feature has been added allowing to ignore sellers based on their program. Sellers belonging to ignored programs will not be sent to Hyperwallet and their invoices will not be processed by the connector.
- Improved error emails when a payment wasn't correctly paid in Hyperwallet. Now, more info about the shop is displayed in the email, and more unexpected payment statuses are handled
- Improved reliability of document download for automated KYC scenarios.
- Mirakl and Hyperwallet SDKs have been upgraded to latest versions.
🐛 Bugfixing
- Now KYC notice is removed when the user passes KYC.
New properties
PAYPAL_HYPERWALLET_IGNORED_PROGRAM_TOKENS
: List of programs separated by commas. Sellers belonging to programs in this list will be ignored by the connector.- Default value: empty.
Release 4.17.0
⚙️ Improvements
This release provides the following improvements:
- Allows failed payments to be re-created in Hyperwallet. When a payment is not successfully created in Hyperwallet due to different conditions, for example, insufficient funds in the escrow account, the next time the job runs with a delta set in a time before the failed payment happened, the payment will be tried to be paid again. Issue #91
Release 4.16.0
⚙️ Improvements
This release provides the following improvements:
- The multiprogram hierarchy setup configuration has been modified to make the setup easier. Now the multiprogram hierarchy token information is only kept in
infrastructure.properties
file andinvoices.properties
file. Please, check the README https://paypal.github.io/mirakl-hyperwallet-connector/component-hmc/4.15.0/readme/readme.html#_multiple_programs - Hyperwallet and Mirakl client sdk initialization has been centralized as much as possible to make overriding easier #79
- The country ISO code for the bank account creation in HW is now automatically retreived from the IBAN prefix.
🐛 Bugfixing
- A bug affecting the health check status providing the information about mirakl api instead of hyperwallt api has been fixed
- Encrypted incoming notifications are working again
- An encoding error when using special unicode codes under the docker image built within spring boot has been addressed
Release 4.15.0
Startup and Health Checks improvements:
- A new check for Hyperwallet API connectivity has been added to both the startup checks and the health actuator endpoint.
- The startup check system doesn't shutdown the application by default.
- Now the severity level of each individual issue found during the custom field checks is print.
- The severity level of the issues related with the
permissions
field of the custom fields has been adjusted. Now if the actual permissions are more restrictive than the expected ones, the issue is considered only a warning.
Logs improvements:
- Error logs has been improved for Hyperwallet API and Mirakl API calls, so now more information is shown in the logs and the stack trace is always print.
- Additional contextual information has been added to the logs, so now for every log line related to the execution of a batch job or a notification, additional information about the batch job or notifications is also print.
Documentation improvements:
- The README has been updated with detailed information about the startup and health checks.
- The solution guide has been updated.
🐛 Bugfixing
- A bug affecting the retrieval of the program information has been fixed for multi hierarchy program scenarios.
Changed properties
PAYPAL_HMC_STARTUPCHECKS_EXITONFAIL
: Controls whether the startup check system should shutdown the application if it finds severe issues.- Default value changed from
true
tofalse
.
- Default value changed from
Release 4.14.0
⚙️ Improvements
This release provides the following improvements:
- Added startup checks to test if the configuration of Mirakl (custom fields and documents) is compatible with the running version of HMC.
- If the documents or custom field schema is incompatible with the current version of HMC, the HMC will shut down to avoid potential errors. The startup check report can be seen in the logs when HMC is starting.
- The documents and custom fields checked, depends on the value of the
PAYPAL_HYPERWALLET_KYC_AUTOMATED
variable. For example, when is false no documents are required.
- Added a new check to test if there is connectivity with Mirakl API. This check is run at HMC startup and can be seen in the logs and is also available at any time in the health check endpoint (
/actuator/health
).
New properties
The following properties have been added:
PAYPAL_HMC_STARTUPCHECKS_EXITONFAIL
: controls whether the system should shut down when there are checks that don't pass during the startup checks.
Default Value:true
Possible Values:true
orfalse