function cUs_CtCt_createCustomer_callback()
{
    $cUs_CtCt_userData = get_option('cUs_CtCt_settings_userData');
    //get the saved user data
    if (!strlen(filter_input(INPUT_POST, 'first_name', FILTER_SANITIZE_STRING))) {
        echo 'Missing First Name, is required field';
        die;
    } elseif (!strlen(filter_input(INPUT_POST, 'last_name', FILTER_SANITIZE_STRING))) {
        echo 'Missing Last Name, is required field';
        die;
    } elseif (!strlen(filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL))) {
        echo 'Missing/Invalid Email, is required field';
        die;
    } elseif (!strlen(filter_input(INPUT_POST, 'website', FILTER_SANITIZE_STRING))) {
        echo 'Missing Website, is required field';
        die;
    } else {
        $cUs_CtCt_api = new cUsComAPI_CtCt();
        //CONTACTUS.COM API
        $postData = array('fname' => filter_input(INPUT_POST, 'first_name'), 'lname' => filter_input(INPUT_POST, 'last_name'), 'email' => filter_input(INPUT_POST, 'email'), 'website' => filter_input(INPUT_POST, 'website'), 'phone' => preg_replace('/[^0-9]+/i', '', filter_input(INPUT_POST, 'phone')), 'Template_Desktop_Form' => cUs_CtCt_FORM_TPL, 'Template_Desktop_Tab' => cUs_CtCt_TAB_TPL, 'Main_Category' => filter_input(INPUT_POST, 'CU_category', FILTER_SANITIZE_STRING), 'Sub_Category' => filter_input(INPUT_POST, 'CU_subcategory', FILTER_SANITIZE_STRING), 'Goals' => filter_input(INPUT_POST, 'CU_goals', FILTER_SANITIZE_STRING));
        $cUs_CtCt_API_result = $cUs_CtCt_api->createCustomer($postData, filter_input(INPUT_POST, 'password'));
        if ($cUs_CtCt_API_result) {
            $cUs_json = json_decode($cUs_CtCt_API_result);
            switch ($cUs_json->status) {
                case 'success':
                    echo 1;
                    //GREAT
                    update_option('cUs_CtCt_settings_form_key', $cUs_json->form_key);
                    //finally get form key form contactus.com // SESSION IN
                    $aryFormOptions = array('tab_user' => 1, 'cus_version' => 'tab');
                    update_option('cUs_CtCt_settings_FORM', $aryFormOptions);
                    //UPDATE FORM SETTINGS
                    update_option('cUs_CtCt_settings_userData', $postData);
                    $cUs_API_Account = $cUs_json->api_account;
                    $cUs_API_Key = $cUs_json->api_key;
                    $aryUserCredentials = array('API_Account' => $cUs_API_Account, 'API_Key' => $cUs_API_Key);
                    update_option('cUs_CtCt_settings_userCredentials', $aryUserCredentials);
                    // ********************************
                    // get here the default deeplink after creating customer
                    $cUs_CtCt_API_getKeysResult = $cUs_CtCt_api->getFormKeysData($cUs_API_Account, $cUs_API_Key);
                    //api hook;
                    $cUs_jsonKeys = json_decode($cUs_CtCt_API_getKeysResult);
                    $cUs_CtCt_deeplinkview = $cUs_CtCt_api->get_deeplink($cUs_jsonKeys->data);
                    // get the default contact form deeplink
                    if (strlen($cUs_CtCt_deeplinkview)) {
                        update_option('cUs_CtCt_settings_default_deep_link_view', $cUs_CtCt_deeplinkview);
                        // DEFAULT FORM KEYS
                    }
                    // save the form id for this donation new user
                    update_option('cUs_CtCt_settings_form_id', $cUs_jsonKeys->data[0]->form_id);
                    $formSettings['form_status'] = 1;
                    $formSettings['form_key'] = $cUs_json->form_key;
                    $formSettings['form_id'] = $cUs_jsonKeys->data[0]->form_id;
                    $formSettings['form_type'] = $cUs_jsonKeys->data[0]->form_type;
                    $formSettings['updated'] = 1;
                    update_option('cUs_CtCt_settings_form_' . $cUs_jsonKeys->data[0]->form_id, $formSettings);
                    break;
                case 'error':
                    if ($cUs_json->error == 'Email exists') {
                        echo 2;
                        //ALREDY CUS USER
                        //$cUs_CtCt_api->resetData(); //RESET DATA
                    } else {
                        //ANY ERROR
                        echo $cUs_json->error;
                        //$cUs_CtCt_api->resetData(); //RESET DATA
                    }
                    break;
            }
        } else {
            //echo 3;//API ERROR
            echo $cUs_CtCt_API_result;
            // $cUs_CtCt_api->resetData(); //RESET DATA
        }
    }
    die;
}