2020
Digital River API release notes for 2020.
Last updated
Digital River API release notes for 2020.
Last updated
We now offer a PHP SDK to help you integrate the Digital River API into your commerce application. Before building your integration, we recommend reviewing our standards and certifications. You'll find information on the certification process, our compliance requirements, and the available integration checklists.
You can now apply store credit to non-recurring transactions. Store credit allows merchants to offer customers a store credit as a payment type at checkout.
We updated Klarna's supported geographies to show the minimum and maximum order amount and the payment method type.
Breaking changes
We made the following changes in the 2020-12-17
:
You can no longer set the visible
boolean parameter in a create or update a fee request. By default, all fees are now visible to customers.
Landed cost taxes are no longer included in the totalTax
of an order. They are now returned in totalImporterTax
.
We now return several attributes at the order and item levels representing the landed cost on an order. We now also provide the ability to refund importer taxes.
We now return fee details at the item level.
We added the best practices for using the Digital River API, which includes , , , , and .
We made the following changes to the Digital River Dashboard:
You can apply a different to each individual key (standard and restricted keys), or you can update the version on all keys simultaneously in the current mode (test or production).
You can now rotate a webhook's secret.
Changed the Orders section to Order management.
Changed the All orders topic to Orders.
The Order details page now displays the item discount, purchase amount, and payment and billing details.
Added Checkouts to the Order management section.
We added more custom styles for styling an element container in DigitalRiver.js.
We added support for Pay in 4 to the PayPal payment method.
When you delete a SKU, we now delete any Fee objects associated with that SKU.
We added information on where you can find error codes for DigitalRiver.js.
As part of the PSD2 Strong Customer Authentication (SCA) initiative, payment processors require extra information when processing merchant-initiated credit card transactions. To ensure that you adhere to the new mandate, you can now use billing agreements.
The Fees API now supports packaging and battery fee types. Additionally, the attributes that were previously represented as metadata have been deprecated. These data points are now first-class attributes.
We added information on the tax identifier element to DigitalRiver.js.
When classifying a product as digital or physical, we now use the tax code you specify in the SKU.
We added support for Union Pay to Credit Cards.
Breaking change
We added support for PSD2 and SCA to Payment integrations.
We added information on payment sessions to Payment integrations.
Added new features to the Digital River Dashboard that allow you to:
Update to or rollback from the latest version of Digital River API
Enabling two-factor authentication for your user account
We added support for the Korea – PayCo payment method.
We added support for the Klarna payment method.
We updated the Drop-in documentation.
You can now update the ship from and subscription information at the item-level in update checkout requests.
POST
and GET
Checkout requests now return a unique item-level identifier.
We added Spark from Tryzens for the Salesforce Commerce Cloud to our Connectors.
We added the Country-Specs resource to help you determine whether address and tax identifier information is required and also whether it is properly formatted.
You can now use the postalCode parameter in the Address object to support ZIP+4 codes.
You can now create multiple Customer objects with the same email address.
We added the linkExpiresTime
parameter to the files resource.
You can now access the Digital River Dashboard documentation.
You can now use DigitalRiver.js to retrieve an array of available payment methods.
You can now use DigitalRiver.js to trigger a return event when a customer presses the Return key while the input field has focus.
You can now create checkouts and orders containing duplicate SKU items with different prices and metadata.
You can now only request refunds for amounts or percentages less than or equal to those available to refund on an order, order item, invoice, or invoice item.
We can not use any tax identifiers you pass us on the checkout, rather than any tax identifiers associated with the customer.
You can now retry failed order refunds by requesting a new refund when a refund fails.
You can now only request refunds for amounts or percentages less than, or equal to, those available to refund on an order or order item.
We now automatically retry any failed order charge captures for up to 30 days with exponential backoff.
We made it easier to see the amounts available to refund for an order by adding availableToRefundAmount
attributes to Orders.
You can now receive an order.charge.complete
webhook when an order charge has been captured.
You can now receive an order.charge.pending
webhook when an order charge has been created but not yet processed.
You can now receive an order.charge.processing
webhook when an order charge is processed.
You can now receive an order.charge.cancelled
webhook when Digital River cancels an order charge.
You can now receive order.charge.capture.complete
webhook when an order charge capture is complete for all payment methods (including PayPal and SEPA Direct Debit).
You can now search for Orders using the following filters: submitted timestamp, accepted timestamp, complete timestamp, browserIp
, chargeType
, subscriptionId
, and refundedAmount
.
You can now create Checkouts and Orders with a phoneticName
parameter. The phoneticName
parameter allows customer service representatives and couriers who need this information to pronounce a customer's name correctly in Japan. See Japanese phonetics and divisions for more information.
You can now create Checkouts and Orders with a division
parameter. The division
parameter allows customers to provide their division within an organization when they provide their business addresses in Japan.
You can now create SKUs with description
, image
, and url
parameters to power a first-class user experience.
You can now create Refunds for delayed repayment methods (such as Wire Transfer and bPay) that require the handling of additional customer information.
We will inform you if a tax identifier is required and is missing for customers with multiple tax identifiers and apply those tax identifiers to the order.
You can now receive an order.accepted
webhook when an order successfully passes Digital River's fraud checks and has a capturable charge.
You can now create Checkouts with tax-inclusive shipping choice amounts.
You can now create Checkout items with a new freeTrial
parameter.
You can now receive order.charge.cancel.pending
and order.charge.cancel.pending
information, and order.charge.cancel.failed
and order.charge.cancel.complete
events and webhooks.
We made it easier to see the amounts available to refund for an order by adding the availableToRefund
amount attribute to Orders.
You can now create Checkout items with an aggregatePrice
parameter that represents the aggregate (or quantity) price of that line item.
You can now receive a sales_transaction.created
webhook as soon as we create a (costed) sales transaction.
You can now receive an order.chargeback
webhook when a chargeback occurs for an order.
We extended the Orders endpoint so you can determine if an order item was for a subscription renewal.
We made it easier to see if an Order has been fulfilled and its charge has been captured by adding a complete
state to the state enumeration.
You now have the option for Digital River to calculate the landed costs of your cross-border orders for you in the dutiesTotal
attribute.
We now create event webhooks for all events supported in production in test mode.
We now create refunds in a pending
state and publish a refund.pending
event. We removed the refund.created
event.
With the new Payouts, Payout transactions, Sales summaries, and Sales transactions API resources, you can now view detailed information about your costed sales and Digital River's payouts.
Checkout sourceId
now uses the default source identifier of the customer.
We will return tax rates as simple amounts rather than percentages (0.067, not 6.75).
You can now receive order.charge.capture.pending
, order.charge.refund.pending
, order.charge.refund.complete
, and refund.complete event
webhooks. We no longer support the order.charge.capture.created
, order.charge.refund.created
, order.charge.refund.completed
, and refund.completed
webhooks.
Renamed order.charge.created
to order.charge.pending
and order.charge.capture.completed
to order.charge.capture.complete
.
In live mode, we will attempt to deliver your webhooks for up to three days with an exponential backoff; in test mode, we will retry four times over a couple of hours.
You can now sync your SKU records with Digital River more easily by upserting SKUs using the SKUs resource.
We extended the supported list of valid US states to include territories such as Guam (GU).
You can now retrieve a source with the new clientSecret
attribute.
We have changed item-level amounts to represent the amount to pay for an item, including any item-level discounts.
You can now create Checkouts with shippingChoice
parameters with zero-dollar amounts.
Orders now have a cancelledAmount
attribute, which represents the total charge amount cancelled.
You can now receive an order.charge.refund.failed
webhook when a charge refund attempt fails for your customer's order.
We made it easier to refund items by not requiring you to specify a refund quantity unless you want it to differ from the ordered quantity.
You can now create an Order without creating a Checkout by passing a Checkout request rather than a reference to an existing Checkout at order creation.
You can now create Checkouts with an aggregatePrice
parameter that represents the aggregate price for a quantity of SKUs rather than their unit price.
Orders now have a capturedAmount
attribute, which represents the total charge amount captured.
You can now provide an applicationId
parameter when you create a checkout. You can use this attribute to segment your orders by application source.
You can now specify the ship from country or address in the Checkout with the new shipFrom
parameter.
We have now added a sellingEntity
attribute to checkouts and orders that you can use to display Digital River's Terms & Conditions and policies to your customers.
Digital River now validates the following addresses:
Checkout and Customer shipTo
and shipping
addresses
Source owner
addresses
This ensures the customer provides all address parameters required to successfully ship physical goods anywhere in the world, create a payment charge, comply with local invoicing regulations, and accurately calculate local taxes.
Improved availability returns.
When you create an order, We will return standardized card decline codes, and the card networks will decline the charges.
We have now added price
and aggregatePrice
attributes to checkouts and orders.
Breaking change
For 2020-09-30
, we added the invoices resource. You can use it to create an invoice when billing a customer, charging a customer for a recurring event, or providing information in response to a fulfillment.
Updated the documentation.
You can now without upgrading the key.
2020-01-07
is the base version of the Digital River API.