1. Home
  2. How to set up upsells and downsells

How to set up upsells and downsells

Basic Topics For Starters

Options For Technical Implementation

What are upsells and downsells?

Imagine this scenario: You are at the bakery and want to buy some rolls. At the cash point, the friendly bakery saleswoman offers you a hot, fresh cup of coffee in addition to your rolls.

How high, do you think, is the chance for you to say Yes?

Indeed, the chance is very high if the product fits.

Now this is an upsell. You can implement this in DigiStore24 as well and offer your customer an additional benefit.

If the customer says No to the additional offer, this is a “downsell” on the other hand. But even then you can make him another offer. Imagine you decline the coffee and the saleswoman asks you if you want to have a hot tea instead. This could also result in a sale.

How does an upsell process at Digistore24 look like?

  1. You offer the customer a product on your salespage
  2. The customer reads your sales text and clicks the “buy button”
  3. The customer is forwarded to the DigiStore24 order form and inserts his/her data to finally click “Buy Now”
  4. If you are using upsells, the customer is being forwarded to an “upsell thank you page” instead of the usual thankyou page. You can design this page after your fancy – here you place your individual sales text. Furthermore, you place 2 special links on this page: a YES-link on which the customer can agree to the upsell, and a NO-link via which s/he can decline the offer
  5. An upsell sale is made via one single click – i.e. the customer does not have to insert his/her data a second time (except s/he wants to buy via PayPal or bank transfer)

Why does an order confirmation page appear instead of my thank you page after an upsell sale?

If you sell upsells you usually have sold several products. Every product has its own thankyou page that you have designed before. DigiStore24 solves the problem this way: After the sale, the customer sees the distributor thankyou page. Via this page, s/he gets access to each thankyou page of the vendor.

How do I create the conversion tracking then?

Sie können Ihren Trackingcode auf Ihren Dankeseiten hinterlegen. In der Regel besuchen Kunden, die auf der Upsell-Bestellbestätigungsseite angelangt sind, auch Ihre Vendor-Dankeseiten. Für ein lückenloses Tracking verwenden Sie bitte eine eigene Upsell-Dankeseite mit Tracking-Code wie ihm nächsten Abschnitt beschrieben.

You can put your tracking code on your thank you page. Usually, customers who have come to your upsell thank you page, will also go on to your product-related thank you pages, too. Consequently, the tracking is consistent.

How do I set up my own upsell thank you page?

The Digistore24 upsell order confirmation page appears by default after each sale with additionally sold upsell products. When selling only one product at once, there appears your custom or the default thank you page.

You're able to set up your custom upsell thank you page, which will appear instead of the default upsell order confirmation page. Please do the following steps to achieve that:

step-by-step manual:

  1. Klicken Sie in der Vendor-Ansicht auf den Menüpunkt Konto > Produkte
  2. Suchen Sie Ihr Intialprodukt in der Liste, dem Sie die Upsells zugeordnet haben und klicken Sie auf das Stift-Icon, um das Produkt zu bearbeiten
  3. Klicken Sie auf den Tab Upsells
  4. Schalten Sie die Option Eigene Upsell-Danke-Seite auf JA. Sie finden diese in den Upsell-Einstellungen
  5. Geben Sie dort die URL zu Ihrer eigenen Upsell-Dankeseite an.
  6. Klicken Sie zum Abschluss auf den Button mit der Aufschrift Speichern

Nun wird Ihre individuelle Upsell-Dankeseite anstatt der Digistore24 Upsell-Bestellbestätigungsseite angezeigt, wenn Ihr Kunde mehr als ein Produkt kauft.

How can I set up upsells at Digistore24?

DigiStore24 provides the opportunity to implement upsells and downsells on up to 5 levels. This is how to set it up:

  1.  Log into your DigiStore24 account
  2. Click on Account > Products
  3. Click the pen icon next to the product for which you want to set up an upsell product to get into the product features
  4. In the menu, click on the tab “Upsells” to get to the site where you can implement upsells and downsells
  5. The product after which an upsell is supposed to be offered is already entered as “initial product” in the upsell flow
  6. In the field below (“After buyer buys: *Your initial product*”) you can choose the upsell product from all of your DigiStore24  products listed there
  7. In the two following dropdown menus you can choose what is supposed to happen if the customer buys the upsell or declines the offer
  8. In the field “If buyer accepts” you can either again choose one of your products the customer is being offered as another upsell or you do not offer him/her another product by choosing the option “Upsell flow ends”
  9. In the field “If buyer declines” you can make the same settings as in 8. – with the difference that the product you are offering after the customer’s upsell decline is called a downsell
  10. You can implement up to 5 upsells and downsells in the upsell flow
  11. When all settings are done, click “Save”
  12. Afterwards you can choose to forward the customer to an individual upsell thankyou page after s/he has bought the upsell or to a thankyou page provided by DigiStore24
  13. If you have set up an individual upsell thankyou page and want to forward the customer to this page after the upsell purchase, put the counter on “YES” and insert the URL of the upsell thankyou page in the following field
  14. You can also append order details as GET parameters to the URL of the upsell thankyou page if you put the counter on “YES”
  15. Click “Save”

Learn here how to create your upsell thankyou page with WordPress.

Learn here how to create your upsell thankyou page with HTML.

How can I implement a personal form of address in the upsell process?

On an upsell salespage, the customer has already entered his/her data at the initial sale. You can use this data on an upsell salespage for a personal form of address, as e.g.:

Hallo Peter Smith! Thanks for your order!

For this, DigiStore24 transfers the customer’s name and last name as GET parameter first_name and last_name.

Integration with WordPress

If you use WordPress and the Digistore24 WordPress plugin (from Version 2.02), please use the following short codes:

[digistore_first_name] – the customer’s first name

[digistore_last_name] – the customer’s last name

[digistore_email] – the customer’s email address

[digistore_initial_product_id] – the product ID of the initial sale of the upsell process


Hallo, [digistore_first_name] [digistore_last_name]! Thanks for your order!

Integration with PHP

In the PHP code, you can insert the name like this:

Hallo, <?php echo  $_GET[‚digistore_first_name‘], ‚ ‚, $_GET[‚digistore_last_name‘];?>! Thanks for your order!

The following GET parameters are transferred:

digistore_first_name – the customer’s first name

digistore_last_name – the customer’s last name

digistore_email – the customer’s email address

digistore_initial_product_id – the product ID of the initial sale of the upsell process

To not “confuse” your affiliates you can prevent to show promolinks for upsell products. Generally, promolinks only make sense for initial products.

This is how you hide promolinks for upsell products:

  1. Sign into your DigiStore24 backoffice
  2. Go to Account > Products
  3. Click on the pen icon to edit the product details
  4. Scroll down to the menu field “Sales limits” and choose the option “May ONLY be sold as an up/downgrade or as an upsell” in the dropdown menu ”Up/downgrade / Upsell”

If the option is activated, there are no promolinks:

  • in the product links
  • in the product editor
  • in the affiliation details in the affiliate mode

If the option is activated, there is no marketplace entry for the upsell product.

How do I create a cross upsell with a product of another vendor?

What is a cross upsell?

With a cross upsell, two vendors can work together. One vendor can sell products of the other vendor – namely as upsell in his own sales process.

Example: Vendor Smith sells a fitness program and knows vendor Miller. Vendor Miller offers diet plans. In order for both vendors to increase their sales, Smith offers Millers diet plans as cross upsell.

Smith’s customers buy the fitness program first. Directly after the purchase (in the same selling process), vendor Miller’s diet plan is offered to the customer.

Why should you consider offering cross upsells?

Cross upsells are considerable because you offer your customers a truly relevant product while s/he is in the right mood for shopping. This way, you can offer him/her an additional benefit. Imagine you were buying bread from the bakery and the baker offers you a coffee in addition. This is a great example of an upsell.

How do I set up a cross upsell?

The person who wants to give his/her product to a partner vendor as cross upsell, has to proceed as follows:

  1. Go to Account > Contracts > Joint Ventures
  2. Click on the tab “Cross Upsells”
  3. Insert the DigiStore24-ID of your partner and define his/her provision
  4. In Account > Contracts, the partner vendor can now see the cross upsell in the second level menu “Cross Upsells”
  5. The partner vendor can use the upsell flow the same way s/he uses it when creating upsell processes with his own products – your product is now available to the partner vendor in the dropdown menus of his/her upsell flow

Note: Our upsell works with the payment methods bank withdrawal, PayPal and Credit Card as 1-click-upsell.

How are the cross upsell provisions calculated?

  • The provision of your partner is defined by you as the “product provider”.
  • The provision of your partner – like the affiliate provision – corresponds to the sum which remains after the charge of the VAT and the DigiStore24 fee. Then, the vendor gets his/her provision.
  • If you want the affiliate who brought the customer not to get a provision, the product provider has to  determine that in his product settings. S/he can do that by deactivating the option “Automatically accept affiliations”.
  • In this case, only the cross upsell partner (“product receiver”) gets a provision before you as the product provider and your joint venture partners.

Upsell with the Digistore24 WordPress plugin

You can offer your customer up to 5 upsells, s/he can buy with one single click, after the purchase of the initial product.

You need a special salespage for every single upsell product. This page is different from a “usual” salespage in this way:

  • At the beginning of the page, it is quite recommendable to thank the customer for the first purchase
  • In the second part you give strong arguments for buying the upsell product
  • At the end of the upsell thankyou page, the customer has the option to choose between “Buy” or “Don’t Buy”. Therefore, DigiStore24 provides two special links.

Please note: The salespage of the initial product does not change when s/he buy the upsell, too. I.e. the first salespage has one single link to the order form like this:


If you do not have WordPress, please continue reading here.

What is a shortcode?

A shortcode is a placeholder WordPress can replace. Such placeholders are useful because you can have installed contents of a website easily with them – as for example the links for the upsell flow.

You can use these shortcodes (placeholders) at any place where you can insert texts in WordPress, e.g. on WordPress pages or in entries and even in links.

You can recognize a shortcode by the square brackets, e.g.: [digistore_yes_url]

Please insert the shortcodes exactly the way you find them here. The text inside of the square brackets has to be exactly the same and must not be changed. Please also retain the square brackets. I.e. you have to insert exactly this:


Only then can WordPress insert the correct links into the page.
Buy or Do not buy – two links for one upsell

Please first make sure that you have installed the DigiStore24 WordPress plugin.

In WordPress with the DigiStore24 plugin, there are 2 shortcodes for these two options:

[digistore_yes_url] – if the customer clicks this, the upsell has been bought

[digistore_no_url] – if the customer clicks this, the upsell has not been bought

Shortcodes in the WYSIWYG site editor

Many users use the WordPress site editor in the WYSIWYG view (What you see is what you get).

In order to insert a Buy-link in this view, please proceed as follows:

  1. Insert the question: “Do you want to buy the product?”
  2. Insert the text for the Buy-link, e.g. “Yes, please”
  3. Mark the text of the previous step and click the link icon: link-icon
  4. A pop-up window will appear to insert a link. Insert the URL [digistore_yes_url] – exactly like this. The text inside the square brackets must not be changed! Use the upsell shortcodes exactly like a URL.Verwenden Sie die Upsell-Shortcodes genau wie eine URL
  5. Click “Refresh” to close the window and adopt the changes
  6. Repeat steps 3 to 5 for the text “No, thank you!” and the shortcode [digistore_no_url]

Save the site and test the upsell selling process.

Shortcodes in the text view:

If you use the text view of the WordPress site editor, you see the HTML code of the page. For many users this might be irritating. For technical experts, this is not a problem.

You use the shortcodes above like a URL. In the text view of the site editor, please insert:

Do you want to buy the product?

<a href=“[digistore_yes_url]“>Yes, please</a>

<a href=“[digistore_no_url]“>No, thank you</a>

Instead of “Yes, please” and “No, thank you” you can use your own texts or images, of course.

Save this page and test your upsell selling process.

Possible error sources: interdependencies with other plugins


Some vendors want to embed the buy buttons as delayed content. With this method, the buy buttons appear after a certain time, e.g. 60 seconds.

As far as we know, Optimizepress does not evaluate shortcodes with delayed content.

Therefore, buy buttons cannot be embedded as delayed content via Optimizepress.

Please use another plugin which evaluates shortcodes if you want the delayed appearance of the buy buttons.

Note: There are WordPress security plugins and server security settings which do not allow long URLs. However, DigiStore24 needs these long URLs to be able to bring out the upsell flow. Unfortunately, we cannot do anything other than recommend you to contact your server admin to adapt the security plugin according to your needs or alternatively, to look for a server host which allows long URLs. If you have a problem with the WordPress plugin, we recommend you to deinstall it.

Upsells with HTML codes

If you use WordPress, we recommend to set up upsells with the DigiStore24 WordPress plugin.

Upsell salespage

An upsell salespage is like a “usual” salespage with only these differences:

  • At the beginning of this page, you should congratulate the customer on his previous purchase. This way the customer can be sure that his/her purchase has been successful.
  • At the end of the upsell salespage, you give him/her the choice to either proceed with or without buying the upsell. To do so, you have to insert a “Buy”-link and a “No, thank you”-link into this page.

DigiStore24 processes the upsell flow automatically.

Note: If you receive the error message “The upsell session ID has not been transferred via URL. Make sure that the upsell session ID will be attached to the URL on your website.”, there are 2 possible error sources: 1. The site has not been set up correctly. 2. The site is not called up during the sequence of an upsell flow. This is why you should always buy the initial product when doing a test.


In order for the upsell sale to run properly, the upsell salespage has to meet some demands:

A technical expert of PHP can usually adjust your website easily, so that the demands are met.

Your website can read out the GET parameter digistore_session_id. This session ID has to be attached to the URL of the “Buy” and “No, thank you” link.

PHP example for an upsell salespage:


$session_id = $_GET[ 'digistore_upsell_session_id' ];

$buy_url     = "https://www.digistore24.com/answer/yes/$session_id";
$no_thankyou_url = "https://www.digistore24.com/answer/no/$session_id";

echo "<a href='$buy_url'>Kaufen-Link</a>";
echo "<a href='$no_thankyou_url'>No-Thank-You-Link</a>";


With the help of the session ID, DigiStore24 can find out at which point of the selling process the customer currently is and can react according to his/her choice.

Note for technicians

The session ID can also be transferred to Digistore24 as GET parameter, e.g.:

$buy_url     = "https://www.digistore24.com/answer/yes/?digistore_upsell_session_id=$session_id";

$no_thankyou_url = "https://www.digistore24.com/answer/no/?digistore_upsell_session_id=$session_id";

Embedding per Javascript

We provide you a Javascript program that simplifies the setup for free (and without any guarantee).

Javascript is easily disturbed by another Javascript code. In order to make sure that your upsells always work, please make a test buy of your upsell after every important change of your website.

This is how you set up an upsell salespage with Javascript:

  • Embed the following code into your site. If you use a WYSIWYG editor, switch it to HTML code view. Embed the code preferably at the beginning of the site – if possible somewhere between the <head>- and </head>-tag:
<script src="https://www.digistore24.com/webinc/service/digistore.js"></script>
  • For the “Buy”-button, use the URL: https://www.digistore24.com/answer/yes
  • For the “No, thank you”-button, use the URL: https://www.digistore24.com/answer/no

Example (browser view):

Thank you very much for your trust – the purchase was successful.

Here is another special offer for you – …

Do you want to buy this offer for €/$ 27 now?

No, thank you

Example (HTML code):

<script src="https://www.digistore24.com/webinc/service/digistore.js"></script>

Thank you very much for your trust - the purchase was successful.

Here is another special offer for you - …

Do you want to buy this offer for €/$ 27 now?
<a href="https://www.digistore24.com/answer/yes">YES, PLEASE!</a>
<a href="https://www.digistore24.com/answer/no">No, thank you</a>

Updated on 16. January 2018

Was this article helpful?