Subscribe to our newsletter →

Phone Systems / Published 2026-09-01

SOP / By Rob Lowry, Founder of LaunchEngine

A2P 10DLC compliance for a PM website, in an afternoon

Before US carriers let a property management company send a single text, a reviewer checks the company's website for three specific things. This is the exact process we run on every client site we onboard to SMS, with the copy blocks included. Swap in the business name and phone number and go.

01 / Context

What A2P 10DLC is, in three sentences

US carriers require every business that sends application-to-person texts over regular 10-digit numbers to register its brand and its messaging campaign. Your phone platform submits the registration on the client's behalf, but the registration reviewer verifies the client's public website before approving anything.

Until that approval lands, outbound SMS is filtered or blocked. Which produces the classic symptom: the new phone system takes calls beautifully and every text disappears into a void.

The website requirements are the same for every property management company, so we turned them into a repeatable process. Everything below is drop-in ready. Two things get swapped per client: the business name and the support phone number.

02 / The requirements

The three things the reviewer looks for

1

An SMS privacy section inside the existing Privacy Policy, including the promise that opt-in data is not shared for marketing.

2

A standalone SMS Terms & Conditions page at /sms-terms, linked from every footer on the site.

3

An unchecked, optional consent checkbox with a full disclosure block on every form that collects a phone number.

Miss any one of the three and the registration bounces. The rest of this page is the implementation, in order.

03 / Step one

The privacy policy addition

Insert this as a new section in the client's existing Privacy Policy. Two sentences are checked specifically: the promise that opt-in data is never shared with third parties for marketing, and the message frequency and rates disclosure. Aircall's automated compliance checker scans the live Privacy Policy page for the frequency language and fails the site without it; we learned that one from a real registration. Do not paraphrase either away.

Copy block A / Privacy Policy section
SMS/Text Messaging Privacy

{{Business Name}} may use your mobile phone number to communicate with you regarding rental inquiries, property showings, applications, leases, maintenance requests, account or property updates, appointments, and other property management-related matters.

We do not share mobile contact information with third parties or affiliates for marketing or promotional purposes. Information may be shared with service providers or subcontractors as necessary to support our business operations and customer service. Text messaging opt-in data and consent will not be shared with third parties for marketing or promotional purposes.

Message frequency varies based on your interactions with {{Business Name}}. Message and data rates may apply.

You may opt out of text messages at any time by replying STOP.

For full SMS program terms, please review our SMS Terms & Conditions [link to /sms-terms].
Privacy policy page showing an SMS/Text Messaging Privacy section on a property management website
The section live on a client implementation, client branding replaced with placeholders.

04 / Step two

The SMS terms page

A new page at /sms-terms. Six elements must be present: message types, frequency language, STOP, HELP with a real phone number, the carrier liability disclaimer, and a link back to the Privacy Policy. This block has all six.

Copy block B / SMS Terms page body
Effective Date: {{Date}}

By opting in to receive text messages from {{Business Name}}, you agree to receive informational and customer-service text messages related to our property management and rental services. Messages may include rental inquiries, property showing and application information, lease and move-in communications, maintenance updates, account or property information, appointment coordination, and other communications related to our services.

Message frequency varies based on your interactions with us. Message and data rates may apply.

Text STOP to opt out of SMS communications at any time. After opting out, you may receive a confirmation message and will no longer receive SMS messages unless you opt in again.

Text HELP for help or contact {{Business Name}} at {{Phone}}.

Carriers are not liable for any delayed or undelivered messages.

Your privacy is important to us. Please review our Privacy Policy [link to /privacy-policy].

By opting in, you confirm that you are the account holder or have the account holder's permission to receive text messages at the number provided.
Standalone SMS terms and conditions page on a property management website
The /sms-terms page as deployed, placeholders in place of client branding.

05 / Step three

The consent checkbox, on every phone-collecting form

This is the piece reviewers reject most. The rules are non-negotiable:

  • Unchecked by default, never pre-selected
  • Optional: the form must submit normally with the box unchecked
  • The disclosure text sits immediately below the checkbox
  • "Privacy Policy" and "SMS Terms & Conditions" in the disclosure are live links to those two pages
