Skip to content

Feature/INT-1638 - General SDK update (Issuing cards/disputes, Payment Setups, Klarna, and Platforms instrument details)#614

Merged
david-ruiz-cko merged 4 commits into
masterfrom
feature/INT-1638
Jul 2, 2026
Merged

Feature/INT-1638 - General SDK update (Issuing cards/disputes, Payment Setups, Klarna, and Platforms instrument details)#614
david-ruiz-cko merged 4 commits into
masterfrom
feature/INT-1638

Conversation

@david-ruiz-cko

Copy link
Copy Markdown
Contributor

This pull request primarily introduces new classes to support ACH instrument details and bank account types. These changes help streamline model definitions and prepare the codebase for alternative serialization strategies or libraries.

Additionally, it removes the use of the @SerializedName annotation from most domain model classes in the com.checkout.accounts package, simplifying the codebase and decoupling it from Gson-specific serialization.

The most important changes are:

New Payment Methods Support:

  • Added Bacs, Card Present, Pay by Bank (Open Banking), and Stablecoin payment method classes, along with their configuration and supporting entities, to the PaymentMethods model. This allows handling these payment types in payment setups.

Order Amount Allocation and Commission:

  • Introduced PaymentSetupAmountAllocation, AmountAllocationCommission, and related models to support order splitting among sub-entities and specifying commissions per split. The Order class now includes an AmountAllocations property for this purpose.

Payment Setup Enhancements:

  • Added PaymentSetupBillingDescriptor, PaymentSetupPresentmentDetails, and PaymentSetupTerminal classes to enrich payment setup configuration and response, allowing for more detailed billing, presentment, and terminal information. These are now included in the PaymentSetupsResponse.

Bank Account and Instrument Details:

  • Added InstrumentAccountType enum and InstrumentDetailsAch class to support specifying bank account types (savings/checking) and ACH instrument details.

Other Payment Method Updates:

  • Updated KlarnaAccountHolder to reflect the account holder's name as returned by Klarna after verification.

Removal of Gson @SerializedName annotations:

  • All @SerializedName annotations have been removed from model classes such as RequestMetrics, AccountPhone, AccountsAccountHolder, AccountsCorporateAccountHolder, AccountsIndividualAccountHolder, AccountsPaymentInstrument, Company, ContactDetails, EntityDocument, EntityFinancialDetails, EntityFinancialDocuments, EntityRequirementListItem, EntityRequirementUpdateResponse, Identification, Individual, InstrumentDetailsFasterPayments, InstrumentDetailsSepa, and InstrumentDocument. This reduces dependency on Gson and cleans up the code. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]

These changes modernize the codebase, reduce serialization coupling, and add support for new instrument types.

@david-ruiz-cko david-ruiz-cko requested a review from a team July 1, 2026 08:45
Comment thread src/main/java/com/checkout/issuing/disputes/requests/AmendDisputeRequest.java Dismissed
@sonarqubecloud

sonarqubecloud Bot commented Jul 1, 2026

Copy link
Copy Markdown

@david-ruiz-cko david-ruiz-cko merged commit 63405ce into master Jul 2, 2026
6 checks passed
@david-ruiz-cko david-ruiz-cko deleted the feature/INT-1638 branch July 2, 2026 08:04
@david-ruiz-cko david-ruiz-cko changed the title Feature/int 1638 - General SDK update (Issuing cards/disputes, Payment Setups, Klarna, and Platforms instrument details) Feature/INT-1638 - General SDK update (Issuing cards/disputes, Payment Setups, Klarna, and Platforms instrument details) Jul 2, 2026
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.

3 participants