I am running into a strange error with email link verification on Firebase. When users create an account, I send them the following email and wait for them to verify before continuing normal application flow:
Hello %DISPLAY_NAME%,
Follow this link to verify your email address.
https://project-projectname.firebaseapp.com/__/auth/action?mode=<action>&oobCode=<code>
If you didn’t ask to verify this address, you can ignore this email.
Thanks,
Your ProjectName team
(modified slightly to take out the project name)
This email successfully sends, but when a user clicks on the link in the email they get something to the effect of:
Which is weird because the link is the default HTTPS link that Firebase gave me to verify email addresses with.
No user can pass beyond this point, and I have tried multiple browsers, multiple devices, multiple email addresses and nobody can verify their email. I have searched everywhere and cannot find anyone with the same issue, so it's very possible I am overlooking something very obvious.
I should note that they used to be able to verify their email successfully - about a week ago it stopped working.
Any help would be appreciated! Thanks!
Update: I have found a "solution" to this issue!
For reasons I cannot understand, the email verification links will not work on my home WiFi, but if I try the same links using mobile data it works the way it should.
If you are having this error, try using a different form of internet connection and it will probably work!
However, I do not understand why this is the case because my home WiFi has no special Firewalls up or anything out of the ordinary. If someone could explain why this might be happening I would love to know. I will contact Firebase so they at least know that this is happening to some users.
Thanks for the help #Frank van Puffelen
Related
I know that we can't change the email verification template or the SMS verification template.
I have already set Public-Facing Name which is working till the date. But today I got OTP with another text instead of that name.
123345 is your verification code. egad5adfe/g
What is that last word egad5adfe/g and why it is coming instead of Public-Facing Name?
I haven't change anything in the last couple of days. Why it happened don't know. Can anyone please help?
Please clarify that you're facing this issue on production ?
Once you deploy your application it'll reflect the actual name.
I made a mobile app and used Firebase for backend and authentication. When I use firebase's built in email verification, the email always goes to the junk folder / spam.
Does anyone know how to fix this?
That's weird. Firebase made restrictions to avoid this problem. Check here
Spam filters normally look for these things:
Subject Line: looking for common words and phrases associated with spam.
Content: looking for suspicious links, low text to image ratios, and other spammy hallmarks.
Metadata: looking at the To/From/CC fields, the sender’s domain, and embedded code.
IP address: looking for IPs that have been flagged frequently as spam by both filters and recipients in the past.
More Info
Ill suggest using your own domain to send emails. You can check this article on how to do this. You will also get the extra benefit of looking more professional.
Hope it helps :)
Have a look at the headers of the received email message. Typically, Antispam tools use headers to add the detail of the scoring elements that lead to the message being flagged as spam. This will give you insights on why this happens since reasons can be multiple and cumulative (Title, content, DNS, DKIM, etc.)
I had the same exact problem,
The problem is that your sender name is noreply#project.firebaseapp.com
and that made all my emails going to spam.
What I did was to visit my console
https://console.firebase.google.com/project/project_name/authentication/emails
which is the template tab of the Authentication page.
Click on the pencil icon and click on the Customize Domain
enter image description here
Add and verify your domain.
That will solve the problem
I fixed this issue by only changing the project name.
Go to your firebase project > Project Settings > Main page.
There you'll see some public settings, change the name of your project, the default will show something like "project-(yourProjectId)", put for example "Project Name".
I have a wordpress website which uses Contact Form 7. It's a simple setup, just name, number email and send.
On hitting Submit, the form will successfully send an email to my personal gmail address.
However, if the recipient is hosting their email on an exchange server, these emails do not come through.
I have seen this happen on a few different websites that I have hosted on my server, and each time emails do not come through to an exchange-based inbox.
Not completely versed in how various email types work so I've exhausted my own limited research into this. Hopefully somebody on here can help point me in the right direction!
Please let me know if any additional information is needed.
Thanks
Very difficult to answer based on your info. Most likely the send mail is marked as spam. Should not be exclusively an exchange problem. You should invest the structure of your email. What is exactly in the header information and why is it marked as spam. You could try mailing to https://www.mail-tester.com/ to get a overall indication. Copy the complete header information and run an inspect. For instance by Google: https://toolbox.googleapps.com/apps/messageheader/
I have seen many questions regarding emails not being sent but so far they haven't been helpful to me. I've been trying to test purchases on my site. After checkout, the order appears in the sales log as "order received". From what I understand when I change it from "order received" to "accepted payment", an email should be sent. Thing is, an email is never sent to the administrator or the customer. I have the store admin email filled out. The digital product is supposed to be sent in the email but the email is not being sent. Any help would be much appreciated.
Thanks
The issue I check first dealing with WP emails is to see if the emails wordpress is sending out are being caught in spam, or just being blocked by your email provider, since the WP_Mail() function isn't verified by an email server.
Try WP-SMTP and do some testing.
I just had this issue and, for me, the solution was going into cPanel and changing my MX records. They were set up years ago to point to a different server and I found out that I could send but not receive emails. I deleted them and created a new mail.domain.com MX record. That was my issue, may or may not be yours.
I have an asp.net autoresponder that sends emails to millions of subscribers. I want to track if a person mark my emails as spam. is there any way to do this?
Thanks in advance.
No, there isn't. After your mail has been sent to your receiver's SMTP server, there's no way to track it down anymore.
I know what you're thinking: how can some mail-clients track down wether an email has been read or not (e.g. in Outlook). They can do this by adding a little img-tag to their mails (html). When a user opens the mail, it'll open the path specified in the img's src-attribute. Since that's a script (like PHP or something), it can automatically sets a flag to 'seen' when a mail has been opened.
Of course, there are some other ways to track this down, but I think this is the most popular one.
However, this can't be done to check whether a mail has been rejected, deleted or moved to the spam-folder.
I would recommend http://www.mxtoolbox.com/ as an example of sites to use for checking if your server/sending IP is blacklisted.
You can also sign up for feedback loop services with major or relevant email providers for your list(s) to be informed when messages are reported as spam. Feedback loops are probably the best mechanism for the information you are trying to gather.
Example of a feedback loop and how to subscribe to it:
http://postmaster.aol.com/Postmaster.FeedbackLoop.php
I can't post more than 2 links but if you Google "feedback loop" and the name of the email provider you are likely to find what you need to sign up for their alerts.
Hope that helps.