Copy block C / checkbox + disclosure text
[ ] I agree to receive text messages from {{Business Name}}.

By checking this box, you consent to receive customer support and informational text messages from {{Business Name}} at the number provided. Consent is not a condition of purchase. Message and data rates may apply. Message frequency varies. Reply STOP to opt out or HELP for help. See our Privacy Policy [link] and SMS Terms & Conditions [link].
HTML pattern (adapt colors to the client's design system)
<div style="margin-bottom: 16px; padding: 12px 14px; background: #FAF7F2; border: 1px solid #eee; border-radius: 8px;">
  <label style="display: flex; gap: 10px; align-items: flex-start; font-size: 0.85rem; font-weight: 500; cursor: pointer;">
    <input type="checkbox" id="{{formPrefix}}SmsConsent" name="smsConsent" value="yes" style="margin-top: 3px; flex-shrink: 0;">
    <span>I agree to receive text messages from {{Business Name}}.</span>
  </label>
  <p style="margin: 8px 0 0 26px; font-size: 12px; line-height: 1.5; color: #666;">
    By checking this box, you consent to receive customer support and informational
    text messages from {{Business Name}} at the number provided. Consent is not a
    condition of purchase. Message and data rates may apply. Message frequency
    varies. Reply STOP to opt out or HELP for help. See our
    <a href="/privacy-policy">Privacy Policy</a> and
    <a href="/sms-terms">SMS Terms &amp; Conditions</a>.
  </p>
</div>
Contact form with an unchecked SMS consent checkbox and full disclosure block
The pattern on a contact form: unchecked box, disclosure directly beneath, both legal links live.
Waitlist form using the same SMS consent checkbox pattern
The same block drops into every other form type unchanged; here, a rental waitlist form.

06 / The audit trail

Log the consent, not just the checkbox

Displaying the checkbox satisfies the reviewer. Logging when someone checked it is what protects the client later. Thread the consent value through the form handler and stamp it onto whatever record lands in the CRM.

Backend handler (serverless function)
// Read from form / JSON body
const smsConsent = data.smsConsent === true || data.smsConsent === 'yes';

// Build audit line
const smsConsentLine = smsConsent
  ? `SMS opt-in: YES on ${new Date().toISOString()}`
  : `SMS opt-in: NO`;

// Append to whatever text field lands in your CRM (notes/comments/message)
const messageWithConsent = (message || '') + `\n\n[${smsConsentLine}]`;
Frontend submitter addition
body: JSON.stringify({
  name: fd.get('name'),
  email: fd.get('email'),
  phone: fd.get('phone'),
  message: fd.get('message'),
  smsConsent: fd.get('smsConsent') === 'yes'
})

Shortcut worth knowing

Forms that already use Netlify Forms with data-netlify="true" and no custom JavaScript capture the checkbox automatically through its name="smsConsent" attribute. No code changes, the value shows up in the form submissions dashboard. The wiring above is only needed for forms that POST JSON to a custom function.

08 / Before you submit

The pre-submission checklist

Run this before telling anyone to file the A2P registration. A rejection costs weeks; the checklist costs ten minutes.

  1. 01Privacy Policy carries the SMS section. The SMS/Text Messaging Privacy section is live and visible on the Privacy Policy page, including the no-third-party-sharing language for opt-in data AND the message frequency and rates disclosure. Automated checkers scan the live page for the frequency sentence.
  2. 02/sms-terms returns 200 with all six elements. Message types, frequency language, STOP instructions, HELP with a phone number, the carrier liability disclaimer, and a Privacy Policy link.
  3. 03Every footer links to SMS Terms. Sitewide, next to the existing Privacy Policy link. Check blog templates and stripped-down pages separately; they often use a different footer.
  4. 04Every phone-collecting form has the checkbox. Unchecked by default, with the full disclosure block immediately below it and working links to both legal pages.
  5. 05Forms submit with the box unchecked. Tested manually. Consent must be optional; a form that blocks submission without consent fails review and the consent it collects is worthless anyway.
  6. 06The backend logs the opt-in state. Optional for approval but recommended: a timestamped yes/no on every submission is your audit trail.

09 / Rejection fuel

What not to do

  • Do not pre-check the box. Pre-selected consent is invalid consent and a standard rejection reason.
  • Do not make consent required. If the form refuses to submit without the checkbox, the consent is coerced and the registration fails.
  • Do not bundle marketing into the customer-service opt-in. Promotional texting needs its own separately collected consent checkbox. One box for both is a rejection and a liability.
  • Do not trim the disclosure text. STOP, HELP, rate language, frequency language, and both legal links all have to be there. Shortened versions read cleaner and bounce.

Done-for-you install / $499 flat

This page is the DIY version. The done-for-you version exists too. We install monday CRM + Aircall + DocRunner for $499.

One flat fee covers the whole working stack: your monday CRM boards built, the Aircall V2 integration installed and configured with the settings we recommend in these guides, numbers linked, and DocRunner wired in for document workflows. Setup work is completed in one business day; if you are porting existing numbers, carrier timelines apply and phones are typically live within a week.

Book your install slot

The $499 fee covers setup labor only. Aircall seats and usage are billed by Aircall directly; monday.com licenses are not included; DocRunner is $40/month after setup. Engagements are governed by our Terms. LaunchEngine is an Aircall partner and may earn referral commissions.

Related: the full Aircall + monday.com setup guide for the system this unblocks, and the phone scripts guide for what to say once the number is live.

About this SOP

This is the process LaunchEngine runs when onboarding property management clients to SMS through Aircall, shared as-is. It reflects carrier and platform requirements as of September 2026; registration requirements and reviewer behavior change, so verify against your platform's current documentation before filing. The copy blocks are starting points, not legal advice; have counsel review your privacy policy and terms. Screenshots show a real client implementation with all client-identifying content replaced by placeholders. LaunchEngine is an Aircall partner and may earn referral commissions. Spot an error? Email rob@launchengine.com and we'll correct it.

FAQ

Common questions about A2P 10DLC registration for property managers.

A2P 10DLC is the US carriers' registration system for application-to-person texting over standard 10-digit long-code numbers. Every business sending SMS through a platform like Aircall must register its brand and messaging campaign, and the registration reviewer checks the sender's public website before approving. Until registration is approved, messages are filtered or blocked, which is why a new phone system can have working calls and dead SMS.
Three things: an SMS privacy section in your Privacy Policy stating that opt-in data is not shared with third parties for marketing and disclosing message frequency and rates, a public SMS Terms & Conditions page covering message types, frequency, STOP, HELP, and carrier liability, and a compliant opt-in mechanism, typically an unchecked consent checkbox with a full disclosure block on every form that collects a phone number. Aircall's automated checker scans the live Privacy Policy page for the frequency language specifically.
Yes. Pre-checked boxes are not valid consent and are a standard rejection reason. The checkbox must also be optional: the form must submit normally when it is left unchecked, because consent that is a condition of using the form is not consent.
The most common website-side reasons: no SMS language anywhere on the site, a privacy policy that does not address sharing of opt-in data or omits the message frequency and rates disclosure, a missing or unlinked SMS terms page, a pre-checked or mandatory consent checkbox, or disclosure text that omits STOP/HELP and rate language. Fix all three website deliverables described in this guide, then resubmit.
No. Customer-service and informational messaging is one campaign scope; marketing and promotional texting requires its own separately collected consent. Bundling them under one checkbox risks rejection and, worse, sends promotional texts to people who consented to maintenance updates. If a client wants marketing SMS, add a second, independent checkbox.
The website work itself is an afternoon for a typical PM site. After submission, brand and campaign review times vary from days to a few weeks and are outside anyone's control, which is why the website should be compliant before the registration is filed, not after a rejection.

Want SMS live without learning carrier compliance?

We run this exact process on your website, wire the consent logging into your CRM, and hand you a site that passes A2P review the first time.