Prohibit purchase of a product based on ownership of another
We need to know if there is a way to create 'purchase rules' based on the ownership of another product through our service.
The best example of this would be the purchaes of an expansion pack for software restricted to those that have already purchased the base software.
Is there anywhere in the purchase processing that an SQL statement can be added to gain purchase approval based on a comparison 'required product' SKU in the ASPDNSF.dbo.ProductVariant table and our own license database which shows what customer has what license?
I am not referring to the required product capability currently implemented, because this adds the 'required product' into the cart along with the additional product. This is not acceptable for us because it forces the customer to buy the product again even if they've already bought it.
We want it to be as clean as possible in the front and with the least amount of trouble possible, but we're prepared to modify source code (we currently use the VB version of the store).
Do any of the mods at least have any ideas?
Any of the technical people that can lend a hand?
Just thinking out loud here...
Looking at the debug of any xmlpackage - you'll see a root/System/CustomerRoles node.
Mine has (along with other stuff) loads of Product SKU's - so I'm presuming (but haven't checked), that it's a list of purchased products.
It would be trivial in an xmlpackage to check for the presence of a SKU in this list before displaying the buy button for a product.
I agree, it would be trivial to do it that way.
However, our situation is a little bit different, because we are not exactly starting anew here with our system. To do this would require individual import over close to 10k previous invoices, we have our own separate database where customer licenses are managed, so we have to bootstrap them into whatever solution we come up with.
Now, would it be possible to do this XML package and compare against the other database for the purchase? This of course would require hardcoding each individual purchase rule into that XML package correct?
What about using one of the empty fields in the ProductVariant table (such as extension data), putting in a required SKU in that field, then comparing that against the existance (or non-existance) of the required SKU in the customer license records managed in our existing (non ASPDNSF) database? This solution would be a bit more preferrable, but I'm not sure where I would put the comparison code into the purchaes process. What VB script(s) would be the place to put this sort of comparison code? It really would only need to be a simple SQL query to search for an existing SKU associated with that customer, based on the current SKU(s) in the cart and whatever SKU is in the extension data field of the product variant record.
Did you ever find a solution to this? I have a customer that is requesting the same type of thing and I think we are going to have to build it ourselves as I didn't find anything remotely like this out in the marketplace or from any provider that writes add-ons for ADNSF.