diff --git a/docs/api.md b/docs/api.md
index 80b3556e9705fd788a51ffe7f55143507353843f..5eac4f805bc4a6568cb997e8390661e7c23da028 100644
--- a/docs/api.md
+++ b/docs/api.md
@@ -33,7 +33,7 @@ The api commands are:
 * `StripeSubscription.copytrxnidtoprocessorid` - Used to copy trxn_id to processor_id in civicrm_contribution_recur table so we can use cancelSubscription. Hopefully this won't be needed in future versions of CiviCRM if we can pass more sensible values to the cancelSubscription function.
 * `StripeSubscription.import` - Use to import subscriptions into CiviCRM that are in Stripe but not CiviCRM.
 Accepts various parameters but requires: Payment Processor ID, Stripe subscription ID and CiviCRM contact ID.
-![StripeSubscription.import](/images/StripeSubscription.import.png)
+![StripeSubscription.import](images/StripeSubscription.import.png)
 
 ## StripePaymentintents
 
diff --git a/docs/examples.md b/docs/examples.md
index f53d4f56c0e16b1a51e44226ed484aa105623db8..09d0b350700250e6f746cf7b7feeab6c0258b030 100644
--- a/docs/examples.md
+++ b/docs/examples.md
@@ -4,6 +4,6 @@
 
 ## Stripe Credit Card payment on a Contribution page
 
-![Stripe credit card element](/images/stripe_cardelement.png)
+![Stripe credit card element](images/stripe_cardelement.png)
 
 
diff --git a/docs/faqs.md b/docs/faqs.md
index e6d38a792380549287c7579fed8fde5bc4892a5c..c4f8e29ddf2a99b641d2d476d9a4e16388f7f3f8 100644
--- a/docs/faqs.md
+++ b/docs/faqs.md
@@ -39,7 +39,7 @@ When we create a contribution in CiviCRM (Stripe Invoice/Charge) we add some met
 * The statement descriptor contains a parsable `contactID-contributionID` and then part of the description.
 * The description contains the description, a parsable `contactID-contributionID` and then the CiviCRM (unique) invoice ID.
 
-![Stripe Payment](/images/stripedashboard_paymentdetail.png)
+![Stripe Payment](images/stripedashboard_paymentdetail.png)
 
 ## Customer Metadata
 
@@ -55,9 +55,9 @@ The following metadata is created for a Stripe Customer:
 * Link to CiviCRM contact record.
 * CiviCRM version info (eg. `5.18.3 6.2`).
 
-![Stripe Customer](/images/stripedashboard_customerdetail.png)
+![Stripe Customer](images/stripedashboard_customerdetail.png)
 
-In addition, if you have enabled receipts (see [Setup](/setup)) the email address will be sent to Stripe and used to send a receipt to the contact.
+In addition, if you have enabled receipts (see [Setup](setup)) the email address will be sent to Stripe and used to send a receipt to the contact.
 
 ## Postcode and Billing Address
 
diff --git a/docs/index.md b/docs/index.md
index 000b5e57518bdf2b157a13d071fa10df7aaca849..ee0728df05236dc19199b9f56fb46823b8aa9e96 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -1,7 +1,7 @@
 # Stripe Payment Processor for CiviCRM.
 Integrates the Stripe payment processor (for Credit/Debit cards) into CiviCRM so you can use it to accept Credit / Debit card payments on your site.
 
