dw.order.Order.getOrderExportXML API Encryption Parameter Update

The encryption parameter that handles encrypted and masked payment instrument data, including credit card, bank account, and driver license numbers, in the dw.order.Order.getOrderExportXML API has been completely revised.

How: These methods have been changed or removed.

  • dw.order.Order.getOrderExportXML(encryptionAlgorithm, encryptionKey, encryptUsingEKID) was removed entirely. This method was deprecated because the encryptUsingEKID parameter was never used. To return encrypted payment instrument data with the given algorithm or key, use dw.order.Order.getOrderExportXML(encryptionAlgorithm, encryptionKey) instead. To return payment instrument data unmasked, use dw.order.Order.getOrderExportXML().
  • dw.order.Order.getOrderExportXML(encryptionAlgorithm, encryptionKey) no longer accepts an invalid encryption argument, which includes null, blank, or otherwise empty algorithms or keys.
  • dw.order.Order.getOrderExportXML(encryptionAlgorithm, encryptionKey) supports the current RSA/ECB/OAEPWithSHA-256AndMGF1Padding encryption algorithm. Previously, the encryptionAlgorithm argument was ignored and the (now deprecated) algorithm RSA/ECB/PKCS1Padding was always used when a non-blank key was provided.
  • dw.order.Order.getOrderExportXML(encryptionAlgorithm, encryptionKey) no longer accepts a null key, which was used as a β€œmagic” value for returning the payment instrument data as masked instead of encrypted. Only use dw.order.Order.getOrderExportXML() to return masked payment instrument data.