How It All Works
Please read this article carefully. If you understand the basic principles of what the vendor system will do for you, then you'll have no problem completeing the setup, and making the best use of the system in day to day operations!
Scripted Vendors are not Buy Vendors
When a customer pays one of your vendors, SecondLife automatically gives you the Linden dollars (since you own the prim). However, unlike prims set to Buy Contents where SecondLife gives the contents of the prim's inventory to the buyer, a scripted vendor must take care of every detail of the transaction.
The first thing the vendor does is begin the process of getting the purchased item to the customer.
There are three possible ways this is done:
1 - Delivery by Inventory Server
In this setup, the vendor prim is empty, except for the vendor script. The script delivers the requested product by sending the name of the prim to the Delivery Relay, which then sends it to the Inventory Server. The Inventory Server tries to find a box by the same name as the vendor prim, and sends it to the customer.
2 - Delivery by Vendor - Boxed
If the product is stored in the vendor prim's inventory, the vendor script can give it directly to the customer, on the spot. The item must be a single object (e.g. a box or a bag) named exactly the same as the vendor prim. This item will go into the customer's Objects folder in their inventory. This mode is faster than server delivery, and uses fewer region resources.
3 - Delivery by Vendor - Folder
You can also place a collection of "loose" items inside the vendor prim, which will cause the vendor script to deliver a folder to the customer, named the same as the vendor prim, and containing all the items from inside the vendor prim, minus the vendor script. This mode is faster than server delivery, and uses fewer region resources.
Note 1 - You need a Delivery Relay on every region where you have vendors, unless you are using the mode where a single boxed item is placed into the vendor prim.
Note 2 - The Inventory Server must contain a boxed copy of every product you sell. This is to support redelivery. This is true no matter which delivery setup you use above.
The Transaction Record
The vendor also must record the transaction on the web server. Recording the transaction allows the customer to use the redelivery terminal at a later date, and also allows for incrementing the customer's store credit level if you're using Buyer's Rewards.
The object called "Transaction Relay" is required for this purpose. Again, the vendor contacts the Transaction Relay, and the relay then handles sending the data to the web server, freeing up the vendor to process the next customer. The relay can handle the unlikely event of the web server being offline, or temporarily inaccessible due to severe SL lag.