Hack 35 Build Notification Tracking

figs/moderate.gif figs/hack35.gif

Track how your PayPal applications are used by including the Build Notification (BN) tag with all your payment buttons and resulting transactions.

PayPal originally introduced the Build Notification (BN) tag as a way to track developers' projects, allowing them to, for example, include version numbers to gauge application performance. The BN tag is a field for your payment buttons into which you place an identifier string you choose.

An unexpected benefit of the BN tag is that, by demonstrating that your site or application generates a significant amount of transactions, you can receive the benefits of a high-volume merchant. While there is no official disclosure of any specific application rewards, developers can often expect to receive specialized technical support if they ever have problems that affect their applications or sites. High-volume merchants are also invited to participate in testing new features of the PayPal system and receive advance notice of upcoming releases of new product features.

To use the BN system, PayPal suggests assigning a unique, readable value to the BN tag, including the version (and build) number of your application as well as your company name. The suggested format of the BN value is company.product.version, like this:

<input type="hidden" name="bn" value="GeekSoft.Cart.1.0">

Insert the bn variable into your PayPal form buttons just as you would any other values [Hack #28] :

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">

<input type="hidden" name="bn" value="GeekSoft.Cart.1.0">

<input type="hidden" name="cmd" value="_xclick">

<input type="hidden" name="business" value="bn@paypalhacks.com"> 

<input type="hidden" name="item_name" value="Widget">

<input type="hidden" name="amount" value="1">

<input type="image" src=http://images.paypal.com/images/x-click-butcc.gif

                border="0" name="submit">


Once you deploy the BN tag in your form buttons, make sure you register your application with PayPal so that they can begin tracking your usage. Send an email to developer@paypal.com with the BN ID text you use in each of your solutions, along with the name of your company, the title of your application or web site, and your contact information. For further information, see http://www.paypal.com/pdn-submit.

4.9.1 Hacking the Hack

The BN tag only allows PayPal to track your sales internally; you won't have access to any usage statistics connected with your use of the BN tag on your web site.

However, you can track your sales by including the custom variable in your purchase buttons. Set the value of the custom variable to some unique identifier for the application or web site in which the button appears:

<input type="hidden" name="custom" value="GeekSoft.Cart.1.3">

Every time a payment is made with this button, PayPal records the custom value in your transaction history. Next, use the Download My History feature to generate a tab- or comma-delimited text file, as shown in Figure 4-6. Finally, import the file into your spreadsheet or database and use the tools at your disposal to plot sales trends, run reports, or perform statistical analysis.

Figure 4-6. Pulling a comma-delimited file from your PayPal history for use in spreadsheets and statistical analysis applications

You can also export your PayPal history into files that Quicken and Quickbooks can understand, allowing you to integrate PayPal sales with your accounting software.

4.9.2 See Also

[Hack #77] shows another way to track sales through your PayPal payment buttons.