{"id":1,"library":"Adyen","title":"Adyen","description":"Official Python API library for Adyen payment processing. Auto-generated from OpenAPI spec. PyPI package name is 'Adyen' (capital A). Uses X-API-Key auth, not OAuth. Each major version pins updated API versions and may contain breaking changes from codegen corrections.","status":"active","version":"14.0.0","language":"python","source_language":"en","source_url":"https://github.com/Adyen/adyen-python-api-library","tags":["payments","adyen","enterprise","python","api"],"install":[{"cmd":"pip install Adyen","lang":"bash","label":"Python (note capital A)"}],"dependencies":[{"reason":"HTTP client used internally.","package":"requests","optional":false}],"imports":[{"note":"Package name is 'Adyen' with capital A. 'import adyen' (lowercase) fails with ModuleNotFoundError.","wrong":"import adyen\nfrom adyen import Adyen","symbol":"Adyen","correct":"import Adyen\n\nadyen = Adyen.Adyen()\nadyen.client.xapikey = 'YOUR_X_API_KEY'\nadyen.client.platform = 'test'  # or 'live'"},{"note":"For multi-credential setups, use service-specific clients. The hmac field on adyen.payment.client is for webhook HMAC verification, not API auth.","wrong":"adyen.payment.client.hmac = '...'","symbol":"Service-specific client","correct":"from Adyen import checkout\ncheckout.client.xapikey = 'YOUR_X_API_KEY'\ncheckout.client.platform = 'test'"}],"quickstart":{"code":"import Adyen\n\nadyen = Adyen.Adyen()\nadyen.client.xapikey = 'YOUR_X_API_KEY'\nadyen.client.platform = 'test'  # change to 'live' for production\n\nrequest = {\n    'merchantAccount': 'YOUR_MERCHANT_ACCOUNT',\n    'amount': {'currency': 'USD', 'value': 1000},  # value in minor units (cents)\n    'reference': 'order-12345',\n    'paymentMethod': {\n        'type': 'scheme',\n        'encryptedCardNumber': 'test_4111111111111111',\n        'encryptedExpiryMonth': 'test_03',\n        'encryptedExpiryYear': 'test_2030',\n        'encryptedSecurityCode': 'test_737'\n    },\n    'returnUrl': 'https://your-company.com/checkout/return'\n}\n\nresult = adyen.checkout.payments_api.payments(request)\nprint(result.message)","lang":"python","description":"Amounts are always in minor units (cents, pence). 1000 = $10.00 USD."},"warnings":[{"fix":"Review method signatures for services you use and remove any duplicated path parameter arguments. Only the request object and explicit path params (e.g. psp_reference) should be passed.","message":"v13.0 introduced a codegen fix: service methods that previously duplicated required path parameters as separate unused method arguments were corrected. Code that was passing those extra args (e.g. method(entity_id, entity_id, request)) now receives TypeError for unexpected arguments.","severity":"breaking","affected_versions":"< 13.0.0"},{"fix":"Use adyen.management.terminal_management to manage terminal fleet via the Management API.","message":"POS Terminal Management API deprecated. All terminal fleet management must migrate to the Management API. Calls to terminal management endpoints via the old API return deprecation errors.","severity":"breaking","affected_versions":"all"},{"fix":"pip install Adyen && import Adyen","message":"Package name is 'Adyen' (capital A). pip install adyen (lowercase) installs a different, unrelated package. import adyen fails with ModuleNotFoundError.","severity":"gotcha","affected_versions":"all"},{"fix":"Multiply by 100 for 2-decimal currencies. Check Adyen docs for currencies with different decimal places (e.g. JPY has 0 decimals).","message":"All payment amounts are in minor currency units. 1000 = $10.00 USD, £10.00 GBP, €10.00 EUR. Passing major units (e.g. value: 10) results in processing 10 cents/pence.","severity":"gotcha","affected_versions":"all"},{"fix":"Set adyen.client.platform = 'live' in production. Test and live environments use separate API keys.","message":"adyen.client.platform must be set to 'test' or 'live'. Default is 'test'. Forgetting to set 'live' in production sends requests to the test environment, resulting in no real charges.","severity":"gotcha","affected_versions":"all"},{"fix":"Set adyen.client.live_endpoint_prefix to your unique live prefix from Adyen Customer Area when using the live environment.","message":"Live environment endpoints require a live URL prefix specific to your account (e.g. {YOUR-UNIQUE-LIVE-PREFIX}-checkout-live.adyenpayments.com). The SDK default live URL will fail for checkout endpoints without this prefix.","severity":"gotcha","affected_versions":"all"},{"fix":"Review and address pip's recommendations regarding environment setup (e.g., use virtual environments, avoid running pip as root) and keep pip updated. These messages are external to the Adyen SDK's functionality.","message":"Pip warnings or notices related to running pip as root, not using a virtual environment, or available pip updates are observed in the test output. These are general advisories from the pip package manager and do not indicate a failure or issue with the Adyen SDK itself.","severity":"gotcha","affected_versions":"all"},{"fix":"It is recommended to use a virtual environment for package installations to avoid permission issues and conflicts with the system package manager. Consider updating pip if a notice is displayed, using 'pip install --upgrade pip'.","message":"Pip displays warnings about running as a root user, which can cause permission issues, and often notifies about available updates. These are general pip environment issues, not specific to the Adyen library.","severity":"gotcha","affected_versions":"all"}],"env_vars":{"optional":[{"name":"ADYEN_HMAC_KEY","note":"HMAC key for webhook signature verification. Set on adyen.payment.client.hmac."}],"required":[{"name":"ADYEN_API_KEY","note":"X-API-Key from Adyen Customer Area. Convention only — pass directly to adyen.client.xapikey."},{"name":"ADYEN_MERCHANT_ACCOUNT","note":"Merchant account name from Adyen Customer Area. Passed per-request, not globally."}]},"last_verified":"2026-05-11T17:42:50.558Z","next_check":"2026-06-01T00:00:00.000Z","problems":[{"fix":"Ensure the package is installed using 'pip install Adyen' and import it with 'import Adyen'.","cause":"The Adyen package is not installed or the import statement uses incorrect capitalization.","error":"ModuleNotFoundError: No module named 'Adyen'"},{"fix":"Use 'from Adyen.client import AdyenClient' to import the correct class.","cause":"The Adyen module does not contain a 'Client' attribute; the correct attribute is 'AdyenClient'.","error":"AttributeError: module 'Adyen' has no attribute 'Client'"},{"fix":"Instantiate the client correctly using 'adyen = Adyen.Adyen()'.","cause":"Attempting to call the 'Adyen' module as a function, which is not supported.","error":"TypeError: 'Adyen' object is not callable"},{"fix":"Use 'import Adyen' instead of 'import adyen'.","cause":"The package name is case-sensitive; 'Adyen' should be capitalized.","error":"ImportError: cannot import name 'Adyen' from 'adyen'"},{"fix":"Verify that the correct API key is set using 'adyen.client.xapikey = \"YourXapikey\"'.","cause":"The API key provided is invalid or missing.","error":"AdyenAPIAuthenticationError: HTTP Status 401 Unauthorized"}],"ecosystem":"pypi","meta_description":null,"install_score":100,"install_tag":"verified","quickstart_score":80,"quickstart_tag":"verified","pypi_latest":null,"install_checks":{"last_tested":"2026-05-11","tag":"verified","tag_description":"installs cleanly on critical runtimes, fast import, recently tested","results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.23,"mem_mb":4.8,"disk_size":"28.9M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.1,"mem_mb":4.8,"disk_size":"29M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.23,"mem_mb":5.3,"disk_size":"31.6M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.27,"mem_mb":5.3,"disk_size":"31M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.23,"mem_mb":5.2,"disk_size":"23.2M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.29,"mem_mb":5.2,"disk_size":"23M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.14,"mem_mb":5.1,"disk_size":"22.8M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.24,"mem_mb":5.1,"disk_size":"23M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.23,"mem_mb":4.8,"disk_size":"28.4M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.12,"mem_mb":4.8,"disk_size":"28M"}]},"quickstart_checks":{"last_tested":"2026-05-11","tag":"verified","tag_description":"quickstart runs on critical runtimes, recently tested","results":[{"runtime":"python:3.10-alpine","exit_code":0},{"runtime":"python:3.10-slim","exit_code":0},{"runtime":"python:3.11-alpine","exit_code":0},{"runtime":"python:3.11-slim","exit_code":0},{"runtime":"python:3.12-alpine","exit_code":0},{"runtime":"python:3.12-slim","exit_code":0},{"runtime":"python:3.13-alpine","exit_code":0},{"runtime":"python:3.13-slim","exit_code":0},{"runtime":"python:3.9-alpine","exit_code":0},{"runtime":"python:3.9-slim","exit_code":0}]}}