Uploaded logo is not visible in the client portal but is visible in invoices and budgets

Hello! I have uploaded the logo in different sizes and formats (jpg, jpeg, png…) and it is not displayed in the client portal.

Any advice?

1 Like

Hi,

Do you see any errors in the network tab in the browser console?

Note: if LOCAL_DOWNLOAD is set to true in the .env file the image is embedded in the PDF file, this will work even if the file isn’t reachable over the network.

LOCAL_DOWNLOAD is set to true in the .env file
Here are errors at the browser console

invoices:91

   GET https://ekon.servicioscreativosreml.com/storage/aeDNlgRficoSTB081KDMnduDCp9SoLiE/LjHwKzDW6zfpzjgKNSfgzyYCYySSDJyRYV32JyW4.png 403 (Forbidden)

invoices:444

   GET https://ekon.servicioscreativosreml.com/storage/aeDNlgRficoSTB081KDMnduDCp9SoLiE/LjHwKzDW6zfpzjgKNSfgzyYCYySSDJyRYV32JyW4.png 403 (Forbidden)

Thanks! I believe there are two ways to fix this:

  • Correct way: map the webroot to the /public folder
  • Easy way: add /public to the end of the APP_URL value in the .env file
1 Like

Correct way: I have a symlink on the domain, and the webroot in public_html
Easy way doesn’t work

The webroot should map to the public folder inside the main source folder.

Same happensa in emails
Nueva-presupuesto-0001-de-SERVICIOS-CREATIVOS-REML-emmanuelbarista-gmail-com-Gmail

If you aren’t able to update the webroot I suggest adding /public to the APP_URL value and then re-uploading the logo.

2 Likes

It works!!! Thanks! i didn’t reupload logo

Immensely grateful for the speed and clarity of support

Glad to hear it, thanks for the update!

Oh yeahhhhh!

Adding /public to the APP_URL value worked for getting my logo to show on the client portal. I did need to reupload the logo. Now it also shows in the Company settings/Logo upload area, like I thought it was supposed to.

And I believe adding the LOCAL_DOWNLOAD=true worked for showing my logo in the PDFs/Invoices.

Thank you @hillel and @manuzetace

I have a minor issue related to this!

I have one web URL for my internal usage of InvoiceNinja, located at invquo.techgrips.com.

Then, I have another web URL for my clients to login to the external Client Portal, which is portal.techgrips.com.

Although this is an internal web app for my company, I’ve setup an mTLS reverse proxy on a cloud VPS which receives the portal.techgrips.com DNS route and WireGuards known users (my clients) through my firewall which are received by my InvoiceNinja server’s nginx.

Now all of this works fantastically, my .env file’s APP_URL indeed reflects https://invquo.techgrips.com/public, however my clients still see a broken logo image on their end…

Is there any way to make this work? Or is it absolutely required that your Settings > Client Portal > Domain URL and APP_URL match for the logo to be populated correctly?

I’m not sure if this is supported, you may want to ask in a discussion on GitHub.