# 2021

## 2021/12/3

* We added the ability to [update the subscription billing email address and shipping email address](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/subscriptions/subscription-billing-and-shipping-addresses#v1-subscriptions-subscriptionid-email).&#x20;
* We added the `applyEmailToSubscriptions` field to [Update the current shopper](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/shoppers/shoppers#v1-shoppers-me-1).

## 2021/10/4

We added a new [legal entity](https://docs.digitalriver.com/commerce-api/shopper-apis/orders-1/selling-entities), Digital River UK Limited.

## 2021/10/1

We added the ability to [create a refund for a delayed payment method](https://docs.digitalriver.com/commerce-api/admin-apis/refunds/managing-a-refund-for-a-delayed-payment-method) such as [Konbini](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/konbini) and [Wire Transfer](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/wire-transfer).

## 2021/9/29

We added the ability to receive payment detail update notifications when a shopper updates their payment details for a subscription.

## 2021/9/16

* We added the ability to [remove a tax identifier from a cart](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/creating-or-updating-a-cart/managing-payment-methods#removing-an-organization-identifier-from-the-cart).
* We added the `trigger` to the [`offer` ](https://drapi.io/commerce/#tag/Offers/paths/~1v1~1shoppers~1me~1offers~1{offerId}/get)object response. The possible values are:&#x20;

  * `Always Triggered`–The offer is available to any shopper in your store. Shoppers have to meet the conditions you set up in the offer for the offer to be triggered and redeemed by shoppers.
  * `User Triggered`–To redeem an offer, the shopper must take additional actions such as clicking a link or entering a coupon code.

  You can set the trigger when you [configure the offer type](https://help.digitalriver.com/help/gc/Marketing/Offers/Configuring-the-offer-type.htm#Trigger) in Global Commerce.

## 2021/9/7

We added the ability to [set up the renew reminders for trial subscriptions](https://docs.digitalriver.com/commerce-api/admin-apis/subscription-management/subscription-notifications/setting-up-trial-subscription-renewal-reminders).

## 2021/9/1

* We added the ability for a Customer Service Representative to [cancel an order](https://help.digitalriver.com/help/gc/Customer-Service/Cancelling-an-order.htm) in [Global Commerce.](https://gc.digitalriver.com/gc/ent/login.do)
* We added the ability to [use the Expired Card Optimizer (ECO)](https://docs.digitalriver.com/commerce-api/admin-apis/subscription-management/using-the-expired-card-optimizer) for [third-party subscription engine renewal orders](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/third-party-subscription-engine#v1-shoppers-me-carts-active-subscriptioninfo).&#x20;
* We added support for using the [tax registration](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/tax-registration) resource to [attach a tax ID to a cart](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/configuring-taxes/managing-tax-identifiers) using the tax[ registration](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/tax-registration) resource.&#x20;
* We expanded the pay later options now available in the [PayPal Wallet](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-express-checkout-digital-wallet), including [PayPal RatenZahlung](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-ratenzahlung) for German shoppers.

## 2021/8/12

We added instructions on how to [get the inventory for a specific product](https://docs.digitalriver.com/commerce-api/general-resources/global-commerce/products/inventory-status).

## 2021/8/6

We added `supportsStorage` to indicate whether a payment method supports storage to [Retrieving available payment methods](https://docs.digitalriver.com/commerce-api/resources/reference/digitalriver-object#retrieving-available-payment-methods).

## 2021/7/29

We expanded the pay later options in the [PayPal Wallet](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-express-checkout-digital-wallet), including [PayPal Pay in 4](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-pay-in-4) for shoppers in Australia and France and [PayPal Pay in 3](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-pay-in-3) and [PayPal Credit](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-credit) for UK shoppers.

## 2021/7/27

You can now use the [Delayed Payment Instructions element](https://docs.digitalriver.com/commerce-api/resources/reference/elements/delayed-payment-instructions-element) to generate a template containing instructions for completing payments for delayed payment types such as Konbini and Wire Transfer.

## 2021/7/26

You can customize and control your subscription email notifications through [events notifications and webhooks](https://docs.digitalriver.com/commerce-api/events/events-and-webhooks). This feature allows you to control your communications with your consumers, including integrating the capabilities of leading notification providers.

## 2021/7/7

We added the ability to [create a trial subscription](https://help.digitalriver.com/help/gc/Products/All-Products/Configuring-the-product-settings.htm#Subscription) for a subscription product and configure trial renewal reminders in [Global Commerce](https://gc.digitalriver.com/gc/ent/login.do).

## 2021/7/2

We added support for [Pay in 3](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal#paypal-pay-in-3) to the [PayPal ](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods/paypal)payment method.

## 2021/6/3

* We made the following changes to the [Subscriptions API](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/subscriptions/manage-a-subscription):
  * In the response for [`GET /v1/subscriptions/{subscriptionId}`](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/subscriptions/retrieve-subscriptions#v1-subscriptions-subid) , added `shopper` and `renewalPrice` to the subscription information attributes. We also added `renewalPrice` to the `addOn` object.
* We made the following changes to the [Shoppers API](https://app.gitbook.com/o/-LqC_Nsz4Z-JxICCsFw3/s/X2fWaY1Kp5sXA1fmOL7z/) to allow you to suppress an order confirmation email.

  * Added the `suppressorderconfirmationemail` parameter to [Add line items to a cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/line-items#v1-shoppers-me-carts-active-line-items-1) and [Update current cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/carts#v1-shoppers-me-carts-active-1).

  To use this feature, contact your Digital River representative.
* We revised the statements for subtotal and discount at the order level for the [Submit the cart and create an order](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/submit-a-cart#v1-shoppers-me-carts-active-submit-cart).&#x20;

## 2021/5/18

* We added [test and use cases](https://docs.digitalriver.com/commerce-api/master/test-cases) to help you when you're developing and testing the Commerce API and your commerce connector.
* We updated the [error codes](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/warnings-and-error-codes/error-codes) that provide you with:
  * Additional [credit card decline reason codes](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/submitting-a-cart/authorization-declines) and metadata responses. You can then perform reporting and analytics to understand better why authorizations are declined so you can optimize your business.
  * Greater visibility into why a transaction failed, reducing the work you need to do to determine why the transaction failed.
  * This feature provides data points to determine when you should or shouldn't retry a renewal attempt. It categorizes credit card decline reason codes into "soft" and "hard declines."

## 2021/5/14

We added [Administration - Site management](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/site-management) to the Commerce API Reference that includes the following resources:

* [`/authorized-shipping-countries`](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/site-management/get-authorized-countries#v1-sites-siteid-authorized-shipping-countries)
* [`/authorized-billing-countries`](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/site-management/get-authorized-countries#v1-sites-siteid-authorized-billing-countries)

## 2021/5/6

You can now programmatically retrieve a list of your site's [authorized billing](https://docs.digitalriver.com/commerce-api/admin-apis/sites/getting-a-sites-authorized-billing-countries) or [shipping countries](https://docs.digitalriver.com/commerce-api/admin-apis/sites/getting-a-sites-authorized-shipping-countries) using your [Global Commerce user credentials](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure).

## 2021/4/29

We replaced Supported geographies for each [payment method](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js/payment-methods) in [DigitalRiver.js](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/digitalriver.js) with Supported markets. To find information on supported markets and currencies for Drop-in and DigitalRiver.js, go to:

* **Payment Method Guide:** [digitalriver.com/payment-method-guide](https://www.digitalriver.com/payment-method-guide/)
* **Country Guide:** [digitalriver.com/country-guide/](https://www.digitalriver.com/country-guide/)

## 2021/4/27

* We made the following to the [Commerce API References](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/):
  * Removed `x-siteid` and `x-companyId` headers for [Subscription ](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/subscription-mangement/manage-a-subscription)APIs. You only need to [provide a token](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure) now.\
    &#x20; <img src="https://2721412755-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LzlYMEYC0GeLSgnsft6%2F-MYoReD53Et128EMKlD9%2F-MYoU-MjstaIgmNYtUM4%2FHeader-Parameters.png?alt=media&#x26;token=d784fb80-97e4-4c71-b8d6-1b6a097314a7" alt="" data-size="original">&#x20;
  * Removed `sku` and `displayName` from the `product` object in the response for [`preview`](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/subscription-mangement/apply-an-immediate-midterm-change#v1-subscriptions-subid-preview), [`preview-cart`](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/subscription-mangement/apply-an-immediate-midterm-change#v1-subscriptions-subid-preview-cart), and [`reduce` ](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/subscription-mangement/apply-an-immediate-midterm-change#v1-subscriptions-subid-reduce)resources.
  * Removed `proratedUnitPrice` from the [`reduce` ](https://app.gitbook.com/s/drE2RCYBuoRpd2TC2sx2/subscription-mangement/apply-an-immediate-midterm-change#v1-subscriptions-subid-reduce)resource.
  * Updated the payload for the [API trigger offer](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/api-trigger-offer) request.
  * Updated the [order states](https://docs.digitalriver.com/commerce-api/shopper-apis/orders-1/getting-orders#getting-an-order-by-id) for the GET and POST orders APIs by adding In `Review`, `Pending Payment`, and `Complete`.&#x20;
  * Updated the `customAttributes` for the [get shopper order](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/orders/orders#v1-shoppers-me-orders-orderid).
  * Added `chargeType` to [apply shopper to cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/apply-a-shopper-to-a-cart#v1-shoppers-me-carts-active-apply-shopper), [apply billing address to cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/billing-address#v1-shoppers-me-carts-active-billing-address-1), apply[ shipping address to cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/shipping-address#v1-shoppers-me-carts-active-shipping-address), apply[ payment method to cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/apply-or-detach-payment-methods#v1-shoppers-me-carts-active-apply-payment-method), [apply shipping option to cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/apply-a-shipping-option#v1-shoppers-me-carts-active-apply-shipping-option), and [get current cart](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/carts#v1-shoppers-me-carts-active).
  * Corrected the API path domain in the examples. It's now `api.digitalriver.com`.&#x20;

![](https://2721412755-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LzlYMEYC0GeLSgnsft6%2F-MYja1h_wxrVJTNAKro5%2F-MYjcFpZd508RhdqTWvj%2FPayment-options-API-reference-example.png?alt=media\&token=fe83decb-c71b-4e5d-aa90-c916aabd7f7e)

## 2021/3/31

* We added information on how to [sell subscriptions with add-ons](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/admin-apis-reference/subscriptions#selling-subscriptions-with-add-ons) and [manage subscriptions](https://docs.digitalriver.com/commerce-api/admin-apis/subscription-management).

## 2021/3/30

You can now use the [`chargeType` ](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/glossary#charge-type)in a Cart without a subscription line item to [initiate a charge](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/submitting-a-cart/initiating-a-charge).&#x20;

## 2021/3/11

We added the `continue` type to the list of button types for [Drop-in](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/drop-in) and make it the default type in [Customizing the text of the Drop-in button](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/drop-in/drop-in-integration-guide#customizing-the-text-of-the-drop-in-button).

## 2021/3/10

* We added information on [initiating a charge](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/submitting-a-cart/initiating-a-charge).&#x20;
* We moved the Declined messages under [Submitting a cart](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/submitting-a-cart) and renamed it  [Authorization declines](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/submitting-a-cart/authorization-declines).&#x20;
* You can now find the [error codes](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/warnings-and-error-codes/error-codes) In the [Commerce API](https://docs.digitalriver.com/commerce-api/master) doc.

## 2021/3/9

We updated the information on [landed cost](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/pricing/landed-costs).

## 2021/2/1

* We improved the [error format](https://www.digitalriver.com/docs/commerce-api-reference/#section/Errors/Error-format) for transactional errors using a credit card saved in the payment source and added a declined message (`declinedMessage`) to provide more information.
* We moved the description of [API keys](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure/api-keys) from the Commerce API Reference to [best practices](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure).

## 2021/1/15

You can now use the [`authenticateSource` method](https://docs.digitalriver.com/commerce-api/resources/reference/digitalriver-object#authenticating-sources) to determine whether the saved payment source selected by a customer during the checkout process requires [Strong Customer Authentication](https://docs.digitalriver.com/commerce-api/payments/psd2-and-sca) (SCA).

## 2021/1/12

* When creating a source, you can now configure the `usage` parameter. It allows you to specify the type of transaction the source will likely be used for. The parameter is available in both [Drop-in payments](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/drop-in/drop-in-integration-guide#specifying-a-sources-future-use) and [DigitalRiver.js](https://docs.digitalriver.com/commerce-api/resources/reference/digitalriver-object#specifying-a-sources-future-use). We recommend you use it when building [purchase](https://docs.digitalriver.com/commerce-api/payments/building-your-workflows#credit-card-details-saved-by-customer-during-checkout) and [account management](https://docs.digitalriver.com/commerce-api/payments/building-your-workflows#saving-a-credit-card-for-future-use) workflows that allow customers to save their credit card information.&#x20;
* When [creating an instance of Drop-in payments](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/drop-in/drop-in-integration-guide#step-6-allow-the-shopper-to-interact-with-hydrate), you can now [customize the button's text](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/drop-in/drop-in-integration-guide#customizing-the-drop-in-button-text). Additionally, we created new [Drop-in options](https://docs.digitalriver.com/commerce-api/payments/payments-solutions/drop-in/drop-in-integration-guide#drop-in-options) that allow you to set the `showTermsOfSaleDisclosure` and `disableAutomaticRedirects` parameters.

## 2021/1/8

We added information on [creating a cart with a perpetual unit price](https://docs.digitalriver.com/commerce-api/admin-apis/subscription-management/update-the-subscription-at-the-next-renewal/adding-or-updating-a-perpetual-unit-price#creating-a-cart-with-a-perpetual-unit-price) using  `POST /v1/shoppers/me/carts/active/line-items` resource.

## 2021/1/6

A note to [Apply shopper to cart](https://www.digitalriver.com/docs/commerce-api-reference/#tag/Apply-Shopper/paths/~1v1~1shoppers~1me~1carts~1active~1apply-shopper/post) stating this method requires an authenticated shopper token.

* Added the following to the response schema for [`GET /v1/shoppers/me/payment-options`](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/shoppers/payment-options#v1-shoppers-me-payment-options):
  * `PaymentOptionsResponseLegacy`
  * `PaymentOptionsResponseLegacyExpand`
  * `PaymentOptionsResponsePaymentSource`
  * `PaymentOptionsResponsePaymentSourceExpand`
* A `sourceId` to [GET /v1/shoppers/me/payment-options](https://www.digitalriver.com/docs/commerce-api-reference/#tag/Payment-Options/paths/~1v1~1shoppers~1me~1payment-options/get).
* The following to the response schema for [`POST /v1/shoppers/me/carts/active/apply-payment-method`](https://www.digitalriver.com/docs/commerce-api-reference/#tag/Apply-Payment-Method/paths/~1v1~1shoppers~1me~1carts~1active~1apply-payment-method/post):
  * `ApplyPaymentMethodLegacy`
  * `ApplyPaymentMethodPaymentSource`
* The following to the response schema for [`GET /v1/shoppers/me/orders/{orderId}/line-items`](https://app.gitbook.com/s/X2fWaY1Kp5sXA1fmOL7z/cart/line-items#v1-shoppers-me-orders-orderid-line-items):
  * `DefaultOrderLineItems`
  * `ExpandedOrderLineItems`
  * `lineItemStateDetails`
* A `chargeType` to the `subscriptionInfo` section in the request and response. See [Providing subscription information](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/creating-or-updating-a-cart/providing-subscription-information) for more details.

## 2021/1/5

We added the [best practices](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure) for using the Commerce API, which includes [authentication](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure/api-keys), [Creating authenticated shopper tokens](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure), [Caching responses](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure/caching-responses), [Capturing the customer's IP address](https://docs.digitalriver.com/commerce-api/shopper-apis/cart/creating-or-updating-a-cart/shopper-ip-address), and [Elements](https://app.gitbook.com/s/oUderMtztdH7OKDXmYbI/commerce-api-reference-guide/api-structure/elements).&#x20;
