Skip to content

Adyen Python API Library v14.0.0

Latest

Choose a tag to compare

@AdyenAutomationBot AdyenAutomationBot released this 31 Oct 09:08
· 4 commits to main since this release
4d6d6eb

What's Changed

This release introduces a significant refactoring of the service layer to improve modularity, corrects auto-generated method signatures, and brings several API updates and new features. It marks a major milestone in aligning the library more closely with Adyen’s OpenAPI specifications

⚠️ Find below what's new as well as a detailed summary of the Breaking Changes, and what you should do or consider.

🛠 Breaking Changes

Method Signature Correction

The code generation template was incorrectly including required request body parameters as separate, unused arguments in service methods. The template has been corrected to only include required pathParams in the method signature alongside the request object.

This fixes incorrect method signatures across multiple services. As a result, methods that previously had duplicated and unused arguments now have a cleaner signature.

Action required: review the method signatures for the services you use and remove any unused arguments from your calls. Examples of this change include:

  • SessionAuthentication API: authenticationSessionRequest parameter removed from create_authentication_session.
  • BalancePlatform API:
    • authorisedCardUsers parameter removed from create_authorised_card_users and update_authorised_card_users.
    • balanceWebhookSettingInfo parameter removed from create_webhook_setting.
    • balanceWebhookSettingInfoUpdate parameter removed from update_webhook_setting.

Service folder restructuring

To ensure a consistent directory structure and improve modularity, several services have been moved from the services folder into their own dedicated subdirectories (e.g., Adyen/services/balanceControl/):
balanceControl, binLookup, dataProtection, disputes, posMobile, recurring, storedValue.

Introducing service wrappers

To ensure a consistent way of accessing service functionality, the restructured services now use a wrapper class that exposes their endpoints through the shared Adyen client.
This structure, already used by services like checkout and balancePlatform, now applies to: balanceControl, binLookup, dataProtection, disputes, posMobile, recurring, and storedValue.

Action required: update your code to call the API via the new wrapper structure.
For example:

# Before
result = adyen.binlookup.get_cost_estimate(request)

# After
result = adyen.binlookup.bin_lookup_api.get_cost_estimate(request)

💎 New Features

Legal Entity Management API v4

The library now supports Legal Entity Management API v4. LEM v4 enhances the onboarding process and ensures compliance with evolving regulatory data requirements across regions and products.

See the Onboarding v4 documentation for details, and review the API changes from v3 to v4 to understand the impact on your integration.

Balance Platform API

  • Added the new TransferLimitsBalanceAccountLevelApi.
  • Added the new TransferLimitsBalancePlatformLevelApi.

Checkout API

  • Added the validate_shopper_id method to the UtilityApi.

🐞 Bug Fixes

  • Generator: Fixed the api.mustache template to prevent duplicating request body fields in method signatures. This corrects method signatures across multiple services.
  • SessionAuthentication: Corrected the URL mapping for the live endpoint.

What's Changed

Breaking Changes 🛠

  • Fix(generator): Correct method signatures and refactor services by @galesky-a in #393

Fixes ⛑️

  • Release Workflow: run only for PRs from maintainers by @gcatanese in #387
  • Add workflow_call trigger to python-ci.yml by @gcatanese in #391

Other Changes 🖇️

New Contributors

Full Changelog: v13.6.0...v14.0.0