Skip to content

Releases: unzerdev/java-sdk

4.1.0

30 Mar 09:24
e0365a6
Compare
Choose a tag to compare

Added

  • Added com.unzer.payment.Unzer.fetchPaypage

Changed

  • Changed return value for com.unzer.payment.Paypage.getTypeUrl. Was: paypage/charge or paypage/authorize, now: paypage

4.0.0

16 Feb 09:55
edbeb38
Compare
Choose a tag to compare

This release brings liability and exemption type support to Java SDK

Added

  • Added Liability and ExemptionType fields to AdditionalTransactionData.CardTransactionData

Removed

  • Removed resource version.properties. Version is set at generate-sources phase.
  • Removed class com.unzer.payment.exceptions.PropertiesException
  • Removed deprecated method com.unzer.payment.util.SDKInfo::getVersion(). Please, use com.unzer.payment.util.SDKInfo.VERSION instead

Changed

  • Enriched request and response logging

Fixed

  • Fixed AdditionalTransactionData.RecurrenceType field is empty for fetched transactions.

3.1.1

12 Jan 15:01
3f2e9e6
Compare
Choose a tag to compare

This release updates dependencies with security issues

Changed

  • Upgraded Apache HttpClient from version 4 to version 5.
  • Made HttpCommunicationException unchecked exception.
  • Updated jackson-core dependency.

3.1.0

13 Dec 13:05
9fb16ad
Compare
Choose a tag to compare

This release introduces Unzer PayPal Express in Java SDK.

Added

  • Added Paypal-Express support:
    • Extended AdditionalTransactionData with paypal.checkoutType field. See com.unzer.payment.models.AdditionalTransactionData.setPaypal.
    • Defined RESUMED value for com.unzer.payment.AbstractTransaction.Status
    • Added com.unzer.payment.Unzer::updateCharge(), com.unzer.payment.Unzer::updateAuthorization() which must be invoked after Paypal-Express transaction is resumed.
  • Added fields orderId and invoiceId to Authorize, Charge and Cancel transactions.
  • Added authorize support for Paypage. Use Paypage::setAction(Paypage.Action.AUTHORIZE)
  • Added new capture (charge authorization) methods. See: com.unzer.payment.Unzer.chargeAuthorization(charge) and com.unzer.payment.Unzer.chargeAuthorization(paymentId, charge)

Changed

  • Reduced multiple com.unzer.payment.service.PaymentService.chargeAuthorization methods to one with Charge argument.

Deprecated

  • Deprecated com.unzer.payment.paymenttypes.Invoice. Use com.unzer.payment.paymenttypes.PaylaterInvoice instead
  • Deprecated behavioral methods for data objects. Please, use Unzer facade instead. List of deprecations:
    • AbstractTransaction (base class of Authorization, Cancel, Charge, Payout, Recurring, Shipment, MarketplaceAuthorization, MarketplaceCharge, MarketplacePayment, MarketplaceCancel):
      • getUnzer/setUnzer
    • Charge:
      • cancel
    • Authorization:
      • charge
      • cancel
    • Payment:
      • charge
      • authorize
      • cancel
    • MarketplaceCharge:
      • cancel
    • MarketplaceAuthorization:
      • charge
      • cancel
    • MarketplacePayment:
      • marketplaceFullChargesCancel
      • fullChargeAuthorizations
      • marketplaceFullAuthorizeCancel
    • AbstractPayment:
      • fetchBasket, fetchMetadata, fetchCustomer, fetchPaymentType

3.0.0

27 Oct 10:42
bfaff71
Compare
Choose a tag to compare

This release switches Java SDK version to a traditional 3-digit semantic versioning style.

Changes

  • Removed first digit at semver: API_VERSION. MAJOR.MINOR.PATCH

1.3.0.0

06 Oct 09:02
9115e0a
Compare
Choose a tag to compare

New version of Java SDK is not configurable via unzer.properties file anymore.

Breaking changes

  • Removed class com.unzer.payment.service.PropertiesUtil, unzer.properties file and privatekey1, privatekey2, privatekey3, publickey1, marketplacekey
    and corresponding constants PUBLIC_KEY1, PRIVATE_KEY1, PRIVATE_KEY2, PRIVATE_KEY3, MARKETPLACE_PRIVATE_KEY. Since this properties were used only for internal testing purpose.
  • Removed property applepay.validValidationUrls from unzer.properties. Use com.unzer.payment.util.ApplePayAdapterUtil.replaceValidationUrls instead
  • Changed method com.unzer.payment.util.ApplePayAdapterUtil.getPlainDomainName() modifier to private.
  • Removed unzer.properties file. Use com.unzer.payment.util.ApplePayAdapterUtil.setCustomAppleValidationUrls to configure ApplePay validation urls.

