Start WhatsApp from URL HREF with custom text/content

whatsapp now officially support url scheme over Android(Yey)!

<a href="whatsapp://send?text=Hello%20World!">Hello, world!</a>

for more details visit http://www.whatsapp.com/faq/en/android/28000012


I think the answer you where looking for is this:

<a href="whatsapp://send?text=my message&phone=+XXXXXXXXXXX&abid=+XXXXXXXXXXX">Whatsapp me please</a>

This code works both in Android and iOS thanks to the parameters "phone" and "abid" respectively.

Update: If the user uses the web app, that link will do nothing. What I do is to provide that link for mobile and this other one for desktop users:

<a href="https://web.whatsapp.com/send?text=my message&phone=+XXXXXXXXXXX&abid=+XXXXXXXXXXX">Whatsapp me please</a>

You can do it through a CSS @mediaquery or just making the domain dynamic.

The reason why I use two different methods instead of the API "wa.me/?text=menssage", is to avoid the user a hard time trying to open whatsapp aswering questions he probably don't cares about.

Sorry for the late response, hope it helps somebody anyway.


Whatsapp url scheme working only saved ids or numbers for jump message send screen. Android working with message activity for new phone numbers.

This script Looking phone os and create link for phone os.

        $(document).ready(function () {

              if (matchMedia) {
                  var mq = window.matchMedia("(max-width: 991px)");
                  mq.addListener(WidthChange);
                  WidthChange(mq);
              }

              function WidthChange(mq) {
                  var isMobile = {
                      Android: function () {
                          return navigator.userAgent.match(/Android/i);
                      },
                      BlackBerry: function () {
                          return navigator.userAgent.match(/BlackBerry/i);
                      },
                      iOS: function () {
                          return navigator.userAgent.match(/iPhone|iPad|iPod/i);
                      },
                      Opera: function () {
                          return navigator.userAgent.match(/Opera Mini/i);
                      },
                      Windows: function () {
                          return navigator.userAgent.match(/IEMobile/i);
                      },
                      any: function () {
                          return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
                      }
                  };




                  if (mq.matches) {
                      if (isMobile.Android()) {
                          $("a").attr("href", "intent://send/+905055555#Intent;scheme=smsto;package=com.whatsapp;action=android.intent.action.SENDTO;end");
                      } else {
                          $("a").attr("href", "tel:+905555555555");

                      }
                  };

              }
          });

Was working on the same Problem and found the solution:

href="intent://send/[countrycode_without_plus][number]#Intent;scheme=smsto;package=com.whatsapp;action=android.intent.action.SENDTO;end

With a telephonenumber(+49 123 456 78)

href="intent://send/4912345678#Intent;scheme=smsto;package=com.whatsapp;action=android.intent.action.SENDTO;end