Digital River

Digital River-enabled sites will work exclusively with the Digital River gateway and Digital River tax engine.

If you would like to use our integration with Digital River, please reach out to your customer success manager.

What is Digital River

Digital River provides a complete checkout solution for global payments, fraud, tax, and compliance management. It’s your comprehensive commerce answer to global growth and risk protection. Digital River optimizes payment acceptance and simplifies the complexities of selling online globally. Through a merchant of record business model, Digital River shoulders the financial and legal responsibilities of selling. More than a payments provider, Digital River manages complex tax and regulatory challenges on your behalf so you can focus on what you do best. With over 25 years of ecommerce experience, companies of all sizes benefit from Digital River’s global scale to grow their revenue, accelerate time to new markets, and protect their business from risk.

Supported Currencies

Currently, the Digital River integration supports only the USD and CAD currencies. EUR and GBP currencies are planned for the next release.

Limitations

  • Subscription management actions via the admin UI require an ‘on behalf of’ script to be followed to meet Digital River merchant of record standards.
  • US tax-exempt certificates must be uploaded directly to Digital River.
  • Physical goods and shipping charges are not supported.
  • Ad-hoc invoice functionality is disabled in Chargify.
  • Subscription Groups functionality is disabled in Chargify.
  • Prepaid Subscriptions functionality is disabled in Chargify.

System Requirements

API Fleet and version: Digital River version 2021-02-23.

Digital River Setup

To start using Digital River with Chargify, complete the following steps:

  1. Create your new Digital River site and add your API credentials.
  2. Configure webhooks in Digital River Dashboard.
  3. Configure products with tax codes in Chargify.

Setup a new Digital River Site

You need to set up a new site to use Digital River.

  1. Select the “Enable” checkbox in the Digital River Site section to initialize a Digital River site.
    Step 1 - click the Enable checkbox in Digital River Site section.
  2. Go to “Config” -> “Payment Gateways” for your site. You will see that the Digital River gateway was set up for you. You need to complete the gateway credentials to finish the setup.
    Step 2 - go to the Payment Gateways section.
  3. Select Digital River from the list of connected gateways and click the “Gateway Settings” button.
    Step 3 - select Digital River from the list of connected gateways and click the "Gateway Settings" button.
  4. Click the “Gateway Credentials” edit button and fill in the API keys.
    Step 4 - click the "Gateway Credentials" edit button and fill in the API keys.

Setting up required webhooks in Digital River

To process payments in Chargify via Digital River, you need to set up webhooks in your Digital River Dashboard.

There are four webhooks that you need to set up:

  • order.accepted
  • order.blocked
  • order.charge.capture.complete
  • order.charge.capture.failed

Note that there are two similar webhooks in the Digital River panel, order.charge.capture.complete and order.charge.capture.completed. Please choose the first one.

To create webhooks:

  1. Sign in to the Digital River Dashboard, and click Webhooks to go to the Webhooks page.
    Go to the Webhooks section in your Digital River Dashboard.
  2. Click Create Webhook and follow the next steps:
  3. Type the correct endpoint to the Endpoint URL section. Use your site’s URL and “/digital_river/webhooks”. For example, “https://your-subdomain.chargify.com/digital_river/webhooks”. Watch out for white spaces and typos.
    Type the correct webhooks endpoint URL.
  4. Select the following events types:
    • order.accepted
    • order.blocked
    • order.charge.capture.complete
    • order.charge.capture.failed
    Select event types.
  5. Make sure you have enabled the Webhook at the top left corner of the modal.
    Enable the webhook.

Digital River relies on three pieces of information when determining taxation: Tax Code, ECCN, and Country of Origin. These values are set when configuring Products and Components in Chargify.

Tax related product setup.

Specific Workflows

Now that your Chargify site is connected to Digital River, it’s time to start accepting subscriptions. We’re going to review how to create subscriptions with Credit Cards via Digital River.

Signup flow via Public Signup Page

  1. Make sure your webhooks are correctly set up, see the section on Webhooks setup.
  2. Set up a product using ECCN and tax code.
  3. Create a subscription to a product via Public Signup Page in Chargify:

    Enter Customer information on the Public Signup Page.
    Enter Credit Card information on the Public Signup Page.
    Successful signup via Public Signup Page summary.
  4. You might be redirected to an order fraud review pending page, see the section on order fraud review
  5. You will see the subscription in your Admin UI / Subscriptions tab.
  6. The subscription still has a pending payment to be resolved, you can check its status in the Subscription’s payments section.
  7. Once we receive an “order.charge.capture.complete” webhook from Digital River, your subscription will be fully active.

    Payments section of Subscription, payment status.

From here, all recurring payments will be processed via the payment method provided at signup. Subscribers will have the option to update their card via Self-Signup Pages, which we’ll discuss below.

Digital River Fraud Review

Some of the orders sent to Digital River might have to go through a process called Fraud Review. You can read more about this process in the Digital River documentation here This process can take up to 48 hours and must be handled in a special way in Chargify.

  1. Every time an order goes through an additional review, we inform the customer about it in a separate email.
  2. The Customer also receives an email once that process succeeds or fails

    Example email sent to the customer when order is pending fraud review.
  3. Additionally, if this process happens during signup via Public Signup Page, we will redirect the customer to a page holding information about the process’s status. They will be able to check the Order’s status anytime they want. A link to that page is also included in an email sent to the customer.

    Payment is pending with fraud review (redirect page after signup via PSP).
    Payment successfully went through fraud review (redirect page after signup via PSP).
    Payment failed fraud review (redirect page after signup via PSP).

Test cards

Successful scenarios

  • 3434 567890 12341, any Expiration date, any four digits for Security Code. - American Express
  • 4444 2222 3333 1111, any Expiration date, 123 for Security Code. - Visa

More credit card numbers for different card brands.

Failing scenarios

  • 4000 0000 0000 4103, The payment status transitions from pending to failed.
  • 4000 0000 0000 3295, Invalid card.

Self Service Page Flow

Your subscribers may occasionally need to update their payment method. They can do this easily using a Self-Service Page. If you’re unfamiliar with how Self-Service pages work, we recommend reviewing an overview on how these pages function.

When an existing subscriber visits a Self-Service Page, they will be provided the option to enter a new Credit Card.

Self Service Page - provide Customer new Billing Address Data.
Self Service Page - provide Customer with new Credit Card Data.

Webhooks

There are three new webhooks in Chargify that are related to payments status change:

  • pending_payment_pending - this webhook is sent when payment was created in Digital River (payment is waiting for being processes)
  • pending_payment_completed - this webhook is sent when payment was successfully processed in Digital River
  • pending_payment_failed - this webhook is sent when payment was rejected in Digital River

For more information about webhooks see our Webhooks Reference