CasperVend 2/Deliveries

From CasperTech Wiki
Revision as of 08:21, 17 July 2013 by Sphynx soleil (talk | contribs) (Created page with "== '''<span style="color:#00528c">Anatomy of a Transaction</span>''' == Ever wonder what goes on during a purchase transaction? Or where things can get hung up? On the merchan...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Anatomy of a Transaction

Ever wonder what goes on during a purchase transaction? Or where things can get hung up? On the merchant's version of the transaction link is a very long "wall of text" that gives the details. This is a simpler explanation of what goes on, and where some of the common error points are.

Calculating Processing Plan

1) What is the product name?
2) Is vendor affiliate locked?
3) Search for item connected to product name
4) Does product have an item configured to be delivered on purchase?
If not, a "No product configured for delivery" message will appear here
5) Is recipient or purchaser banned?
6) Is merchant blocked?
7) Is transaction blocked?
8) Is maximum # of purchases exceeded?
9) Are duplicates restricted?
10) Did the amount paid match the purchase price?
11) Does the tag worn by customer match the one the vendor is rezzed under?
12) Are there group restrictions?
13) Has customer spent enough for a discount?
14) Are they "free" vendors subject to CT commission?
15) Are they affiliate vendors subject to affiliate fee?
16) Are there profit shares?

Resolve avatar names

1) Resolve name-to-key
If someone is too new in SL the system won't find them because it doesn't know their avatar key yet - just have the new account click any vendor to be added to the name2key database.

Check Item Availability / Make Delivery

1) Find a dropbox that contains the item
2) Find product in the dropbox
3) Check item availability with the box
4) Check if box is active
5) If not active, check all previously-deferred boxes
6) When next box is located, see if product is in box
7) System repeats 1-6 until either a dropbox sends the item, or the maximum number of retries is reached.
If a DropBox has "gone dark", you'll see these messages:
"CHECK failed on....Response: Took 0.03 seconds to respond / time out." 
"Sent kiss of life to v2 dropbox: (dropbox UUID)"
"No active dropbox currently contains the item (product name)" 
"Exception: The item (product name) is not available for delivery"
If a DropBox does NOT contain the product package at all (either due to not being configured on the product listing, OR the product package in the DropBox has a different name - remember, matching captialisation counts!), you'll see "just" these messages:
"No dropbox currently contains the item (product name)" 
"Exception: The item (product name) is not available for delivery"
If the delivery is (eventually) successful, then instead you will see:
"Attempting to load (dropbox UUID)"
"Delivery success! v2 DropBox returned VERIFIED - took (number) seconds."

Send Delivery Notices

1) Send the various "transaction complete" IM's to both merchant and customer

Add to Statistics

1) Add to web stats
2) Send ANS call if required
3) Add to customer stats

Send Linked Messages

1) Send linked messages (such as API script calls)
2) Send message to dropbox

Customer Loyalty Message

1) Are there spend levels even set up?
2) If yes, send loyalty message to customer
3) If not, no loyalty message goes at all to customer

Step 8: Complete!

1) Give "transaction complete" or "transaction failed" message for status page