Azure Communication Service - Cannot successfully verify SPF - Is there an approved workaround?

JB International 0 Reputation points
2025-04-11T19:46:22.45+00:00

Hello,

I am in the process of adding a client’s email domain to our Azure Communication Services (ACS) instance in order to configure a custom emailFrom address for outbound messaging. As part of this setup, we are required to validate the domain and verify SPF, DKIM, and DKIM2 records.

While domain validation and DKIM/DKIM2 verification have completed successfully, we are encountering issues with the SPF verification step. We have been collaborating with the client’s IT team, who provided the following explanation:

“Microsoft Office 365 is already an enabled sender, so no action is required on the SPF side. One thing that might come up is that they can't verify you've added the record. Microsoft is doing an exact match in your SPF record that should look like this: v=spf1 include:%{i}._ip.%{h}._ehlo.%{d}._spf.vali.email include:spf.protection.outlook.com ~all Instead, they can see only the macro: v=spf1 include:%{i}._ip.%{h}._ehlo.%{d}._spf.vali.email ~all and can't read behind it. This might generate an error, but it can be ignored.”

Unfortunately, ACS does not allow us to proceed without successful SPF verification, so we are unable to "ignore" the issue as suggested. I followed up with the client, and they further clarified:

“The issue isn’t with the SPF itself, but rather that Microsoft’s validation process cannot perform an exact match on the SPF record due to the use of macros. Macros are necessary due to SPF record size limitations. Because the validation tool is unable to resolve the macro, it fails the verification step. You may need to contact Microsoft Azure Support to explore possible workarounds.”

At this point, I am unsure how to proceed. The SPF TXT entry does appear to be correctly configured in DNS on the client side. The issue seems to lie with ACS’s ability to resolve and validate the macro-based SPF record.

Is this a known limitation, and is there a recommended approach or workaround for completing SPF validation in this type of scenario?

Thank you for your assistance.

Best regards,
Matt Reynolds

JB International

Azure Communication Services
Azure Communication Services
An Azure communication platform for deploying applications across devices and platforms.
1,233 questions
{count} votes

2 answers

Sort by: Most helpful
  1. Sampath 3,750 Reputation points Microsoft External Staff Moderator
    2025-04-21T05:39:43.3233333+00:00

    Hello @JB International,

    Thank you for continuing the conversation.

    We understand the importance of your situation and appreciate your efforts in trying to resolve it. At this time, Azure Communication Services does not support overriding SPF verification requirements, and macro-based SPF records are not currently compatible with the verification tool.

    For product-related limitations and feature requests, we highly encourage you to share your feedback directly with the Azure product team via the Azure Communication Services UserVoice.

    All input shared on this platform is actively monitored and reviewed by Microsoft engineering teams, and contributions from users with similar needs can help prioritize future improvements. Please consider submitting your scenario for review and encourage others impacted by the same limitation to vote and comment.

    If you have further technical questions or need help crafting your UserVoice submission, feel free to comment here.

    Kindly mark the answer as “Accept” and click "yes" if the information is helpful. This can benefit other members of the community as well and It assists others in the community facing similar challenges.If you have any further questions, please click Comment

    0 comments No comments

  2. JB International 0 Reputation points
    2025-04-21T17:26:53.4433333+00:00

    For those that come across this issue in the future, we want to write and share that we were able to open a support ticket with Azure engineers (requires the $100/mo standard support plan) to get this resolved. When provided the description we opened this Q&A with, they recognized this as an understandable problem, and were able to override the verification from the back-end.

    We're going to ask if there is a way to get around this without needing to pay $100/mo for what arguably should be standard behavior. We can advocate for that over at Azure Communication Services UserVoice as well. We imagine this will become a supported feature in the future.

    Thanks for the help!

    JB International


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.