What's Changed
The release brings several improvements around model robustness and backward compatibility with evolving API schemas:
- Improved enum deserialisation: unknown enum values in API responses and webhooks are set as
null
instead of throwing exceptions #1514 - Attributes with default values are now excluded from serialised API requests unless explicitly set, reducing redundant payloads and relying on the API implementation to manage default values #1517
Check below Breaking Changes 🛠 and New Features 💎
Breaking Changes 🛠
LEM API
- In
LegalEntity
thecapabilities
map is no longerreadonly
: theLegalEntity
constructor has been modified, removing thecapabilities
parameter:
public LegalEntity(
@JsonProperty(JSON_PROPERTY_ID) String id,
@JsonProperty(JSON_PROPERTY_TRANSFER_INSTRUMENTS)
List<TransferInstrumentReference> transferInstruments,
@JsonProperty(JSON_PROPERTY_VERIFICATION_DEADLINES)
List<VerificationDeadline> verificationDeadlines)
Transfers API
- In
TransactionsApi
the signature of the methodgetAllTransactions
has changed. It has a new parametersortOrder
:
TransactionSearchResponse getAllTransactions(
String cursor, OffsetDateTime createdSince, OffsetDateTime createdUntil,
String sortOrder, Integer limit, RequestOptions requestOptions)
throws ApiException, IOException
- In
TransfersApi
the signature of the methodgetAllTransfers
has changed. It has a new parametersortOrder
:
FindTransfersResponse getAllTransfers(
String cursor, OffsetDateTime createdSince, OffsetDateTime createdUntil,
String sortOrder, Integer limit, RequestOptions requestOptions)
throws ApiException, IOException
Management API
- Remove enum class
RegionalityEnum
inSplitConfigurationRule
- In
UpdateSplitConfigurationRuleRequest
remove attributeregionality
New Features 💎
BalancePlatform API
- In
PaymentInstrumentsApi
add methodscreateNetworkTokenActivationData
andgetNetworkTokenActivationData
to create and retrieve network token activation data for a payment instrument. - In
AdditionalBankIdentification
add new enumsauBsbCode
andcaRoutingNumber
Transfers API
- In
AdditionalBankIdentification
add new enumsauBsbCode
andcaRoutingNumber
- In
IssuedCard
add new attributethreeDSecure
- In
Transfer
add new attributecreatedAt
, deprecatecreationDate
(use insteadcreatedAt
) - In
TransferData
add new attributecreatedAt
andupdatedAt
, deprecatecreationDate
(use insteadcreatedAt
)
Management API
- Add support for
AlipayPlus
andMaestroUsa
payment methods: seePaymentMethod
andPaymentMethodSetupInfo
classes - In
PaymentMethodResponse
,PaymentMethodSetupInfo
andUpdatePaymentMethodInfo
severalTypesWithErrorsEnum
enums have been added (alipay_plus
,avancard
,cooper
, etc..
ACS Webhooks
- In
RelayedAuthenticationRequest
add new attributesthreeDSRequestorAppURL
,environment
,timestamp
,type
Transaction Webhooks
- In
IssuedCard
add new attributethreeDSecure
Transfer Webhooks
- In
IssuedCard
add new attributethreeDSecure
- In
TransferData
add new attributecreatedAt
andupdatedAt
, deprecatecreationDate
(use insteadcreatedAt
)
PRs 🖇️
- PaymentsApp API unit tests by @gcatanese in #1509
- Improve testing by @gcatanese in #1511
- Handling unknown enum values by @gcatanese in #1514
- Code generation: update services and models by @AdyenAutomationBot in #1515
- Code generation: update services and models by @AdyenAutomationBot in #1516
- [Checkout] Skip serialisation of attributes with default values by @gcatanese in #1517
- [All APIs] Skip serialisation of attributes with default values by @AdyenAutomationBot in #1518
- Release v39.0.0 by @AdyenAutomationBot in #1510
Full Changelog: v38.3.0...v39.0.0