-[![Stripe Logo](/images/stripe.png)](https://stripe.com/)
+[![Stripe Logo](images/stripe.png)](https://stripe.com/)
 
 View/Download this extension in the [Extension Directory](https://civicrm.org/extensions/stripe-payment-processor).
 
@@ -33,4 +33,4 @@ Under *Administer->CiviContribute->Stripe Settings* you can find a setting:
 > This can be switched on to output debug info to the browser console and can be used to debug problems with submitting your payments.
 
 ## Support and Maintenance
-This extension is supported and maintained by [![MJW Consulting](/images/mjwconsulting.jpg)](https://www.mjwconsult.co.uk) with the help and support of the CiviCRM community.
+This extension is supported and maintained by [![MJW Consulting](images/mjwconsulting.jpg)](https://www.mjwconsult.co.uk) with the help and support of the CiviCRM community.
diff --git a/docs/install.md b/docs/install.md
index 23562877de22b12979efacc85f1dd34db3f9101a..e8ed1d0fd53af753e0307ca4a737fb14d18ed698 100644
--- a/docs/install.md
+++ b/docs/install.md
@@ -22,7 +22,7 @@ Otherwise, download and install as you would for any other CiviCRM extension.
 More info on how to change: [Stripe: Upgrading your API version](https://stripe.com/docs/upgrades#how-can-i-upgrade-my-api).
 
 Go to **Stripe Dashboard > Developers** to view and upgrade your API version:
-![Stripe Dashboard API Version](/images/stripedashboard_apiversion.png)
+![Stripe Dashboard API Version](images/stripedashboard_apiversion.png)
 
 The Webhook API versions will be configured / updated automatically by this Stripe extension but if you didn't create them using the automated method you may need to delete them and allow the extension to re-create them.
 
@@ -47,6 +47,6 @@ Application Fees: *Write*
 SKUs: *Write*
 **Webhook resources**
 Webhook Endpoints: *Write* (required for the webhook system check/auto-create webhooks)
-![Example Stripe API Permissions](/images/example_api_perms.png)
+![Example Stripe API Permissions](images/example_api_perms.png)
 
 
diff --git a/docs/recur.md b/docs/recur.md
index d67347756ae79ce4b3537d43e56b419029ae8bcb..988f21cf4aa2f92cdd76dd0bc58d6cf4e2e47d2e 100644
--- a/docs/recur.md
+++ b/docs/recur.md
@@ -7,7 +7,7 @@ The CiviCRM Recurring Contribution `trxn_id` = Stripe `subscription ID`.
 When you create a recurring contribution in CiviCRM using the Stripe payment processor it is linked via the trxn_id to a Stripe subscription.
 
 !!! tip "If you are using recurring contributions make sure you have webhooks configured correctly"
-    See [Webhooks](/webhook)
+    See [Webhooks](webhook)
 
 ## Cancelling Recurring Contributions
 You can cancel a recurring contribution from the Stripe Dashboard or from within CiviCRM.
@@ -19,14 +19,14 @@ You can cancel a recurring contribution from the Stripe Dashboard or from within
 1. Click Cancel on the subscription you want to cancel.
 1. Stripe.com will cancel the subscription, send a webhook to your site and the recurring contribution will be marked as "Cancelled" in CiviCRM.
 
-![Cancel Subscription in Stripe](/images/stripedashboard_cancelsubscription.png)
+![Cancel Subscription in Stripe](images/stripedashboard_cancelsubscription.png)
 
 #### In CiviCRM
 1. Click the "Cancel" link next to the recurring contribution.
 1. Select the option to *Send cancellation request to Stripe?* and click Cancel.
 1. Stripe.com will cancel the subscription, send a webhook to your site and the recurring contribution will be marked as "Cancelled" in CiviCRM.
 
-![Cancel Subscription in CiviCRM](/images/backend_cancelrecur.png)
+![Cancel Subscription in CiviCRM](images/backend_cancelrecur.png)
 
 ## Recurring statuses
 
diff --git a/docs/setup.md b/docs/setup.md
index ec1713a8f8e3b51b93d4f3c8b917ae89ebc06822..1c24ee5f41a0975925f68e2c2893b4eeb9d6323a 100644
--- a/docs/setup.md
+++ b/docs/setup.md
@@ -1,5 +1,5 @@
 # Setup and configuration
-Please make sure you have read and followed the instructions under [Install](/install) first.
+Please make sure you have read and followed the instructions under [Install](install) first.
 
 ## Receipts