Changed

1.2.2.0

04 Oct 12:13
a57c928
Compare
Choose a tag to compare

This release adds Klarna payment type to Java SDK.

Added

  • Added payment type Klarna.
  • Added language field to Customer resource.
  • Added termsAndConditionsUrl and privacyPolicyUrl fields to AdditionalTransactionData resource

Fixed

  • Fixed typo ShippingAddress.Type:DIFFERENT_ADDRESSES -> ShippingAddress.Type:DIFFERENT_ADDRESS. This typo caused errors on authorize/charge in some payment cases
  • Fixed (de-)serialization of AbstractTransaction cause infinite Webhook calls.

1.2.1.0

06 Sep 10:11
8f60135
Compare
Choose a tag to compare

This release brings Unzer Paylater Invoice payment type support to Java SDK.

Added

  • Added payment type Paylater Invoice. See more at Unzer Docs
  • Added ability to set client IP. Use com.unzer.payment.communication.impl.HttpClientBasedRestCommunication.HttpClientBasedRestCommunication(java.util.Locale, java.lang.String) and com.unzer.payment.Unzer.Unzer(java.lang.String, java.util.Locale, java.lang.String, java.lang.String) to set client ip.
  • Added com.unzer.payment.Unzer.cancelCharge(java.lang.String, java.math.BigDecimal) to cancel Paylater charges.

Fixed

  • Fixed: customer salutation is null, because of marshalling/unmarshalling issue.
  • Fixed: cancel InvoiceSecured charge failed with error API.340.100.024: Reason code is mandatory for the payment type INVOICE_SECURED. Please, use com.unzer.payment.Cancel.setReasonCode to set reason code and com.unzer.payment.Unzer.cancelCharge(java.lang.String, java.lang.String, com.unzer.payment.Cancel) to cancel InvoiceSecured charge.

Removed

  • Removed unused com.unzer.payment.UnsupportedPaymentTypeException

Deprecated

  • Deprecated com.unzer.payment.util.SDKInfo.getVersion(). Use com.unzer.payment.util.SDKInfo.VERSION instead.
  • Deprecated payment type com.unzer.payment.paymenttypes.InvoiceSecured. Use com.unzer.payment.paymenttypes.PaylaterInvoice instead.
  • Deprecated com.unzer.payment.Customer.setShippingAddress(com.unzer.payment.Address). Use com.unzer.payment.Customer.setShippingAddress(com.unzer.payment.ShippingAddress) instead

Changed

  • Changed type of com.unzer.payment.Customer.shippingAddress and according getter/setter: com.unzer.payment.Address -> com.unzer.payment.ShippingAddress. Use ShippingAddress.of(Address, Type) to adapt

1.2.0.0

04 Aug 11:16
dda6f66
Compare
Choose a tag to compare

Breaking changes

  • Removed log4j-core from Maven dependencies. Please, provide logger
    implementation on your own

  • Renamed enum value AbstractTransaction.Status.ERRROR to AbstractTransaction.Status.ERROR

  • Renamed enum value Paypage.Status.ERRROR to Paypage.Status.ERROR

Deprecated

  • com.unzer.payment.service.UrlUtil#getUrl(String) will not be part of
    java-sdk, because it has nothing to do with unzer/sdk specific logic. If you
    rely on this method, please, replace it with java.net.URL#URL(String)
    constructor call

  • Deprecated Basket getters/setters: amountTotalVat, amountTotalGross,
    amountTotalDiscount

  • Deprecated BasketItem getters/setters: amountDiscount, amountGross, amountVat,
    amountPerUnit, amountNet

Added

  • Basket v2 support:

    • Basket getters/setters: totalValueGross

    • BasketItem getters/setters: amountPerUnitGross, amountDiscountPerUnitGross

Removed

  • Remove log.error in catch clause
    com.unzer.payment.service.PropertiesUtil#loadProperties() because the
    exception with exact same message is thrown after the log.error call.

Fixed

  • Fix log message of com.unzer.payment.service.UrlUtil#getUrl(String). It was
    not formatted and contained %s instead
    of values

Changed

  • Type of BasketItem type field (was String, become BasketItem.Type)

  • Type of BasketItem vat field (was Integer, become BigDecimal)

1.1.2.7

20 Jul 13:32
4df6278
Compare
Choose a tag to compare

Changed

  • Upgrade of the used gson Dependencies from 2.8.6 to 2.8.9
  • Upgrade of the used faster-xml dependencies from 2.11.3 to 2.12.7
  • Upgrade of the used log4j dependencies from 2.17.1 to 2.18.0