User guide
Learn how to use the Salesforce B2C LINK Cartridge.
Last updated
Learn how to use the Salesforce B2C LINK Cartridge.
Last updated
Product management consists of two aspects. First, the required product attributes must be configured for each product/SKU. Next, the products must be synced to Digital River. This section details those steps.
Before Digital River can process the SKUs, you must complete all of the products with both the Tax Class and the Digital River custom attributes and send them to Digital River. This data is necessary for valid tax calculations. The absence of these attributes will result in errors when you run the SKU export job.
Digital River needs the optional Harmonized System (HS) Code property for duty calculation.
Note: If your Digital River account is configured for Landed Costs, you will need to configure the Harmonized System (HS) Code on applicable products. This cartridge code processes duty and appears to customers as a separate total price component without any additional site configuration. To avoid duty inclusion, leave HS Code attributes blank or contact your Digital River representative.
Note: If the tax code is a digital code, ensure that the Tax Codes for Digital Products (drDigitalProductTaxCodes) list is stored as the site preference to identify the digital products. After importing the metadata, the default tax codes are populated and can be used out of the box. No additional configuration is needed.
Verify the default list by selecting Sites, then select Your Site, select Site Preferences, then select Custom Preferences. Select Digital River in the Custom Site Preferences Groups and scroll down to the Tax Codes for Digital Products (drDigitalProductTaxCodes) preference.
After setting the Tax Class on the product, ensure that the SKU creation job is run. Ensure that the DR Digital Product field appears in the product’s attributes and is set to Yes for digital products.
After you configure the products, you need to sync the data to Digital River. The cartridge provides the following jobs to sync products. We recommend that you schedule these jobs to run regularly.
The DigitalRiver_DeltaSkuUpdate job will iterate through all products but send SKU data only for those products that haven’t been sent to Digital River or were modified afterward. We recommend you use this job for product data export.
The DigitalRiver_DeltaSkuUpdateOnButton is provided for exclusive occasions when there is a necessity to grant a merchant representative the possibility to request products export to Digital River without providing authority to manage jobs. Schedule this job to check periodically whether a merchant representative requested a SKU. If such was requested, an update will be made (same as the DigitalRiver_DeltaSkuUpdate job does). A merchant can force a product sync using the "Request Delta SKU Update" option in the Merchant Tools / Digital River. See Digital River Merchant Tools available in Business Manager for more details.
The DigitalRiver_FullSkuUpdate job will iterate through all products and send SKU data for all products regardless of whether or not they have been updated to Digital River. We recommend you use this job for product data export.
The DigitalRiver_FullSkuUpdateOnButton is provided for exclusive occasions when there is a necessity to grant a merchant representative the possibility to request an all products export regardless of whether or not they have been updated to Digital River without providing authority to manage jobs. Schedule this job to check periodically whether a merchant representative requested a SKU. If such was requested, an update will be made (same as the DigitalRiver_FullSkuUpdate job does). A merchant can force a product sync using the "Request All SKU Update" option in the Merchant Tools / Digital River. See Digital River Merchant Tools available in Business Manager for more details.
The LINK Cartridge adds the drExportedDate
attribute to the product. The SKU update jobs update this attribute each time the jobs run.
We added new Business Manager menu options under Merchant Tools.
Request SKUs update—Click the Request SKUs update link under Digital River. You'll see the following options:
Request delta SKUs update—Click this button to launch the Digital River SKUs update with the next run of DigitalRiver_DeltaSkuUpdateOnButton
job. The button will show the corresponding text indicating that you can launch the job or that the job is running.
Request all SKUs update—Click this button to launch the Digital River SKUs update with the next run of DigitalRiver_FullSkuUpdateOnButton
job.
Note: Clicking Request delta SKUs update or Request all SKUs update will not launch the job immediately, but it will raise a flag that must perform an update with the next run ofDigitalRiver_DeltaSkuUpdateOnButton
. If you haven't scheduled the job (in advance) in the Business Manager or (as an administrator) launched the job manually, clicking the button will have no impact at all.
Digital River Service Tester—Click the Digital River Service Tester link under Digital River and then click Test Services to test Digital River service availability. Test Services will make calls to the indicated web services and evaluate the response codes.
When a customer purchases a product, the Checkout page displays the shipping, payment, and order summary information.
The Order Summary on the Checkout page displays the subtotal, shipping fee, sales tax, total fees (if applicable), and amount total for the order.
If landed cost is enabled, the Order Summary will also include the duty and Importer of Record (IOR) tax if applicable to the order.
The creation and management of regulatory fees are outside the scope of the LINK Cartridge. Work with your Digital River Project Manager to set up regulatory fees. Once the fees are configured, the LINK Cartridge displays any applicable fees in the Order Summary when the shopper goes to the Checkout page.
The total fees are added to the purchase order as an adjustment.
Fees will be stored in the Product Line Item objects in the following fields: Fee (drFeeAmount
), Fee Tax (drFeeTaxAmount
), and Fee Details (drFeeDetails
). The Fee Details field contains a JSON array that includes the details of all fees applied to the line item.
The customer can update or add a billing address, add their email address, and include a phone number. For US-based purchases, the customer can also state whether or not the purchase is tax-exempt.
To update the billing address, click Update Address and complete the fields. To add a new billing address, click Add New, complete the fields, and click Save.
For non-US countries, the customer can choose to add one or more Global Tax Identifiers in the Billing section.
The shopper can add and remove tax identifiers and remove from the Checkout page by completing the form and clicking Apply.
The Digital River Salesforce B2C LINK Cartridge supports tax-exempt purchases on US storefronts. Authenticated US shoppers can add one or more tax certificates from their My Account page during checkout by selecting Yes for Tax Exempt Purchase. To add the tax certificate, click Add New Tax Certificate, complete the fields, upload the new tax certificate, and click Save. See the detailed steps below for more information.
Tax Exempt Purchase only appears if it is enabled in Site Preferences and if this is a US purchase. Specify the logic the cartridge uses to determine if the purchase is a US purchase and this section should be displayed.
The following list shows Digital River's Tax Certificate validation process once a shopper uploads a tax certificate.
Validation of the tax certificate is a manual process done by Digital River employees. It is not a real-time determination.
Pending that validation, the customer can place their order and that order will be treated as if there was a valid certificate (that is, tax-free).
If the shopper’s certificate fails validation, when that shopper places another order, their order will not be tax-free.
To add view existing certificates and add a new tax certificate from the My Account page:
Sign in to the storefront.
Go to My Account and scroll down to Tax Certificates.
Click View. The Tax Certificates page appears and displays all existing certificates.
To add a new certificate, click Add New.
Complete the fields and upload the certificate from the Add New Certificate page.
Click Save. To view taxes at the line-item level of an order. See Searching for an order. The saved tax certificates will be available on the billing page in the Billing Address section:
A shopper can now retrieve their stored credit card when they go to checkout. Stored cards are authenticated using Strong Customer Authentication as required.
The Thank you page displays the receipt for the order and the order information. The system will then send a confirmation email to the customer's billing email. You can use the value for the Order Number to search for the order in Salesforce.
The Digital_River_Dropin payment processor provides the following order information in Business Manager:
To search for an order:
Return to Salesforce.
Click the Merchant Tools tab, and then click Orders under Ordering.
Enter the order number in the Order Number field and click find.
In the search results, click the link for the order you want to view under Number. The Details for Order page appears.
To view taxes and fees at the line-item level, click the Shipment link, click the link for the product under Product ID, click the Attributes tab. Digital River attributes including taxes, duties, and fees are shown in the Digital River section.
Select Merchant Tools, select Orders, choose an order, and click Payments.
Payment type (creditCard, PayPal, and so on) is mentioned.
Hyperlink to order on Digital River Dashboard.
Select Merchant Tools, select Orders, choose an order, and click Notes. A Digital River “create order” response is being saved in order notes.
Digital River provides a range of order statuses to track order payment. Each order has a Digital River order status which reflects the current order position within the order cycle:
accepted—order has passed checks and is ready for fulfillment
in_review—order is on fraud review and can’t be fulfilled yet
pending_payment—order has delayed payment and can’t be fulfilled yet
blocked—order is blocked and must be cancelled
fulfilled—order is fulfilled and is waiting for payment capture
complete—order is fulfilled and has been paid
Digital River order status determines further order processing. Also, each order has a Digital River fraud status which shows the state of the order's fraud check:
passed—order has passed the fraud check
review_opened—order is on fraud review
blocked—order has not passed fraud check
Digital River fraud status doesn’t have a direct impact on order processing and is provided for user reference.
To see Digital River order and fraud states, select Merchant Tools, then select Ordering, and click Orders. Select the order number and choose the Attributes tab.
Initial Digital River status values are set after order placement and they define order processing scenarios.
After the order is placed, the status update is handled through jobs that can be run or scheduled in the Business Manager. We recommend that you schedule these jobs on a regular basis.
The /DigitalRiver_fulfillOrders/ job processes all orders that were shipped or cancelled but still have Digital River order status of “accepted.” For each order, fulfillment is sent to Digital River. After all orders are processed their statuses are updated through a separate Digital River call. See the Order cancellation/fulfillment section for more details.
The DigitalRiver_updateCompletedOrders job queries all orders that were shipped or cancelled but still have a Digital River order status of “accepted” and updates their status through a Digital River call. Unlike “DigitalRiver_fulfillOrders” this job doesn’t send fulfillments to Digital River and is applicable only in combination with other integrations when drOrderHelper.notifyOrderFulfillment or drOrderHelper.notifyOrderCancellation functions are injected into scripts responsible for shipping management/order cancellation.
Important: Neither DigitalRiver_fulfillOrders nor DigitalRiver_updateCompletedOrders cancel orders or update shipping in the order management system, but only notify Digital River when the order or line item has been shipped or cancelled. Once notified, Digital River will capture the payment or cancel the charge. You can manage order shipping or cancellation in Business Manager or by other integrations, but it’s not within the scope of this cartridge functionality.
The DigitalRiver_updatePendingOrders job updates the state for all orders that have pending statuses (in_review, pending_payment, fulfilled) that wait for resolution on the DigitalRiver side.
In the following table, you can see all the statuses that you can expect to receive from Digital River and their impact on orders in SFCC for each respective state:
The DigitalRiver.js library replaces the Salesforce built-in payment method forms and also renders Digital River Drop-in payment integration to fulfill the payment process. The payment methods will display on the billing page. The payment methods that display depend on the configuration of your LINK cartridge key by Digital River. Visit our Drop-in documentation for an updated listing of payment methods available.
The customer can choose any available payment method. A registered customer can also save a credit card in their wallet. To do this, you need to set the Yes, please save this account and payment information for future purchases check box. The saved payment method will be visible on the My Account page.
When the customer clicks the Add New link in the My Account section, the Drop-in form with the specific configuration will appear. The form allows the customer to add a new payment method within Drop-in and create a new source.
The saved cards will be available in the list of saved cards on the billing page. You can choose any card from the list to pay for purchases in the future.
Though order and line-level fulfillment or cancellation within SFCC or an order management system are not within the scope of the current cartridge, it’s necessary to notify Digital River each time such an event occurs. Once notified, Digital River will capture the payment or cancel the charge. You can do this in two ways:
If URL endpoints or third-party integration perform order fulfillment/cancellation, you can inject the drOrderHelper
module in the code to send fulfillments to Digital River. To do so, import the module:
And use one of two functions that will create fulfillments at Digital River.
Functions accept two arguments:
order—The updated order number or actual order object.
items—Array of order product line items or order line items IDs that should be fulfilled. This parameter is provided for partial fulfillment/cancellation.
Note: At this time, partial line item fulfillments and cancellations are not supported.
Functions return the Result of the Digital River call.
Refunds are handled through the Digital River dashboard. From Salesforce, you can get to the order record in the Digital River dashboard by navigating to the Order record and clicking the Payment tab. A link to the dashboard is provided in the Payment Method section.
Before you can refund an order, the order must be fulfilled and shipped.
Sign in to Salesforce.
Click Merchant Tools and then click Orders. The Orders page appears.
Click Find.
On the Orders page, click the order number link under the Number column. The Details for order page appears.
Click the Attributes tab and scroll down to Digital River Attributes where the webhook displays the retrieved information. The Digital River Order Status should be fulfilled.
Click the General tab, and then click the Shipping Status link. The Shipping Status should be Shipped. Note: If you changed the Digital River Order Status to Fulfilled or Shipping Status to Shipped, click Administration and then click Jobs. From the Jobs page, scroll click DigitalRiver_fulfillOrders, and then click Run Jobs. This will send the fulfillment request to Digital River.
Click the Payment tab and click the Digital River logo under Payment Method to go to the Order details page for this order on the Digital River Dashboard. Note that you may need to enter your user credentials to access the Order details page.
From the Order details page, scroll down to Refunds, click Create refund, complete the fields, and then click Review and submit.
Click Submit to complete the task.
The following image shows how payment methods will appear on the billing page:
Use the DigitalRiver_fulfillOrders job. This job is available out of the box. This job provides order-level fulfillment and cancellation. It will choose orders with Shipped or Cancelled statuses and provide respective fulfillment to Digital River. Line level fulfillment and cancellation are not included in this job. It is recommended that this job is scheduled to run on a regular basis. In the Business Manager, change the Shipping Status to Shipped to fulfill the order. To cancel the order, change the Order Status to Cancelled. The next time the DigitalRiver_fulfillOrders job runs, the fulfillment or cancellation request will be sent to Digital River.
Digital River order status
Order processing scenario
accepted
order will be processed
pending_payment
in_review
order will be put on hold until status changes to "accepted" or "blocked"
blocked
order will be cancelled