PasswordByPhone.com The better global billing solution  

Affiliate ID: 
Password: 
 


Template integration  
By use of the PbP template integration engine its easy to implement the PbP payments forms directly into your site.

Only a few steps are necessary to integrate a PbP payment form seamless into your site:
  1. Create a template for your page containing special template fields for dynamic data generated by PbP like formular fields or language strings.
  2. Create a wrapper file (using a server side scripting language like PHP) for the PbP template engine.
    This wrapper has to
    • send all GET variables to the PbP template engine
    • send the URL of your template file to the template engine
    • receive the output of the template engine
    • display the page to the visitor

 Integration sample


The payment form is generated using ⇒ this template (⇒ view source) by the PbP template engine.
All fields enclosed by double curly brackets ( {{ and }} ) are fields used by the template engine.

 Template structure

The templates are html files containing fields replaced by dynamic content generated by the PbP template engine.

Required template fields
{{pbpLang_contentType}}
meta tag for page encoding (UTF-8 or ISO-8859-1)
{{pbpScripts}}
JavaScript for PbP payment form handling
{{pbpDefaultNumber}}
default phone number for selected country / language
{{pbpAlternateNumbers}}
alternate phone numbers for selected country / language (if defined)

Required html-tags
<form... id="pbpForm">
form-tag for the PbP payment form (may contain styles etc., id="pbpForm" is mandatory)
<select... id="pbpCountry"></select>
selectbox for country selection (may contain styles etc., id="pbpCountry" is mandatory)
<select... id="pbpLanguage"></select>
selectbox for country selection (may contain styles etc., id="pbpLanguage" is mandatory)
<input type="text"... id="pbpToken">
input field for password / token (may contain styles etc., id="pbpToken" is mandatory)

Required css class definitions (inline)
.pbpDefaultNumber {}
format for default number for selected country / language
.pbpRateInfo {}
format of rate info for default number for selected country / language (if defined)
.pbpAlternateNumbers {}
format for alternate numbers for selected country / language
These classes have to be defined in an inline <style> block and may contain generic style definitions.

If any of these fields, tags or definitions are missing or the PbP template engine is unable to parse them the engine will respond with an error.

Optional template fields
{{pbpMessages}}
messages from PbP like error messages (wrong token) or on successful payments/signups
{{pbpLang_direction}}
text direction; ltr (left-to-right, most languages) or rtl (right-to-left, languages like arabic or hebrew); check sample template/page for usage/effect
{{pbpLang_country}}
2 char country code according to ISO 3166-1 (Alpha-2); see also: Country List
{{pbpLang_language}}
2 char language code according to ISO 639 (Alpha-2); see also: Language List
{{pbpLangStr_*}}
* replaced by any key from the list of language strings below; eg. {{pbpLangStr_call_now}}
display a string in the selected language

Available language strings
keylanguage string (english translation)
100percent_confidential100% anonymous and confidential!
accessible_from_everywhereAccessible from EVERY home or office phone or cellular (mobile)
call_from_anywhere4reserveYou can call from anywhere to get passwords in reserve! Unused passwords will remain valid until used!
call_hear_hangupCall ! - Hear Password ! - Hang up !
call_nowCall now!
call_now_to_hear_pwdCall now to hear your password !
call_this_numCall the following number:
cheapIt doesn't get any cheaper!
choose_countrySelect the country you are in:
choose_languageChoose your language:
click_here2enterClick HERE to enter the member area
click_to_enterClick to enter
congrats_token_acceptedCongratulations, your password code has been accepted !
contact_us_on_problemsProblems with getting a password over the phone ? Email us:
deactivate_firewallIMPORTANT If you have a firewall, it must be deactivated to guarantee smooth access to all areas !
enterENTER
enter_passwordEnter your PASSWORD CODE:
free_preview_galleriesFree preview Free Galleries
get_fullGet full access with your password!
get_full_accessGet full access with your password! No restricted areas!
hear_passwordand hear password
hear_password_immediatelyCall to hear your password immediately! (automated system)
hear_password_in_your_languageHear your PASSWORD CODE in YOUR language immediately, write it down and hang up (no need to stay on the phone !!)
instant_access_fromINSTANT ACCESS from 240 countries!!
Inst_accessInstant access!
just_shortcallJust a SHORT CALL to hear your PASSWORD !
loginLogin:
no_ccNO CREDIT CARD NEEDED !
no_dialerNO DIALER
no_dl_or_regNo download! No membership! No registration! No sign up!
no_pay_per_minuteNO "PAY PER MINUTE" TELEPHONE CHARGES!
oror
passwordPassword:
thank_youThank you !
view_correct_numberTo view the correct phone number, please select your current location by selecting your country:
welcome2clubMEMBER AREA Welcome to the club
why_pay_moreWhy pay more elsewhere? Access to the entire member area has never been this cheap!
your_login_passHere is YOUR login and password: (please write it down)
you_are_inIf you are in:
you_need_your_loginpassYou NEED your login and password from above to enter !

 Sample wrapper code (PHP)

<?php
/**
 * convert array to querystring
 * by key/value pairs
 */
