One product with multiple instances and sell each instance once - wordpress

I'm using Wordpress and Woocommerce to make an online store. I want to sell some accounts (username and password). For example, the product name would be "Foo" and contains 100 files each containing an account information. So, the product should appear once in store and on each sale one file should be delivered to user. How can I do this? Is there any add-on for this purpose?
Thanks in advance.

You need to be looking at "Digital Downloads". For example a rough overview on this is here:
https://docs.woocommerce.com/document/digital-downloadable-product-handling/
And then to create the "different" files you will use product "Variations", where each variation would be a file.

Related

Is it possible to add multiple prices to one product in Woo commerce depending on whether the customer is an individual or a professional?

My client has two customer types (enterprises and individuals), he wants to propose different prices regarding the customer type. This customer type should be defined when the customer creates its account. I still haven't found a solution to do this automatically : after account creation depending on whether the customer said he is an enterprise or an individual, I want that the right price is automatically selected. Do you have any idea of how to do this without a manual user role given ?
Before registration, is it possible de display both prices so that the enterprise also knows what it will have to pay if it registered ?
That would be awesome if you have any idea of plugins doing this or how to code this.
Thanks a lot
Have a good day !
I believe you are looking for a what will be called a Wholesale User Plugin. There's a handful of them out there that you could look into. It will allow you to set up multiple user roles with different pricing structures.

Using WooCommerce. How to prompt for address before cart/checkout, based on the address (i.e. zipcode), show specific products available?

I am building out an ecommerce website using WordPress and WooCommerce. I'm able to set up my products and corresponding fees/taxes based on the address entered, but it's during checkout. I will have two locations which could have different inventory, so looking to have the address/zipcode check well before the cart/checkout so that specific products would be shown based on the address/zipcode.
I've searched everything and anything--all I can find is based on geolocation, but the shipping (or delivery) address is what I need to know ahead of time because someone can order from a different location but for delivery within the delivery area serviced.
Thanks in advance!
I have been looking for something similar, but I want to force the customer to put their zip code in before checkout so I can valid their cart for delivery.
I found this plugin:
https://wordpress.org/plugins/woocommerce-check-pincode-zipcode-for-shipping/
I haven't tested it, but it looks like something that could work for what you are doing. It can check stock of product based on a zip code at any given location.

Intershop 7.10 - Affiliate Catalog View

Our client would like to be able to give out a preconfigued URL (URL with GET param, similar to affiliate partner URL) to their customers and for customers who visit the catalog through that URL to be able to see only a subset of products in that catalog.
I have noticed it is possible in ICM 7.10 to create affiliate partner and programs which generate specific URLs and it is also possible to define a catalog view which exclude certain products from the catalog for a targeted group of customers or customer segments but it is not possible to exclude products from the catalog for a partner.
Is there some other out-of-the-box platform functionality which would allow our client to assign a certain catalog view based on the URL which customer has used to visit the catalog or do we need to implement a fully customized solution to achieve this?
Yeah, this is not possible with affiliate links.
You'll need to write some custom code, but it might not be that difficult. The usergroups list (customer segments) that the user belongs to are kept in the session object (T_CurrentUserUserGroupKeys). See WebshopPGIDProvider it puts the user by default in the everyone group. You can write a pipeline that puts the customer in a segment by updating this list so that you can then use the segment for the catalog view. Just remember to do this before the pgid is generated.

Wordpress : data exchange betweeen two plugins

I want to develop a website where teachers create exams and students pay money in order to pass these exams, so it's an e-commerce website where products are quiz.
The exams will be managed with a quiz plugin : i'll use Watu.
I still have no idea what e-commerce plugin I'll use.
What I want is to make exams as products so students can add them to cart, but I dont't see how can I do it : the e-commerce plugin manages its own products !!! Is there an easy way to do it ?
This is my idea: alter the quiz module so when an exam is created the script insert a row in the e-commerce table(s), so when I go to the e-commerce plugin I'll find a new product! But I think this is not a clean way !!
You might consider setting up woo-commerce setting a link as a software product that will be delivered on checkout.
You could build a quiz answer table in sql, deliver a generic quiz (via a link sold in the store)
the quiz table could have a field for quiz_id and you could have their answers recorded as a text field.
so the link would be delivered digitally thru the store, your answers 1-100 a-d might look like this:
userid: xxxxx
autodate
test: 1
Answer:abadddaeababadddaeababadddaeababadddaeababadddaeababadddaeab
so one entry would contain all the answers on the test in question in one field.
once committed you could return a result based on a difference function from a pattern mask.
how many wrong answers in the simple query.
You then can store the answers and draw data based on what particular answers they got wrong.
they can also retake the same test at a later date and you can see each time how they did.
advantages of using a single text field means that you can use a single compare to pull the data and it's short to store.
with a membership plugin. Give roles afther payments. Diferent roles for diferent levels of exam. It´s easy than make conexion with database.

DotNetNuke Cart

Does anyone with DotNetNuke have experience with downloadable content with a shopping cart?
There is a client using CatalooK as their shopping cart. They sell user manuals for a range of car models (one car has multiple user manuals in different languages) but did some test and this is we found so far:
If we have all the downloadable manuals users in the ‘All Users’ role will have access to all the downloadable content by anyone
When a user registers (either from the Login page, or through purchasing a product from the cart), a user account is automatically created for them and are assigned the role as ‘Registered Users’. This solves the problem of having all users access to the content – can just change the permission for the downloadable items to only display for 'Registered User' only
However, anyone can register themselves on the website and automatically be assigned a ‘Registered Users’ role, therefore getting access to the manuals without having paid for them
A step further would be to require the manual adding of user accounts to a new role called ‘Downloads’ which would be the only users within the 'Downloads’ role to have access to the downloadable manuals
Problem here is, if a user purchases 1 downloadable item and they are added to the ‘Downloads’ role, they will also be given access to all of the other downloadable manuals – as they are in the same role
So I guess the workable solution would be to create a new role for every car model to allow people in each car model role access to the downloads – which would also mean manually adding the role of every group purchased to that user’s accounts.
Anyone have any experience or alternatives to this to make it more automated and secure?
Basically no body has access to the downloads unless you have purchased the products.
Upon purchasing some shopping carts send you an email with a unique link to the downloadable so they can access it that way. In your situation you also want them to be able to see the documents on the site at anytime after purchasing them, which makes sense.
Catalook has a 'Your Orders' module, does that show you the document or electronic item you purchased? That might be an option.
But worst case, I guess you can implement your 1 role per product. Sounds like a lot of work though! Or, do some custom :]coding.
Based on your situation the cart I use the most DNNspot (mine) - it would be similar to Catalook. Where you would need to create a role per product. Or use the orders module to show your previous orders which would link to your document you bought.
How good is your SQL? You could use the core DNN 'reports module' If you analyze the database and orders table - with a little bit of SQL you could setup a custom Report and maybe solve this.
This is very interesting an challenging. probably, this is not supported by catalook store module by default. If you are looking to implement a new simple module, there are some simple solutions to this.
Using personalization: you can use dnn's personalization provider to store user products. initially empty, and as user purchases the products, you can add comma separated list of productid to maintain it smartly. check that values back to validate downloads
Using custom user profile property and use it in same way as [1] above
Email option suggested by #Ryan is good option when you want to allow users to download manually only via email links. But again, you will still need to validate if a user is allowed to download that product or not that you can achieve via the above suggestions.
Let me know if you need more help with this, I have good experience to deal with catalook specific small modules for such extensions.
Happy coding

Resources