Skip to content

Feat: Improve Saas Accounts payments processors#61

Merged
marioserrano09 merged 7 commits intomainfrom
feature/improve-saas-payments
Apr 19, 2026
Merged

Feat: Improve Saas Accounts payments processors#61
marioserrano09 merged 7 commits intomainfrom
feature/improve-saas-payments

Conversation

@marioserrano09
Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings April 19, 2026 21:19
@marioserrano09 marioserrano09 merged commit 13315d2 into main Apr 19, 2026
3 checks passed
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the Dynamia Platform/Extensions release to 26.4.1 and extends the SaaS payment-provider configuration model/UI (including per-account custom payment provider selection), alongside a refactor/documentation expansion of the ZK ProviderPickerBox used to pick provider implementations from the IoC container.

Changes:

  • Bump Maven and npm package versions from 26.4.0 → 26.4.1 across platform, themes, and extensions.
  • Enhance SaaS payments configuration: new AccountPaymentProvider secret/extra fields, Account.customPaymentProvider, and descriptor updates to expose these in forms/tables.
  • Improve ProviderPickerBox maintainability with helper methods + expanded Javadoc.

Reviewed changes

Copilot reviewed 62 out of 63 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
pom.xml Bumps parent project version to 26.4.1.
themes/pom.xml Aligns themes module with 26.4.1 parent.
themes/theme-dynamical/sources/pom.xml Updates parent + ZK dependency versions to 26.4.1.
platform/ui/zk/pom.xml Aligns ZK UI module and internal dependencies to 26.4.1.
platform/ui/ui-shared/pom.xml Aligns shared UI module dependencies to 26.4.1.
platform/starters/zk-starter/pom.xml Updates starter dependency versions to 26.4.1.
platform/core/actions/pom.xml Aligns actions module dependencies to 26.4.1.
platform/core/commons/pom.xml Aligns commons module to 26.4.1.
platform/core/crud/pom.xml Aligns CRUD module dependencies to 26.4.1.
platform/core/domain/pom.xml Aligns domain module to 26.4.1.
platform/core/domain-jpa/pom.xml Aligns domain-jpa module dependencies to 26.4.1.
platform/core/integration/pom.xml Aligns integration module dependencies to 26.4.1.
platform/core/io/pom.xml Aligns IO module to 26.4.1.
platform/core/navigation/pom.xml Aligns navigation module dependencies to 26.4.1.
platform/core/reports/pom.xml Aligns reports core module to 26.4.1.
platform/core/templates/pom.xml Aligns templates module dependencies to 26.4.1.
platform/core/viewers/pom.xml Aligns viewers module dependencies to 26.4.1.
platform/core/web/pom.xml Aligns web module dependencies to 26.4.1.
platform/packages/sdk/package.json Bumps JS SDK version to 26.4.1.
platform/packages/sdk/package-lock.json Updates lockfile version entries to 26.4.1.
platform/packages/ui-core/package.json Bumps UI core package version to 26.4.1.
platform/packages/vue/package.json Bumps Vue adapter package version to 26.4.1.
platform/ui/zk/src/main/java/tools/dynamia/zk/ui/ProviderPickerBox.java Refactors provider picker reflection/selection logic and adds extensive Javadoc.
extensions/pom.xml Aligns extensions parent to 26.4.1.
extensions/security/sources/pom.xml Aligns security extension parent to 26.4.1.
extensions/security/sources/core/pom.xml Updates security core dependencies to 26.4.1.
extensions/security/sources/ui/pom.xml Updates security UI dependencies to 26.4.1.
extensions/saas/sources/pom.xml Aligns SaaS extension parent to 26.4.1.
extensions/saas/sources/api/pom.xml Updates SaaS API dependency versions to 26.4.1.
extensions/saas/sources/core/pom.xml Updates SaaS core dependency versions to 26.4.1.
extensions/saas/sources/jpa/pom.xml Updates SaaS JPA dependency versions to 26.4.1.
extensions/saas/sources/remote/pom.xml Updates SaaS remote dependency versions to 26.4.1.
extensions/saas/sources/ui/pom.xml Updates SaaS UI dependency versions to 26.4.1.
extensions/saas/sources/core/src/main/java/tools/dynamia/modules/saas/domain/AccountPaymentProvider.java Adds new payment-provider secret/extra fields.
extensions/saas/sources/core/src/main/java/tools/dynamia/modules/saas/domain/Account.java Adds per-account customPaymentProvider relation.
extensions/saas/sources/core/src/main/java/tools/dynamia/modules/saas/AccountPaymentProcessor.java Changes processor interface shape (adds default extra-label methods; removes processing method).
extensions/saas/sources/ui/src/main/resources/META-INF/descriptors/AccountRegionTable.yml Shows paymentProvider in regions table.
extensions/saas/sources/ui/src/main/resources/META-INF/descriptors/AccountRegionForm.yml Updates form layout columns.
extensions/saas/sources/ui/src/main/resources/META-INF/descriptors/AccountPaymentProviderTable.yml Removes serviceURL from table listing.
extensions/saas/sources/ui/src/main/resources/META-INF/descriptors/AccountPaymentProviderForm.yml Exposes new secret/extra fields + grouping and updates layout.
extensions/saas/sources/ui/src/main/resources/META-INF/descriptors/AccountForm.yml Adds customPaymentProvider field to account configuration group.
extensions/saas/packages/saas-sdk/package.json Bumps SaaS JS SDK version to 26.4.1.
extensions/reports/sources/pom.xml Aligns reports extension parent to 26.4.1.
extensions/reports/sources/api/pom.xml Aligns reports API module to 26.4.1.
extensions/reports/sources/core/pom.xml Aligns reports core module dependencies to 26.4.1.
extensions/reports/sources/ui/pom.xml Aligns reports UI module dependencies to 26.4.1.
extensions/reports/packages/reports-sdk/package.json Bumps reports JS SDK version to 26.4.1.
extensions/finances/sources/pom.xml Aligns finances extension parent to 26.4.1.
extensions/finances/sources/api/pom.xml Aligns finances API module to 26.4.1.
extensions/file-importer/sources/pom.xml Aligns file-importer extension parent to 26.4.1.
extensions/file-importer/sources/core/pom.xml Aligns file-importer core dependency versions to 26.4.1.
extensions/file-importer/sources/ui/pom.xml Aligns file-importer UI dependency versions to 26.4.1.
extensions/entity-files/sources/pom.xml Aligns entity-files extension parent to 26.4.1.
extensions/entity-files/sources/core/pom.xml Aligns entity-files core dependencies to 26.4.1.
extensions/entity-files/sources/s3/pom.xml Aligns entity-files S3 module dependency versions to 26.4.1.
extensions/entity-files/sources/ui/pom.xml Aligns entity-files UI module dependency versions to 26.4.1.
extensions/entity-files/packages/files-sdk/package.json Bumps entity-files JS SDK version to 26.4.1.
extensions/email-sms/sources/pom.xml Aligns email-sms extension parent + dependencies to 26.4.1.
extensions/email-sms/sources/core/pom.xml Aligns email-sms core dependencies to 26.4.1.
extensions/email-sms/sources/ui/pom.xml Aligns email-sms UI dependencies to 26.4.1.
extensions/dashboard/sources/pom.xml Aligns dashboard extension dependencies to 26.4.1.
README.md Updates documented dependency versions and CalVer examples to 26.4.1.
Files not reviewed (1)
  • platform/packages/sdk/package-lock.json: Language not supported
Comments suppressed due to low confidence (1)

extensions/saas/sources/core/src/main/java/tools/dynamia/modules/saas/AccountPaymentProcessor.java:7

  • The Javadoc still describes this as an API for "processing account payments", but the processing method was removed and the interface now only exposes metadata (id/name/labels). Either restore the processing contract or update the Javadoc to reflect the new responsibility to avoid misleading implementers.
/**
 * Basic API to implement processing account payments. You should implement
 * your own payment processor and register it using spring annotations
 * registry.
 */

Comment on lines +106 to +107
public void setWebCheckoutSecret(String webcheckoutSecret) {
this.webCheckoutSecret = webcheckoutSecret;
Comment on lines +17 to +19
webCheckoutSecret:
label: Webcheckout URL
integritySecret:
Comment on lines +343 to 344
} catch (Exception _) {
}
Comment on lines 151 to 153
private void initModel() {
if (providerClass != null) {
try {

configuration:
fields: [ locale, timeZone,skin, maxUsers,statusDescription,uuid,instanceUuid,creationDate,remote,autoInit,requiredInstanceUuid,redirect,templateAccount ]
fields: [ locale, timeZone,skin, maxUsers,statusDescription,uuid,instanceUuid,creationDate,customPaymentProvider,remote,autoInit,requiredInstanceUuid,redirect,templateAccount, ]
Comment thread README.md
Comment on lines +19 to 22
Starting with version **26.4.1**, Dynamia Platform adopts **Calendar Versioning (CalVer)** with the format `YY.MM.MINOR`. This means:
- **All modules share the same version**: Core, extensions, starters, themes—everything is released together
- **26.4.0** = First release of February 2026 (Year 26, Month 02, Release 0)
- **26.4.1** = First release of February 2026 (Year 26, Month 02, Release 0)
- **26.2.1** = Second release of February 2026
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.

2 participants