Add Unreferenced Refund support #497
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.



This pull request introduces a new payment source abstraction and adds several concrete payment source classes, along with enhancements for card account holders and related types. The changes improve the structure and extensibility of the payments codebase by standardizing source representations and enriching account holder details.
Payment Source Abstraction and Implementations
AbstractSourceto represent a generic payment source, and created multiple concrete implementations for various payment types:AfterpaySource,AlipayCnSource,AlipayHkSource,AlipayPlusSource,AlmaSource,BancontactSource, andBenefitSource. Each class sets its specificSourceTypeand, where applicable, introduces relevant properties (e.g.,IbanforBancontactSource). [1] [2] [3] [4] [5] [6] [7] [8]Card Source Account Holder Enhancements
AbstractAccountHolderand concrete classes for different account holder types (IndividualAccountHolder,CorporateAccountHolder,GovernmentAccountHolder), each with properties for names and account name inquiry results. Also added supporting enums and details classes for name inquiry checks. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]Card Source Supporting Types
BillingAddressclass to represent the payment source owner's billing address, with fields for address lines, city, state, zip, and country code.AccountUpdateStatusTypeenum to indicate the status of card account updates (e.g., card updated, expiry updated, card closed, contact cardholder).