Subscription information
Learn about a checkout's subscription information
Last updated
Learn about a checkout's subscription information
Last updated
As reseller of record, Digital River is required to collect basic subscription data. As a result, all that contain recurring products or services must have subscriptionInfo
.
A checkout's subscriptionInfo
can be used to hold data on:
You'll use this data, along with the charge type, to set up and renew subscriptions.
We manage most of this data if you're using Digital River's subscription service. For integrations that use third party subscription services, you must supply these details in both acquisition and renewal .
This setting is also necessary to display only reusable payment methods to customers.
For manual renewals, customers must be actively involved in the acquisition and renewal process. This means that customers supply payment information at the point of sale, which you use to either create a new source or authenticate an existing source.
If you're using Digital River's subscription service and you want to offer no-charge trial subscriptions, freeTrial
also need to be true
. For details, refer to Trial subscription acquisitions.
As part of the PSD2 Strong Customer Authentication (SCA) initiative, payment processors require extra information when handling merchant-initiated credit card transactions. To comply with this mandate, we make use of billing agreements.
A billing agreement contains, among other things, the terms and conditions agreed to by the customer during a subscription's acquisition. This agreement demonstrates that the customer consented to have their payment information saved and then used in recurring transactions.
By connecting the customer-initiated subscription acquisition with merchant-initiated autorenewals, you comply with relevant PSD2 SCA mandates, and we can make payment authorization requests that are more likely to succeed.
If you're using Digital River's subscription service, you can pass your own subscriptionId
. If you don't, we generate an identifier for you. In either case, the value uniquely identifies the subscription in our system.
If you're using a third-party subscription service, Digital River doesn't generate a subscriptionId
. You must send your own value during the checkout process. In this case, whenever you process a renewal, it's best practice to provide us with the same subscriptionId
information you sent during the acquisition.
To create an auto-renewing subscription using Klarna, you must provide both a startTime
and endTime
. This data helps Klarna's risk engine accurately assess a transaction's validity, improving conversion and acceptance rates.
During acquisitions, specify startTime
as the current date. The endTime
should be the startTime
+ the subscription duration, also known as the payment schedule. The payment schedule is how often customers pay for their subscriptions. For example, customers might have a year-long subscription that they pay monthly. We treat the subscription duration and payment schedule as equivalent.
For example, if the startTime
of an annually billed subscription is 2021-07-07T13:47:13Z
then set endTime
to 2022-07-07T13:47:12Z
. For a monthly recurring subscription with the same startTime
, you would set endTime
to 2021-08-07T13:47:12Z
.
To renew an open-ended subscription that bills monthly, build a checkout, and convert that checkout to an order every month, updating startDate
and endDate
in each request until the customer cancels.
For server-initiated auto-renewals, the required subscriptionInfo
configurations are autoRenewal
set to true
, the subscriptionId
that you may have provided during the acquisition and the billingAgreementId
from the acquisition . You should also set the checkout's chargeType
to merchant_initiated
.
The autoRenewal
indicates whether subscriptions renew automatically or manually. Customers need to actively consent to automatic recurring billing during the acquisition of auto-renewing subscriptions. So, when autorenewal
is true
, customers must agree to have their payment information stored on file and then charged at the start of every billing cycle.
When you offer customers a free trial period to evaluate a subscription, and you also collect their payment information, make sure that you set the freeTrial
to true
. To satisfy our reseller of record requirements, Digital River needs to know that payment details are being collected, even when no charge authorization occurs.
The terms
hold the subscription's contractual agreement. These should be the Digital River-approved terms displayed to customers during acquisitions. Before creating a subscription, your integration must acquire the customer's active acceptance of them. They define the subscription, provide links to Digital River's terms of sale and privacy policy, and stipulate that the customer agrees to store their payment information for use in renewals.
When you convert a checkout to an order, and that checkout contains a line item with subscriptionInfo
, we create a billing agreement and return its billingAgreementId
in the response.
If you're using Digital River's subscription service, we associate the billing agreement with the subscription and make sure billingAgreementId
is sent in all renewal requests. For those using a third-party subscription service, you must retrieve billingAgreementId
from the acquisition and pass it in all renewal requests.
The subscriptionId
field identifies a subscription.
When defining startTime
and endTime
, make sure you adhere to the in the Digital River APIs. If either value is improperly formatted, you receive a 400 Bad Request
with an error code
of invalid_parameter
.