diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c66ba9..3fa41e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ ---------------------------------------- +* 4.69 (2022-01-19) +* Update WSDL from 4.68 to 4.69 +* new parameters threeDSinfo, travelFileNumber for doAuthorization +* new parameters threeDSinfo, travelFileNumber for doImmediateWalletPayment + + +---------------------------------------- + * 4.68 (2021-10-07) * Update WSDL from 4.66 to 4.68 * add missing parameters merchantURL, merchantCountryCode for verifyEnrollment diff --git a/README.md b/README.md index 9575168..f0e8121 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Add this dependency in your project's POM: com.payline payline-java-sdk - 4.68 + 4.69 ``` @@ -34,7 +34,7 @@ Add this dependency in your project's POM: com.payline payline-java-sdk - 4.68 + 4.69 javax.xml.ws diff --git a/pom.xml b/pom.xml index f43c968..37ae7d7 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.payline payline-java-sdk - 4.68 + 4.69 Payline JAVA SDK Project Modified for TBD using last WSDL from https://docs.monext.fr/display/DT/Endpoints. The Payline API provides access to the various functions of the Payline payment solution. It is based on standard web service components, which include the SOAP protocol, the WSDL and XSD definition languages. These standards are supported by a large range of development tools on multiple platforms. This SDK covers all the functions of the Payline payment solution. diff --git a/src/main/java/com/payline/kit/utils/Utils.java b/src/main/java/com/payline/kit/utils/Utils.java index 385fa17..3c67f67 100644 --- a/src/main/java/com/payline/kit/utils/Utils.java +++ b/src/main/java/com/payline/kit/utils/Utils.java @@ -90,7 +90,7 @@ public final class Utils { /** * kit version */ - private static final String kitVersion = "kit JAVA v4.68"; + private static final String kitVersion = "kit JAVA v4.69"; private static final String HTTP_PROXY_SET = "http.proxySet"; private static final String HTTP_PROXY_HOST = "http.proxyHost"; diff --git a/src/main/java/com/payline/ws/wrapper/DirectPayment.java b/src/main/java/com/payline/ws/wrapper/DirectPayment.java index afef79c..c910fbd 100644 --- a/src/main/java/com/payline/ws/wrapper/DirectPayment.java +++ b/src/main/java/com/payline/ws/wrapper/DirectPayment.java @@ -149,6 +149,59 @@ public final DoAuthorizationResponse doAuthorization(final Payment payment, fina final String transientParam, final Owner owner, final String media, final String asynchronousRetryTimeout, final String linkedTransactionId, final Recurring recurring ) { + + return this.doAuthorization(payment, order, buyer, + card, privateDataList, authentication3DSecure, + bank, version, subMerchant, + transientParam, owner, media, asynchronousRetryTimeout, linkedTransactionId, recurring, null, null); + } + + /** + * Carry out payment authorization requests. The doAuthorization function + * sends a debit authorization request to your bank authorization server. + * + * @param payment the payment object containing the amount, the + * currency, action and mode codes + * @param order the order object containing the ref, the + * amount, the currency, the date and cart content + * in details child. order.amount is required from + * 4.65.1 + * @param buyer the buyer object, containing many information + * about the buyer: firstname, lastname, email, + * addresses,... + * @param card the card object, containing the card data : + * number, expirationDate, cvx,... + * @param privateDataList A list of privateData, allowing to send any + * kind of extra information organized with keys + * and values + * @param authentication3DSecure the authentication3DSecure object, filled with + * MD and PARES retrieved from the ACS after the + * customer entered his password + * @param bank the bankAccountData object, used for ELV + * payment only + * @param version the API version of Payline + * @param subMerchant sub-merchant info in case you're using Payline + * as a payment facilitator for other merchants + * @param transientParam Data to populate the 3DSV2 container + * @param owner + * @param media Detection of the media used during the payment. + + * @param asynchronousRetryTimeout Numeric that specifies the period in minutes + * @param linkedTransactionId In case of installment, recurring or split shippment payment refers to the first authorization + * @param recurring Recurring or installment information + * @param threeDSInfo Information specific to 3DS authentication + * @param travelFileNumber + * @return DoAuthorizationResponse the response given by Payline to a debit + * authorization request + */ + @SuppressWarnings("squid:S00107") + public final DoAuthorizationResponse doAuthorization(final Payment payment, final Order order, final Buyer buyer, + final Card card, final PrivateDataList privateDataList, final Authentication3DSecure authentication3DSecure, + final BankAccountData bank, final String version, final SubMerchant subMerchant, + final String transientParam, + final Owner owner, final String media, final String asynchronousRetryTimeout, final String linkedTransactionId, final Recurring recurring, + final ThreeDSInfo threeDSInfo, final String travelFileNumber + ) { setException(null); DoAuthorizationResponse result = new DoAuthorizationResponse(); DoAuthorizationRequest parameters = new DoAuthorizationRequest(); @@ -167,6 +220,8 @@ public final DoAuthorizationResponse doAuthorization(final Payment payment, fina if (asynchronousRetryTimeout != null) parameters.setAsynchronousRetryTimeout(asynchronousRetryTimeout); parameters.setLinkedTransactionId(linkedTransactionId); + parameters.setThreeDSInfo(threeDSInfo); + parameters.setTravelFileNumber(travelFileNumber); parameters.setRecurring(recurring); final DirectPaymentAPI port; try { diff --git a/src/main/java/com/payline/ws/wrapper/WalletPayment.java b/src/main/java/com/payline/ws/wrapper/WalletPayment.java index 9aa30cb..f0deb04 100644 --- a/src/main/java/com/payline/ws/wrapper/WalletPayment.java +++ b/src/main/java/com/payline/ws/wrapper/WalletPayment.java @@ -437,13 +437,43 @@ public final DoImmediateWalletPaymentResponse doImmediateWalletPayment(final Pay * @param subMerchant sub-merchant info in case you're using Payline as a payment facilitator for other merchants * @param recurring Recurring information * @param linkedTransactionId Use to identify the first authorization request which initializes the payment (for merchants managing their own wallets). - * @param owner * @param media Detection of the media used during the payment. * @return DoImmediateWalletPaymentResponse */ public final DoImmediateWalletPaymentResponse doImmediateWalletPayment(final Payment payment, final Order order, final Buyer buyer, final PrivateDataList privateDataList, final String walletId, final String Cardind, final String cvx, final Authentication3DSecure auth3ds, final String version, final SubMerchant subMerchant, final Recurring recurring, final String linkedTransactionId, final String media) { + + return this.doImmediateWalletPayment(payment, order, buyer, + privateDataList, walletId, Cardind, cvx, auth3ds, + version, subMerchant, recurring, linkedTransactionId, media, null, null); + + } + + /** + * Carry out a payment request from a customer wallet. The doImmediateWalletPaymen function makes a virtual wallet payment. With this function, you + * may use the payment in full (FUL) and deferred (DEF) payment methods. Payline will send return code 02308: payment method not accepted for other methods. + * @param payment the payment object containing the amount, the currency, action and mode codes + * @param order the order object containing the ref, the amount, the currency, the date and cart content in details child + * @param buyer the buyer object, containing many information about the buyer: firstname, lastname, email, addresses,... + * @param privateDataList A list of privateData, allowing to send any kind of extra information organized with keys and values + * @param walletId the wallet identifier + * @param Cardind within a wallet, index of the card to be used for payment + * @param cvx Card Verification Value associated to the Card Number + * @param auth3ds 3D Secure authentication data + * @param version the API version of Payline + * @param subMerchant sub-merchant info in case you're using Payline as a payment facilitator for other merchants + * @param recurring Recurring information + * @param linkedTransactionId Use to identify the first authorization request which initializes the payment (for merchants managing their own wallets). + * @param media Detection of the media used during the payment. + * @param threeDSInfo Information specific to 3DS authentication + * @param travelFileNumber + * @return DoImmediateWalletPaymentResponse + */ + @SuppressWarnings("squid:S00107") + public final DoImmediateWalletPaymentResponse doImmediateWalletPayment(final Payment payment, final Order order, final Buyer buyer, + final PrivateDataList privateDataList, final String walletId, final String Cardind, final String cvx, final Authentication3DSecure auth3ds, + final String version, final SubMerchant subMerchant, final Recurring recurring, final String linkedTransactionId, final String media,final ThreeDSInfo threeDSInfo, final String travelFileNumber) { setException(null); DoImmediateWalletPaymentResponse result = new DoImmediateWalletPaymentResponse(); DoImmediateWalletPaymentRequest parameters = new DoImmediateWalletPaymentRequest(); @@ -460,6 +490,8 @@ public final DoImmediateWalletPaymentResponse doImmediateWalletPayment(final Pay parameters.setRecurring(recurring); parameters.setLinkedTransactionId(linkedTransactionId); parameters.setMedia(media); + parameters.setThreeDSInfo(threeDSInfo); + parameters.setTravelFileNumber(travelFileNumber); final DirectPaymentAPI port; try { if (this.initFromFile) { diff --git a/src/main/resources/wsdls/DirectPaymentAPI.wsdl b/src/main/resources/wsdls/DirectPaymentAPI.wsdl index ca45869..08dc68d 100644 --- a/src/main/resources/wsdls/DirectPaymentAPI.wsdl +++ b/src/main/resources/wsdls/DirectPaymentAPI.wsdl @@ -105,6 +105,7 @@ + @@ -132,6 +133,8 @@ + + @@ -154,6 +157,7 @@ + @@ -564,6 +568,8 @@ + + @@ -990,6 +996,7 @@ + diff --git a/src/main/resources/wsdls/ExtendedAPI.wsdl b/src/main/resources/wsdls/ExtendedAPI.wsdl index da8aca5..aba7eba 100644 --- a/src/main/resources/wsdls/ExtendedAPI.wsdl +++ b/src/main/resources/wsdls/ExtendedAPI.wsdl @@ -105,6 +105,7 @@ + @@ -132,6 +133,8 @@ + + @@ -154,6 +157,7 @@ + @@ -564,6 +568,8 @@ + + @@ -990,6 +996,7 @@ + diff --git a/src/main/resources/wsdls/WebPaymentAPI.wsdl b/src/main/resources/wsdls/WebPaymentAPI.wsdl index e9277ff..cf1b6ee 100644 --- a/src/main/resources/wsdls/WebPaymentAPI.wsdl +++ b/src/main/resources/wsdls/WebPaymentAPI.wsdl @@ -105,6 +105,7 @@ + @@ -132,6 +133,8 @@ + + @@ -154,6 +157,7 @@ + @@ -564,6 +568,8 @@ + + @@ -990,6 +996,7 @@ +