Adding order verification

If you handle any type of commerce, such as e-commerce and callin orders, you know that giving your customers a way to quickly check their orders is handy for selling anything.

Making things easy for customers keeps them coming back again; having a way for your customers to just text you an order ID and tracking their purchase at any time is really handy.

In this example, a user will text an order ID and we will return a result based on an array.

The array will be formatted by order ID and status as follows:

$orders = array(
  'order id'=>'status'
);

Getting ready

The complete source code for this recipe can be found at Chapter1/Recipe3.

How to do it...

We're going to set up a simple order verification system. A user will text us an order number and we will reply back with the status of that order.

  1. Upload a file called order_verification.php to your server:
      <?php
        $orders = array(
          '111'=>'shipped',
          '222'=>'processing',
          '333'=>'awaiting fullfillment'
        );
        if( isset($_POST['Body']) ){
          $phone = $_POST['From'];
          $order_id = strtolower($_POST['Body']);
          $status = order_lookup($order_id);
          print_sms_reply("Your order is currently set atstatus'".$status."'");
        }else{
          print_sms_reply("Please send us your order id and wewill look it up ASAP");
        }
        function print_sms_reply ($sms_reply){
          echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
          echo "<Response>\n<Sms>\n";
          echo $sms_reply;
          echo "</Sms></Response>\n";
        }
        function order_lookup($order_id){
          global $orders;
          if( isset($orders[$order_id]) ){
            return $orders[$order_id];
          }
          return 'No Order Matching that ID was found';
        }
      ?>
  2. To have a number point to this script, log in to your Twilio account and point your Twilio phone number to it:
    How to do it...

Insert the URL in the SMS Request URL field on this page. Then, any text messages that you receive on this number will be processed via order_verification.php.

How it works...

In step 1, we created order_verification.php.

In step 2, we configured a number in our Twilio account to call order_verification.php.

This is a one-step recipe. A user sends you a text message containing their order ID; you then perform a lookup and return the status.

If no order exists, it returns that the order wasn't found in the system.