Review is carried out by the mobile operator, and requirements can differ between operators and
change over time. Treat this as the baseline your template needs to clear.
Categories
Your template’s category determines when it can be sent and how often. Choosing the wrong one is the most common reason a template is rejected outright.OTP / Authentication
One-time passcodes — typically 4–8 digit alphanumeric codes — used for login, account verification, recovery, or integrity challenges.Transactional
Content tied strictly to a transactional trigger: invoice generation, payment due alerts, transaction confirmations, and account updates.Promotional
Marketing content: product offers, sales, welcome and closing messages, system updates, event invitations, and product recommendations.The promotional limit can be raised to 8 messages per user per month for agents with a
proven low spam rate. It is earned through delivery behaviour over time, not requested — which
makes complaint rate worth watching as a commercial metric, not just a compliance one.
Content rules
Every template is checked against the following. Failing any one of them causes rejection.Category and agent alignment
The agent type and the content category must be identical, and the message content must match the registered agent type. A promotional message from an agent registered as transactional will be rejected even if the content is otherwise fine.Brand visibility
The brand name must appear explicitly in the message body, and must match the registered agent brand name. Having it only in the sender profile is not sufficient.Variable formatting
Custom parameters must use the[custom_param] form.
Static-to-dynamic ratio
At least 70% of the message must be static text. Variables can make up no more than 30%. This is the rule most likely to catch a template that looks reasonable — a short message built mostly from variables fails it even when every individual rule above is satisfied. Write the fixed copy first, then decide what genuinely needs to vary.Links and CTAs
- WhatsApp links are restricted. Redirecting to WhatsApp is permitted only when the target is the brand’s own verified WhatsApp channel.
- Test every CTA link before submitting. A broken or redirecting target is a rejection.
Media and landing pages
All media assets — images, videos, cards — and any target website URL must relate directly to the registered brand. Anything else requires official supporting documentation from the brand.Cross-promotion
Promoting a secondary or third-party brand is prohibited without formal proof of the business relationship. Cross-promotional templates submitted without relationship documents are rejected.Prohibited content
Obscene, inappropriate, or restricted terminology is prohibited — dating services and friendship clubs are explicit examples.Political content
Political awareness campaigns are permitted. Political promotional campaigns are restricted on RCS.Before you submit
1
Confirm the category matches the agent
The agent type, the declared category, and the content must all agree.
2
Put the brand name in the body
Explicitly, and matching the registered brand name.
3
Check the variable layout
[custom_param] form, never two variables adjacent, and at least 70% static text.4
Test every link
Open each CTA and confirm it lands on a brand-owned destination.
5
Check the field limits
Character limits and suggestion counts are enforced separately — see
RCS templates.
For edge cases or anything ambiguous, raise it with your OneXtel account team before submitting
rather than after a rejection — a rejected template can take a full review cycle to resubmit.
Related
- Create RCS templates
- RCS templates API — field constraints and payload structure
- RCS operator error codes

