2020
Digital River API release notes for 2020.
- We now offer a PHP SDK to help you integrate the Digital River API into your commerce application. When building your integration, we recommend you review our standards and certifications. Here 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 the supported geographies for Klarna to show the minimum and maximum order amount and the payment method type.
Breaking changes
We made the following changes in version
2020-12-17
:- You can no longer set the
visible
boolean parameter in a create or update 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 intotalImporterTax
.
- We now return several attributes at the order-level and item-level that represent the landed cost on an order. We now also provide the ability to refund importer taxes.
- We added the best practices for using the Digital River API that includes API keys, versioning, versioning and API keys, robustness, and fraud detection.
- You can apply a different API version 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).
- The Order details page now displays the item discount, purchase amount, and payment and billing details.
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 make use of billing agreements.
When classifying a product as digital or physical, we now use the tax code that you specify in the SKU.
Breaking change
For version
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.startTime
endTime
- You can now update the ship from and subscription information at the item-level in update Checkout requests.
POST
andGET
Checkout requests now return a unique item-level identifier.
- 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 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 no use any tax identifiers you pas us on the checkout rather than any tax identifiers associated with the customer.
- You can now retry failed order refunds by making a new refund request 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.pending
webhook when an order charge has been created but not yet processed. - 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. ThephoneticName
parameter allows Customer Service Representatives and couriers who need this information to correctly pronounce a customer's name in Japan. See Japanese phonetics and divisions for more information. - You can now create Checkouts and Orders with a
division
parameter. Thedivision
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
, andurl
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 has successfully passed Digital River's fraud checks and has a capturable charge. - You can now create Checkout items with a new
freeTrial
parameter. - You can now receive
order.charge.cancel.pending
andorder.charge.cancel.pending
information, andorder.charge.cancel.failed
andorder.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 for you. - 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 refunds in a
pending
state and publish arefund.pending
event. We removed therefund.created
event. - You can now view detailed information about your costed sales and Digital River's payouts to you with the new Payouts, Payout transactions, Sales summaries, and Sales transactions API resources.
- 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
, andrefund.complete event
webhooks. We no longer support theorder.charge.capture.created
,order.charge.refund.created
,order.charge.refund.completed
, andrefund.completed
webhooks. - Renamed
order.charge.created
toorder.charge.pending
andorder.charge.capture.completed
toorder.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.
- You can now retrieve a source with the new
clientSecret
attribute.
We have changed item-level amounts, so they now represent the amount to pay for an item–inclusive of 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 that quantity to be different from the ordered quantity.
- You can now create an Order without first 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. - 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
andshipping
addresses - Source
owner
addresses
This ensures the customer provided all address parameters required to successfully ship your physical goods anywhere in the world, to successfully create a payment charge, to comply with local invoicing regulations, and to calculate local taxes accurately. - Improved availability returns.
- We will now return standardized card decline codes when you create an order, and the card networks decline the charges.
- We have now added
price
andaggregatePrice
attributes to checkouts and orders.
Breaking change
Version
2020-01-07
is the base version of the Digital River API.Last modified 7mo ago