Skip to content

[configurationwebhooks] Code generation: update services and models#899

Open
AdyenAutomationBot wants to merge 1 commit intomainfrom
sdk-automation/configurationwebhooks
Open

[configurationwebhooks] Code generation: update services and models#899
AdyenAutomationBot wants to merge 1 commit intomainfrom
sdk-automation/configurationwebhooks

Conversation

@AdyenAutomationBot
Copy link
Collaborator

This PR contains the automated changes for the configurationwebhooks service.

The commit history of this PR reflects the adyen-openapi commits that have been applied.

@AdyenAutomationBot AdyenAutomationBot requested review from a team as code owners March 18, 2026 16:03
@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 is an automated update to the configurationwebhooks service, incorporating new data models and refining existing documentation. The primary focus of the new additions is to expand the handling of mandate notifications and associated bank account information, reflecting recent changes in the OpenAPI specification. The update ensures the codebase remains synchronized with the latest API definitions.

Highlights

  • New Mandate-related Models Added: Six new PHP models have been introduced to support mandate-related webhooks and bank account details within the ConfigurationWebhooks service. These models define the structure for Mandate, MandateBankAccount, MandateBankAccountAccountIdentification, MandateNotificationData, MandateNotificationRequest, and MandatePartyIdentification.
  • Updated Documentation for settlementDelayDays: The PlatformPaymentConfiguration model has been updated with a more detailed description for the settlementDelayDays property, clarifying its dependency on 'Custom Sales Day Payout' being enabled.

🧠 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.

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.

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

The pull request introduces several new PHP model classes for Adyen Configuration Webhooks, including Mandate, MandateBankAccount, MandateBankAccountAccountIdentification, MandateNotificationData, MandateNotificationRequest, MandatePartyIdentification, and UKLocalMandateAccountIdentification. Additionally, a minor documentation update was made to the settlementDelayDays property in PlatformPaymentConfiguration.php. The review comments highlight an improvement opportunity in the newly added Mandate.php model, where date/time properties such as createdAt and updatedAt are incorrectly typed as object in the openAPITypes array and their corresponding getter/setter method signatures. These should be updated to \DateTime for enhanced type safety and consistency.

'balanceAccountId' => 'string',
'counterparty' => '\Adyen\Model\ConfigurationWebhooks\MandateBankAccount',
'createdAt' => 'object',
'id' => 'string',
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The createdAt property is typed as object in openAPITypes. For date/time fields, it's best practice to use \DateTime for better type safety and consistency with how jsonSerialize and toArray handle \DateTime objects.

'createdAt' => '\DateTime',

'paymentInstrumentId' => 'string',
'status' => 'string',
'type' => 'string',
'updatedAt' => 'object'
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

Similar to createdAt, the updatedAt property is typed as object. It should be \DateTime for improved type safety and consistency.

'updatedAt' => '\DateTime'

*/
public function getCreatedAt()
{
return $this->container['createdAt'];
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The return type hint for getCreatedAt() is object|null. Given that this represents a date/time, it should be \DateTime|null for type accuracy and consistency with how \DateTime objects are handled elsewhere in the class (e.g., in toArray).

    public function getCreatedAt()
    {
        return $this->container['createdAt'];

/**
* Sets createdAt
*
* @param object|null $createdAt createdAt
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The parameter type hint for setCreatedAt() is object|null. It should be \DateTime|null to ensure type safety when setting a date/time value.

    public function setCreatedAt($createdAt)
    {
        $this->container['createdAt'] = $createdAt;

/**
* Gets updatedAt
*
* @return object|null
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The return type hint for getUpdatedAt() is object|null. It should be \DateTime|null for type accuracy and consistency.

    public function getUpdatedAt()
    {
        return $this->container['updatedAt'];

/**
* Sets updatedAt
*
* @param object|null $updatedAt updatedAt
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The parameter type hint for setUpdatedAt() is object|null. It should be \DateTime|null to ensure type safety when setting a date/time value.

    public function setUpdatedAt($updatedAt)
    {
        $this->container['updatedAt'] = $updatedAt;

@sonarqubecloud
Copy link

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant