Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor and Enhance Account Entity Management #439

Merged
merged 1 commit into from
Dec 16, 2024

Conversation

armando-rodriguez-cko
Copy link
Contributor

Description

This PR introduces significant updates and refactors to the accounts module to improve the structure, enhance clarity, and support more robust onboarding and account management functionality.

Changes Made

Accounts Module Enhancements:

  • Reorganized Accounts entities into a more structured namespace, introducing Entities.Common, Entities.Request, and Entities.Response for better modularity.
  • Introduced new classes for refined entity management:
    • OnboardSubEntityRequest
    • OnboardSubEntityResponse
    • Representative
    • ContactDetails with nested EmailAddresses and Invitee models.
  • Refactored existing entities, including:
    • Company and Individual classes, now within Entities.Common.Company.
    • Simplified Representative to support new roles and attributes.
    • Updated FinancialDetails and Documents for better compatibility.

New Enumerations:

  • Added BusinessType and CompanyPositionType enums to handle expanded account types and representative roles.

Client Enhancements:

  • Enhanced AccountsClient with additional methods:
    • GetSubEntityMembers
    • ReinviteSubEntityMember
    • UploadFile and RetrieveFile for file management.
  • Updated API paths for consistency with new structure.

Tests and Documentation:

  • Extended integration and unit tests:
    • Validates onboarding flows for Company and Individual account types.
    • Added tests for file management operations.
  • Updated skipped tests for unsupported or unavailable endpoints.

Breaking Changes:

  • Removed legacy classes like AccountPhone, EntityEmailAddresses, and others replaced with new structured models.
  • Simplified AccountsFilePurpose by consolidating document-related logic.

Bug Fixes and Updates:

  • Updated JSON serialization to support nested and renamed classes.

Impact

  • Modularity: The reorganized structure makes the SDK easier to extend and maintain.
  • Improved Test Coverage: Extensive testing ensures robustness and reliability.
  • Enhanced Usability: Simplified entity models and client methods improve developer experience.

Notes

  • This PR requires re-testing integrations due to breaking changes in the AccountsClient and entity classes.
  • The refactored namespaces may necessitate updates in external implementations relying on legacy classes.

Additional Updates

  • Skipped tests marked unavailable until endpoint support is confirmed.

@armando-rodriguez-cko armando-rodriguez-cko requested a review from a team December 16, 2024 14:12
@armando-rodriguez-cko armando-rodriguez-cko merged commit 2a3b0a4 into master Dec 16, 2024
5 checks passed
@armando-rodriguez-cko armando-rodriguez-cko deleted the feature/accounts-update-refactor branch December 16, 2024 17:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants