diff --git a/src/pretix/base/ticketoutput.py b/src/pretix/base/ticketoutput.py
index 2934e64f1e..f34ad2415f 100644
--- a/src/pretix/base/ticketoutput.py
+++ b/src/pretix/base/ticketoutput.py
@@ -156,3 +156,10 @@ class BaseTicketOutput:
The text on the download button in the frontend.
"""
return _('Download ticket')
+
+ @property
+ def download_button_icon(self) -> str:
+ """
+ The Font Awesome icon on the download button in the frontend.
+ """
+ return 'fa-download'
diff --git a/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html b/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html
index ef559fa0d7..62406bf53f 100644
--- a/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html
+++ b/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html
@@ -63,7 +63,7 @@
- {{ b.text }}
+ {{ b.text }}
{% endfor %}
{% endif %}
@@ -150,7 +150,7 @@
- {{ b.text }}
+ {{ b.text }}
{% endfor %}
{% endif %}
diff --git a/src/pretix/presale/templates/pretixpresale/event/order.html b/src/pretix/presale/templates/pretixpresale/event/order.html
index 9153fc7ab9..ae65e7061b 100644
--- a/src/pretix/presale/templates/pretixpresale/event/order.html
+++ b/src/pretix/presale/templates/pretixpresale/event/order.html
@@ -99,7 +99,7 @@
- {{ b.text }}
+ {{ b.text }}
{% endif %}
{% endfor %}
diff --git a/src/pretix/presale/views/order.py b/src/pretix/presale/views/order.py
index d6d20f160c..4a27266ce3 100644
--- a/src/pretix/presale/views/order.py
+++ b/src/pretix/presale/views/order.py
@@ -82,6 +82,7 @@ class OrderDetails(EventViewMixin, OrderDetailMixin, CartMixin, TemplateView):
continue
buttons.append({
'text': provider.download_button_text or 'Download',
+ 'icon': provider.download_button_icon or 'fa-download',
'identifier': provider.identifier,
'multi': provider.multi_download_enabled
})