Account Setup
By Ruut CSM
By Ruut CSM
This is the setup guide for Ruut convert setup
Convert Product Documentation
Convert API Send WhatsApp & SMS messages, manage contacts, and receive delivery events over a simple REST API. All requests are authenticated with a Bearer API key and return JSON. An in-app version of these docs is available at /docs in the dashboard. - Base URL: https://<your-domain>/api/v1 - Auth: Authorization: Bearer <api_key> - Content type: application/json Authentication Create a key under Account → API keys (/api_keys). The full key (rk_live_…) is shown once at creation — store it securely; only a hashed digest is kept server-side. Authorization: Bearer rk_live_xxxxxxxxxxxxxxxxxxxxxxxx Requests without a valid, active key return 401 Unauthorized. Send a message POST /api/v1/messages — send a single transactional message (OTP, alert, notification). | Field | Type | Description | |--------------|--------|-------------| | to | string | Recipient phone, international format e.g. +2348012345678. Required. | | message | string | Text to send. Required. | | channel | string | whatsapp, sms, or smart (default smart). | | first_name | string | Optional; stored on the contact, usable as {{first_name}}. | | last_name | string | Optional. | | session | string | Optional WhatsApp session id (defaults to your connected number). | WhatsApp only Delivers strictly over WhatsApp. Errors if no number is connected or the recipient isn't reachable on WhatsApp. curl -X POST https://<your-domain>/api/v1/messages \ -H "Authorization: Bearer rk_live_xxx" \ -H "Content-Type: application/json" \ -d '{ "to": "+2348012345678", "message": "Your code is 123456", "channel": "whatsapp" }' SMS only Always sends over SMS via the configured provider, using your approved Sender ID. curl -X POST https://<your-domain>/api/v1/messages \ -H "Authorization: Bearer rk_live_xxx" \ -H "Content-Type: application/json" \ -d '{ "to": "+2348012345678", "message": "Your code is 123456", "channel": "sms" }' Smart routing (default) Sends over WhatsApp when a number is connected and the recipient is on WhatsApp; otherwise automatically falls back to SMS. curl -X POST https://<your-domain>/api/v1/messages \ -H "Authorization: Bearer rk_live_xxx" \ -H "Content-Type: application/json" \ -d '{ "to": "+2348012345678", "message": "Hi {{first_name}}, your order shipped!", "channel": "smart", "first_name": "Ada" }' Response — 201 Created { "success": true, "channel": "whatsapp", "status": "sent", "message_id": "wamid.XXXX", "cost": 5.0, "to": "+2348012345678" } Contacts Add a single contact POST /api/v1/contacts curl -X POST https://<your-domain>/api/v1/contacts \ -H "Authorization: Bearer rk_live_xxx" \ -H "Content-Type: application/json" \ -d '{ "phone_number": "+2348012345678", "first_name": "Ada", "last_name": "Obi", "email": "[[email protected]](mailto:[email protected])" }' - Update: PATCH /api/v1/contacts/:id - Delete: DELETE /api/v1/contacts/:id Bulk upload For large lists, import a CSV or Excel (.xlsx) file from **Contacts → a list → Add contacts**. Map your columns to fields (phone, first/last name, email, custom fields); Convert imports them in the background and checks each number against WhatsApp. To bulk-load programmatically, loop the single-contact endpoint: const contacts = [ { phone_number: "+2348010000001", first_name: "Ada" }, { phone_number: "+2348010000002", first_name: "Uche" } ]; for (const c of contacts) { await fetch("https://<your-domain>/api/v1/contacts", { method: "POST", headers: { "Authorization": "Bearer rk_live_xxx", "Content-Type": "application/json" }, body: JSON.stringify(c) }); } Custom fields Attach your own attributes via custom_fields. They become merge tags (e.g. {{order_id}}) in messages. { "phone_number": "+2348012345678", "first_name": "Ada", "custom_fields": { "order_id": "ORD-1042", "tier": "gold" } } Campaigns - GET /api/v1/campaigns — list recent campaigns - GET /api/v1/campaigns/:id — one campaign with its contact list { "id": 12, "name": "October promo", "status": "sent", "routing_strategy": "smart_fallback", "sent_count": 940, "failed_count": 6, "actual_cost": 4700.0, "contact_list": { "id": 3, "name": "Customers" } } Routing strategies | Strategy | Behaviour | |------------------|-----------| | whatsapp_only | WhatsApp only; contacts not on WhatsApp are skipped. | | sms_only | SMS to everyone via your Sender ID. | | whatsapp_first | Try WhatsApp; fall back to SMS for the rest. | | smart_fallback | WhatsApp for registered contacts, SMS for everyone else (recommended). | Webhooks Add an endpoint under Webhooks (/webhook_endpoints) and choose which events to receive. Convert sends a POST with a JSON body for each event. Leave all events unchecked to receive every event. Events | Event | Fires when… | |----------------------|-------------| | message.sent | A single message was accepted by the provider. | | message.delivered | A message was delivered to the recipient's device. | | message.failed | A message could not be delivered. | | campaign.completed | A campaign finished sending to its whole list. | | contact.created | A new contact was added (UI, import, or API). | Payload { "event": "message.delivered", "created_at": "2026-06-29T12:00:00Z", "data": { "message_id": 8841, "to": "+2348012345678", "channel": "whatsapp", "status": "delivered", "provider_message_id": "wamid.XXXX", "cost": 5.0 } } Verifying signatures Each request carries X-Convert-Signature: sha256=<hmac> — an HMAC-SHA256 of the raw request body using the endpoint's signing secret (shown on the endpoint page). expected = "sha256=" + OpenSSL::HMAC.hexdigest( "SHA256", ENV["CONVERT_WEBHOOK_SECRET"], request.raw_post ) verified = ActiveSupport::SecurityUtils.secure_compare( expected, request.headers["X-Convert-Signature"].to_s ) Respond with any 2xx to acknowledge. Non-2xx responses (or timeouts) are retried with backoff (up to 5 attempts). Errors Failed requests return a JSON body with error and a stable error_code: { "success": false, "error": "Insufficient wallet balance to send this message.", "error_code": "insufficient_balance" } | HTTP | error_code | Meaning | |------|-----------------------------|---------| | 401 | unauthorized | Missing, invalid, or revoked API key. | | 402 | insufficient_balance | Wallet balance too low to send. | | 422 | invalid_channel | channel must be whatsapp, sms, or smart. | | 422 | invalid_phone | The to number isn't a valid phone number. | | 422 | missing_message | No message body provided. | | 422 | whatsapp_not_connected | WhatsApp requested but no number is connected. | | 422 | recipient_not_on_whatsapp | Recipient not reachable on WhatsApp (use sms/smart). | | 502 | send_failed / sms_failed| The provider rejected or failed to send. |
How to manually connect WhatsApp Cloud API to Convert
Convert lets you connect your existing WhatsApp Business Platform account directly through Meta's Cloud API. This guide walks you through setting up the connection manually, including where to find every ID and credential required by Convert. What you'll need Before you begin, make sure you have: - A Meta Business Portfolio - A Meta Developer App - A WhatsApp Business Account (WABA) - A phone number you want to use for WhatsApp - Administrator or full-control access to the Meta Business Portfolio During the setup, you'll collect these five values: 1. Meta Business Portfolio ID 2. Meta App ID 3. WhatsApp Business Account ID (WABA ID) 4. Phone Number ID 5. Access Token These IDs may look similar, but they represent different Meta assets. Make sure you copy the correct value into each field in Convert. Step 1: Set up your Meta Business Portfolio Open Meta Business Suite: https://business.facebook.com/ Sign in using the Facebook account that manages your business. If you don't already have a Business Portfolio, you can create one here: https://business.facebook.com/reg/ Use your real business information, including your: - Business name - Website - Business email - Address - Phone number Find your Meta Business ID Open Meta Business Settings: https://business.facebook.com/settings/ Select the correct Business Portfolio. Go to: Business Settings → Business Info Look for Business Portfolio ID. Meta may sometimes display this as Business Manager ID or Business ID. Copy this number. You'll eventually paste it into: Convert → Meta Business ID Step 2: Create your Meta Developer App Go to Meta for Developers: https://developers.facebook.com/apps/ Click Create App. When Meta asks what you want your app to do, select the appropriate business use case and connect the app to the same Meta Business Portfolio you selected earlier. Complete the app creation process. Add WhatsApp to your app From your Meta App Dashboard, locate WhatsApp and click Set up. Then open: WhatsApp → API Setup You should now have WhatsApp Cloud API available inside the app. Find your Meta App ID Inside your app, go to: App Settings → Basic You can also usually see the App ID near the top of the App Dashboard. Copy the App ID. You'll eventually paste this into: Convert → Meta App ID Do not copy your App Secret. Convert needs the App ID, not the App Secret. Step 3: Create or select your WhatsApp Business Account Inside your Meta App, open: WhatsApp → API Setup Meta will ask you to select an existing WhatsApp Business Account or create one. You can also manage your WhatsApp Business Accounts from Meta Business Settings: https://business.facebook.com/settings/whatsapp-business-accounts/ Your WhatsApp Business Account, commonly called a WABA, contains your: - WhatsApp phone numbers - Message templates - Account quality information - WhatsApp business settings - Billing configuration Find your WhatsApp Business Account ID From: WhatsApp → API Setup look for WhatsApp Business Account ID. You can also find it from: Business Settings → Accounts → WhatsApp Accounts Copy the ID. You'll paste this into: Convert → WhatsApp Business Account ID Your WhatsApp Business Account ID is different from your Meta Business Portfolio ID. Step 4: Add your WhatsApp phone number Open WhatsApp Manager: https://business.facebook.com/wa/manage/home/ Select the correct WhatsApp Business Account. Go to: Phone numbers and choose Add phone number. Enter your business information and the phone number you want to use. Meta will ask you to verify the number using either: - SMS - Voice call Enter the verification code provided by Meta. Important The number must be eligible for use with the WhatsApp Business Platform. If the number is already connected to another WhatsApp Business Platform provider, don't simply delete it. You may need to use Meta's number migration or coexistence process. Step 5: Find your Phone Number ID After successfully adding the number, return to your Meta Developer App: https://developers.facebook.com/apps/ Select your app and go to: WhatsApp → API Setup You'll see information similar to: Phone number: +234 XXX XXX XXXX Phone Number ID: 123456789012345 WhatsApp Business Account ID: 987654321098765 Copy the Phone Number ID. You'll paste this into: Convert → Phone Number ID Do not enter your actual telephone number in this field. Convert requires the Meta-generated Phone Number ID. Step 6: Test with Meta's temporary access token While you're on: WhatsApp → API Setup Meta may provide a Temporary Access Token. You can use this token to confirm that your App, WhatsApp Business Account and Phone Number are configured correctly. However, do not use the temporary token for your production Convert integration. Temporary access tokens expire. For your production connection, create a System User access token instead. Step 7: Create a permanent System User access token Open Meta Business Settings: https://business.facebook.com/settings/ Go to: Users → System Users You can also open the System Users section directly: https://business.facebook.com/settings/system-users/ Click Add and create a System User for the Convert integration. We recommend giving the integration an identifiable name such as: Convert WhatsApp Integration Select the appropriate administrator access for the integration. Assign your WhatsApp assets Select the System User and choose Assign Assets. Assign: - Your Meta App - Your WhatsApp Business Account Make sure the System User has the permissions required to manage and send WhatsApp messages. Generate the access token With the System User selected, click: Generate New Token Select the Meta App you created earlier. Enable these permissions: whatsapp_business_messaging whatsapp_business_management Generate the token and copy it immediately. Treat this token like a password. Never send it through WhatsApp, email, Slack, support tickets or public screenshots. Store it securely in a password manager or secrets vault. Step 8: Connect WhatsApp to Convert Now that you've collected everything from Meta, open Convert: https://convert.ruut.chat/ Sign in to the correct workspace. Go to: Settings → Channels → WhatsApp Select: Meta Cloud WhatsApp and choose: Manual Setup Convert will ask for: | Convert field | Value from Meta | | ---------------------------- | ------------------------ | | Access Token | System User Access Token | | Phone Number ID | Meta Phone Number ID | | WhatsApp Business Account ID | WABA ID | | Meta Business ID | Business Portfolio ID | | Meta App ID | Developer App ID | Carefully paste each value into the corresponding field. For IDs, enter the numbers without additional spaces. For your Access Token, make sure there are no spaces before or after the token. Click Save. Step 9: Create your WhatsApp message templates WhatsApp normally requires an approved message template when your business wants to initiate a conversation outside the customer-service window. Open WhatsApp Manager: https://business.facebook.com/wa/manage/home/ Select your WhatsApp Business Account and go to: Message Templates Create your template and choose the appropriate: - Template name - Category - Language - Message body - Variables - Header - Buttons Submit the template to Meta for approval. Once Meta approves it, return to Convert. Go to: Templates → WhatsApp and select: Sync from Meta Convert will retrieve the approved templates belonging to the WhatsApp Business Account you connected. Step 10: Test your WhatsApp connection Before sending a campaign, test the connection. In Convert, go to: Settings → Channels → WhatsApp Select your connected Meta Cloud WhatsApp channel. Choose: Test Meta Delivery Select an approved WhatsApp template and enter a test recipient using the full international format. For example: 2348012345678 rather than: 08012345678 Send the message. Confirm that: - Convert accepts the message - The WhatsApp message arrives on the recipient's phone - The delivery status updates inside Convert - Replies from the recipient appear correctly - Template variables work correctly We strongly recommend completing these tests before sending a campaign to your full contact list. Troubleshooting I can't see my WhatsApp Business Account Open: https://business.facebook.com/settings/whatsapp-business-accounts/ Check that you're viewing the correct Business Portfolio using Meta's business selector. Also confirm that your Facebook account has sufficient access to the WhatsApp Business Account. I can't generate a System User token Open: https://business.facebook.com/settings/system-users/ Confirm that: - You're in the correct Business Portfolio - You have full control of the Business Portfolio - Your Meta App has been assigned to the System User - Your WhatsApp Business Account has been assigned to the System User My token works in Meta but doesn't work in Convert Check that the token belongs to the same setup as the IDs entered in Convert. Specifically verify your: Meta App ID → WABA ID → Phone Number ID → Access Token They should all belong to the same Meta Business setup. Your System User should also have: whatsapp_business_messaging and whatsapp_business_management permissions. My templates aren't appearing in Convert First open WhatsApp Manager: https://business.facebook.com/wa/manage/home/ Confirm that the template: - Exists in the correct WhatsApp Business Account - Has been approved by Meta - Uses the expected language - Is not still under review or rejected Then return to Convert and use Sync from Meta again. Before you go live Before using your WhatsApp connection for real customers, confirm that: - Your Meta Business Portfolio belongs to your company - Your Meta Developer App belongs to the correct portfolio - Your WhatsApp Business Account is connected - Your production phone number shows as connected - Your System User has access to the App and WABA - You're using a System User token instead of a temporary token - whatsapp_business_messaging permission is enabled - whatsapp_business_management permission is enabled - Your approved templates have synced to Convert - Test messages are delivered successfully - Incoming replies are reaching Convert - Delivery statuses are updating correctly Once these checks pass, your Meta WhatsApp Cloud API connection is ready to use with Convert.
How to Add and Verify an Email Domain in Convert
Connecting your domain allows you to send branded emails from an address such as [email protected] instead of using a generic sending address. Convert only adds the DNS records required to send email. Connecting a domain will not change your website or existing email inbox. What you need before starting Make sure you have: - A domain you own, such as yourcompany.com - Access to the account where the domain’s DNS records are managed - A working email address that can receive confirmation emails - Permission to manage email settings in your Convert workspace Your DNS may be managed by Cloudflare, Vercel, GoDaddy, Namecheap, Hostinger, or another domain provider. Step 1: Open the Email Domains page 1. Sign in to your Convert account. 2. Open Settings. 3. Select Channels. 4. Find the Email section. 5. Select Set up email or Manage email. 6. Select Add domain. Step 2: Enter your domain Enter the root version of your domain. For example: - Correct: yourcompany.com - Incorrect: https://yourcompany.com - Incorrect: www.yourcompany.com/contact - Incorrect: [email protected] Select Add domain. Convert will prepare the DNS records needed to authenticate your domain. Step 3: Choose how to update your DNS Convert provides three setup methods: Option A: Cloudflare automatic setup Use this option if Cloudflare manages your domain’s DNS. 1. Select Cloudflare. 2. Create a limited Cloudflare API token that can read and edit DNS records for the domain. 3. Paste the token into Convert. 4. Select Connect Cloudflare. 5. Review the records Convert found. 6. Select Add missing records. Convert will only add the required missing records. It will not intentionally replace your website or mailbox records. Option B: Vercel automatic setup Use this option if Vercel manages your domain’s DNS. 1. Select Vercel. 2. Create an access token in Vercel. 3. Paste the token into Convert. 4. If the domain belongs to a Vercel team, enter the Team ID. 5. Select Connect Vercel. 6. Review the records Convert found. 7. Select Add missing records. If you do not enter the Team ID for a team-owned domain, Convert may be unable to find it. Option C: Manual DNS setup Use this option for GoDaddy, Namecheap, Hostinger, AWS Route 53, or any provider not connected directly to Convert. 1. Select Manual DNS. 2. Keep the Convert page open. 3. Open your domain provider in another browser tab. 4. Find the provider’s DNS, DNS Management, Zone Editor, or Manage Records page. 5. Copy every DNS record displayed by Convert into your provider. 6. Save each record. For every record, copy the following exactly: - Record type - Name or host - Value or destination - Priority, when provided Do not add quotation marks unless your provider adds them automatically. Step 4: Add the authentication records Convert may display several records. These commonly include: DKIM records DKIM records prove that Convert is authorised to send email using your domain. They are usually CNAME records. Add every DKIM record displayed by Convert. Do not delete DKIM records used by Google Workspace, Microsoft 365, Mailchimp, Brevo, or another existing email service. Different services can normally have separate DKIM selectors. Custom MAIL FROM records These records allow Convert to manage bounces and sending authentication properly. They normally include: - An MX record on a Convert-specific subdomain - An SPF TXT record on the same subdomain These records must be added to the exact host shown in Convert. Do not replace your root-domain MX records. Your root MX records control where normal mailbox email is delivered. DMARC record DMARC tells receiving email services how to handle messages that fail authentication. If your domain already has a DMARC record, preserve it unless a qualified administrator has approved a change. A domain should not have multiple DMARC records at the same hostname. Step 5: Check the DNS values carefully Before requesting verification, confirm that: - Every record type is correct. - Every host or name matches Convert. - Every value matches Convert. - MX priorities are correct. - CNAME records are not accidentally entered as TXT records. - Your provider has not duplicated the domain name. Some providers automatically add the root domain to a record name. For example, entering selector._domainkey may automatically become selector._domainkey.yourcompany.com. If you enter the full domain and the provider adds it again, the resulting record may be incorrect. Step 6: Verify the domain Return to Convert and select Check verification. Convert will check each required DNS record. You may see statuses such as: - Not added: Convert cannot find the record. - Checking: The record may still be propagating. - Verified: Convert found the correct record. - Action required: A record is missing, incorrect, or conflicting. - Ready to send: The domain is fully configured. DNS changes are not always immediate. Some providers publish changes within minutes, while others can take several hours. If verification is still pending: 1. Wait at least 15–30 minutes. 2. Check that the records were saved. 3. Compare each DNS value with Convert again. 4. Select Check verification once more. Do not repeatedly delete and recreate correct records while DNS changes are still propagating. Step 7: Add a sender After the domain is verified: 1. Open the verified domain in Convert. 2. Find Sender and Reply Settings. 3. Enter the From name customers should see. Example: Your Company 4. Enter the From address. Example: [email protected] 5. Enter the Reply-to mailbox. Example: [email protected] 6. Select Add sender. The From address identifies the sender. The Reply-to mailbox is where customer replies will be delivered. Convert does not need access to your mailbox and does not store replies. Step 8: Confirm the Reply-to address Convert will send a confirmation message to the Reply-to mailbox. 1. Open the mailbox. 2. Find the confirmation email. 3. Select the confirmation link. 4. Return to Convert. 5. Confirm that the sender displays Confirmed. If the email does not arrive: - Check the spam or junk folder. - Confirm that the address was entered correctly. - Ask your email administrator whether the message was blocked. - Select Send again in Convert. Final checklist Before sending a campaign, confirm that: - The domain displays Ready to send. - All DNS records are verified. - The sender name and From address are correct. - The Reply-to mailbox is confirmed. - Replies reach the intended inbox. - Existing website and mailbox records remain in place. - Previous unsubscribe and blocked-contact lists have been imported if you are moving from another email platform. Common problems Convert cannot find the domain Confirm that you entered the root domain without https://, www, an email address, or a page path. A DNS record remains “Not added” Check the type, name, value, and priority. Your provider may also have added the root domain to the hostname automatically. Email stopped arriving in the company mailbox Check whether the root MX records were changed. Convert does not require you to replace the MX records used by Google Workspace, Microsoft 365, or your existing mailbox provider. The domain is verified but the sender is not active The Reply-to mailbox may still need confirmation. Open the mailbox or use Send again in Convert.
How to Set Up Convert WhatsApp
Convert WhatsApp lets you connect an existing WhatsApp account by scanning a QR code. You do not need to create a Meta developer app or manually enter Meta credentials for this setup. What you need before starting Make sure you have: - An active WhatsApp or WhatsApp Business account - The phone containing that WhatsApp account - Internet access on both the phone and computer - Permission to manage channels in your Convert workspace - Access to the phone’s Linked devices settings Keep your phone and the Convert page open throughout the connection process. Step 1: Open the WhatsApp channel 1. Sign in to Convert. 2. Open Settings. 3. Select Channels. 4. Find the Convert WhatsApp card. 5. Select Connect WhatsApp. Convert will prepare a secure QR code. Step 2: Open Linked Devices on your phone On iPhone 1. Open WhatsApp. 2. Select Settings. 3. Select Linked Devices. 4. Select Link a Device. On Android 1. Open WhatsApp. 2. Select the three-dot menu. 3. Select Linked Devices. 4. Select Link a Device. Your phone may ask you to confirm your identity using a PIN, fingerprint, or Face ID. Step 3: Scan the QR code 1. Point your phone’s camera at the QR code displayed in Convert. 2. Keep the full QR code inside the scanning area. 3. Wait while WhatsApp links the device. 4. Keep the Convert page open until the connection is confirmed. Each QR code is short-lived. If it expires, request a new code and scan it again. Alternative: connect with a pairing code If you cannot scan the QR code: 1. Select Use pairing code in Convert. 2. Enter the requested phone number in international format. 3. Request the pairing code. 4. Open WhatsApp’s Linked Devices section. 5. Choose the option to link using a phone number or code. 6. Enter the code displayed by Convert. 7. Wait for the connection to complete. Do not share the pairing code with anyone. Step 4: Confirm the connection Once connected, Convert will display the WhatsApp account and connection status. Confirm that: - The account status says Connected. - The correct phone number is shown. - The connection service is reachable. - The connection time or session information appears. If you connected the wrong WhatsApp account, disconnect it before connecting another number. Step 5: Send an inbound test message Before creating a campaign: 1. Use another phone to send a WhatsApp message to the connected number. 2. Keep the WhatsApp management page open in Convert. 3. Find the Webhook Test section. 4. Wait for the test message to appear. If the message appears, Convert is receiving inbound WhatsApp events correctly. Step 6: Add opted-in contacts Only message customers who have agreed to receive WhatsApp communications from your business. When adding or importing contacts: - Use the full international country code. - Remove unnecessary spaces or punctuation. - Record how and when each customer opted in. - Honour opt-out requests immediately. - Do not upload purchased or scraped phone-number lists. For a Nigerian number, use a format such as +2348012345678, not 08012345678. Step 7: Create a test campaign 1. Open Campaigns. 2. Create a new campaign. 3. Select WhatsApp as the channel. 4. Choose a small test contact list. 5. Write the message. 6. Review the recipient count and message. 7. Send or schedule the campaign. 8. Confirm that the test recipients receive it. Start with a small internal audience before sending to customers. Step 8: Keep the connection active To reduce disconnections: - Keep WhatsApp active on the main phone. - Keep the phone connected to the internet regularly. - Do not remove Convert from WhatsApp’s Linked Devices list. - Avoid repeatedly connecting and disconnecting the same account. - Review the connection status before important campaigns. - Reconnect promptly if WhatsApp logs the session out. How to reconnect WhatsApp If the connection becomes unavailable: 1. Open Settings. 2. Select Channels. 3. Find Convert WhatsApp. 4. Select Reconnect. 5. Wait for Convert to restore the existing session. 6. If a new QR code is requested, scan it through Linked Devices. 7. Send another inbound test message. How to disconnect WhatsApp 1. Open the WhatsApp management page in Convert. 2. Select Disconnect. 3. Confirm the action. Campaigns will stop using that connection until you reconnect it. You can also remove the connection from WhatsApp by opening Linked Devices, selecting the connected device, and choosing Log out. Final checklist Before sending a live campaign, confirm that: - The correct WhatsApp account is connected. - Convert reports the account as connected. - An inbound test message appears in Convert. - Contact numbers use international format. - Every recipient has given appropriate permission. - Opt-out handling has been tested. - A small test campaign was delivered successfully. - The team knows how to check and restore the connection. Common problems The QR code expired Request a new QR code and scan it immediately. The phone will not scan the code Increase the computer screen brightness, clean the phone camera, make sure the entire code is visible, and confirm that you selected Link a Device. The wrong account was connected Disconnect it in Convert and remove the session from WhatsApp’s Linked Devices list. Then connect the correct account. Convert says the account is disconnected Select Reconnect. If the stored session cannot be restored, scan a new QR code. Messages are not appearing in the webhook test Check that the sender messaged the exact connected number, both devices have internet access, and the connection status is healthy. Reconnect the account and test again if necessary. A campaign cannot reach a contact Confirm the phone number includes the country code, the recipient uses WhatsApp, the contact is eligible and opted in, and the Convert connection is active.