function makeQuerystring($arr_param=false$str_index=false) {
    if ( !
is_array($arr_param) ) return false;
    
    
$arr_query = array();
    foreach ( 
$arr_param as $str_key => $mixed_val ) {
        if ( 
is_array($mixed_val) ) {
            if ( 
$str_index $arr_query[] = makeQuerystring($mixed_val$str_index.'['.$str_key.']');
            else 
$arr_query[] = makeQuerystring($mixed_val$str_key);
        } else {
            if ( 
$str_index $arr_query[] = $str_index.'['.$str_key.']='.urlencode($mixed_val);
            else 
$arr_query[] = $str_key.'='.urlencode($mixed_val);
        }
    }
    
    return 
implode('&'$arr_query);
}

/**
 * get GET parameters
 */
$arr_queryData $_GET;

/** 
 * define URL for template (value is mandatory)
 */
$arr_queryData['pbpTplUrl'] = "http://www.passwordbyphone.com/".
                              
"demo/tpl_integration/sample_template.html";

/**
 * define PbP package
 * eg. a package previously set up for your account (billing your content; 
 * please contact support)
 * or one of the predefined default packages like 'masc' for the default 
 * member area (straight content) of PbP
 * the default value 'masc' is used if no package is set
 */
$arr_queryData['pbpPackage'] = "masc";

/**
 * if no country is selected (selectbox), define ip for geotargeting
 * either country or an ip have to be defined
 */
if ( empty($arr_queryData['pbpCountry']) && empty($arr_queryData['ip']) ) {
    
$arr_queryData['ip'] = $_SERVER['REMOTE_ADDR'];
}

/**
 * define pid (or rid)
 */
$arr_queryData['pid'] = "pbp-yourAffiliateId";

/**
 * you may also define additional parameters
 * additional paramters will be passed through to the memberarea url 
 * displayed after sucessful payment/signup 
 */
$arr_queryData['your_key'] = "your_value";

/**
 * build querystring
 */ 
$str_querystring makeQuerystring($arr_queryData);

/**
 * request template parsed by PbP (passing parameters by querystring)
 */
include "http://www.pinaccesscode.com/index.php?".$str_querystring;
echo 
"<!-- http://www.pinaccesscode.com/index.php?".$str_querystring." -->";
?>

Remark:
The sample PHP script above uses the 'include' statement to include the specified template URL. This requires the PHP 'URL fopen wrappers' to be enabled (which they are in the default configuration).

WINNER XBIZ Awards
Best Alternative Billing


Nov 2009,
Webmasters can come visit our Exhibition Lounge at the Vienna Eurowebtainment Show. November 4-7 in Vienna, Austria

May 2009,
PbP now integrated with NATS4

April 2009,
CCBILL customers can now include PbP In their 'cascade to URL' feature

March 2009,
PbP reports 22% increase in sales since same time last year

December 2008,
We are featured as a Top 100 newsmaker for 2008 by XBIZ!

December 2008,
We have been nominated as best alternative processor for the 2009 XBIZ awards - a big 'thank you' to all of those of you that nominated us!

August 27th, 2008
PbP now support pay-per-minute billing

September 18 -20, 2008
Meet us at the Atlanta forum

Oct 17 - Oct 20, 2008
Meet us at the Island Gathering, Curacao

August 8 -10, 2008
Meet us at interNEXT 2008, Florida

July 9 -11, 2008
Meet us at The Industry's Summer Event 2008, Las Vegas

27th May 2008
Have you seen our speaking blog? Let ‘Tom’ show you how to many the most from our solution!

Feb 2008
We are offering all our partners the opportunity to advertise their websites on Satellite TV for free! See:http://www.gfy.com/showthread.php?t=803439

Aug 2007
Have you seen our GFY “Global ATM” promo? Over $2k to be claimed! See:http://www.gfy.com/showthread.php?t=716597

May 2007
We now offer a DRM protection option for content sold using our solution

Feb 9th, 2007
We have been voted the Best Alternative Billing Company at the 2007 XBIZ awards held in Los Angeles, California!

Jan 15, 2007
PasswordByPhone.com .com launches GayPasswordbyphone.com.

Dec 18, 2006
We are a finalist for the 2007 XBiz Awards in Alternative Billing Company of the Year category. The 5th awards are scheduled for February 8 at the Highlands in Hollywood, California.

Oct 08, 2006
PbP nominated for Best Payment at the Venus Web eLINE Awards 2006, Berlin!Vote for us here!

Oct 19 - 22, 2006
Berlin Visit us at the 10.Venus - Germany

Aug 4 - 6, 2006
Hollywood, Fl. Visit us at the Internext Expo

June 19, 2006
We have added webpinaccess.com/?layout=wm_sex to our growing portfolio of consumer facing sites to allow you to capitalise on the global interest in the soccer world cup at this time!

May 11 - 14, 2006
Mallorca Visit us at the Eurowebtainment - Spain

Apr. 24-26 2006
Berlin Visit us at the AOE Expo - Germany

  Population
China 1,2 Billion
India 1,0 Billion
European Union 457 Million
Indonesia 280 Million
Brazil 178 Million
Russia 144 Million
Japan 126 Million
Mexico 101 Million
Turkey 67 Million
South Africa 43 Million
+ 230 more countries