Chapter 6. Project 3: Billing and Faxing

If you manage to successfully sell any quantity of items on the Internet, it's hard to imagine not setting up automated systems to help handle the workload. You see this sort of automation all of the time; for example, you expect an automated system to automatically send a confirmation email when an order has been placed. Upon occasion, however, you may not be fortunate enough to work with individuals that have access to the latest technologies, such as email and the Web (yes, for some people those are the latest technologies). For example, your manufacturing partner may not be up to speed. Even in those situations, you can probably still rely on that old standby?the fax.

This chapter shows how to set up a system whereby you receive a payment notification from PayPal and respond by sending a fax containing the order information. PayPal is the well-known payment processing service, http://www.paypal.com/ (see Figure 6-1). For faxes, we'll be using the web services provided by InterFAX, http://www.interfax.net/ (shown in Figure 6-2).

Figure 6-1. PayPal instant payment notification web site
figs/rww_0601.gif


PayPal's development offerings are all listed on the main page, but the specific technology we're interested in here is Instant Payment Notification (IPN), http://www.paypal.com/cgi-bin/webscr?cmd=p/xcl/rec/ipn-intro-outside. The idea is fairly straight-forward: when a PayPal payment is received, the PayPal server sends a notification to a URL you specify. There is no specific developer sign up required to make use of the IPN functionality; you just use the standard PayPal account registration.

Figure 6-2. InterFAX developer site
figs/rww_0602.gif


The fax services provided by InterFAX allow you to send faxes using any of a variety of technologies; in addition to SOAP, you can also use email. A free developer registration (http://www.interfax.net/en/dev/index.html) allows you to send test faxes to a single designated phone number for free (up to a $10 credit, which can be refreshed for free on request).