Skip to content

[ECP-9926] Implement IRIS payment method#3262

Open
candemiralp wants to merge 1 commit intomainfrom
ECP-9926
Open

[ECP-9926] Implement IRIS payment method#3262
candemiralp wants to merge 1 commit intomainfrom
ECP-9926

Conversation

@candemiralp
Copy link
Contributor

Description

This PR implements Greek payment Method, IRIS. Please visit Adyen Documentation for further information.

@candemiralp candemiralp requested a review from a team as a code owner March 2, 2026 14:45
@candemiralp candemiralp added the Feature Indicates a new feature addition label Mar 2, 2026
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces the IRIS payment method, a Greek payment solution, into the Adyen module. The changes involve setting up the necessary backend configurations, integrating it with the frontend checkout and GraphQL, and adding its visual assets. This expansion aims to provide more payment options for customers, particularly in the Greek market.

Highlights

  • New Payment Method Integration: Implemented the Greek payment method, IRIS, into the Adyen payment module, enabling its use for transactions.
  • Configuration Setup: Added comprehensive configuration for the IRIS payment method, including its model, title, payment actions, and various capabilities like capture, refund, and void.
  • Frontend and GraphQL Support: Integrated IRIS into the frontend checkout process, GraphQL API, and multishipping layouts, ensuring a consistent user experience across different store functionalities.
  • Payment Method Logo: Included the official SVG logo for the IRIS payment method to be displayed in the checkout.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • etc/config.xml
    • Added new configuration for the 'adyen_iris' payment method, defining its properties and capabilities.
  • etc/di.xml
    • Refactored the SubmitAnalyticsEvents arguments for better readability.
    • Added virtual types for AdyenPaymentIrisFacade, AdyenPaymentIrisValueHandlerPool, AdyenPaymentIrisConfigValueHandler, and AdyenPaymentIrisConfig to support the new payment method.
  • etc/events.xml
    • Registered an observer for the payment_method_assign_data_adyen_iris event to handle data assignment for the IRIS method.
  • etc/frontend/di.xml
    • Included 'adyen_iris' in the list of payment methods within the frontend checkout configuration.
  • etc/graphql/di.xml
    • Added 'adyen_iris' to the GraphQL additional data provider map.
  • etc/payment.xml
    • Declared 'adyen_iris' as a payment method allowing multiple addresses.
  • view/base/web/images/logos/iris.svg
    • Added the SVG image file for the IRIS payment method logo.
  • view/frontend/layout/checkout_index_index.xml
    • Configured 'adyen_iris' to require a billing address during checkout.
  • view/frontend/layout/multishipping_checkout_billing.xml
    • Assigned the abstract form template for 'adyen_iris' in the multishipping checkout billing layout.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request implements the IRIS payment method by adding the necessary XML configurations. The changes are consistent with existing payment methods in the module. I have one suggestion regarding the sort_order to ensure a predictable display order on the frontend. The rest of the implementation looks correct. Please note that it's generally better to avoid mixing feature implementation with unrelated code formatting changes, as seen in etc/di.xml, to keep pull requests focused.

<model>AdyenPaymentIrisFacade</model>
<title>IRIS</title>
<allowspecific>0</allowspecific>
<sort_order>0</sort_order>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Using a sort_order of 0 can lead to an unpredictable display order for payment methods, as it's a common default value. To ensure consistent and predictable ordering of IRIS among other payment methods, it's recommended to set a specific, non-zero value. Please check the sort orders of other payment methods to place this one appropriately.

@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 2, 2026

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature Indicates a new feature addition

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant