Question about Refund

Hi guys.

We’ve had a customer who bought one of our scripts.
But he says that under our script description we have as requirement (PDO PHP Extension).
Ok, it’s true, that we use PDO but only for the database conection, and not on our functions.
Client is requesting the refund because he isn’t working with MYSQLI.
Our question is… is this a valid refund request? Although the script doesn’t use PDO, all the functions work fine, and there’s no issue concerned to the script.
this is the script:
What can we do to deny this request, or what is your point of view over this issue?
This seems a way for customers (some of them) to have access to the code and then make some kind of excuse to get the refund back from the script… :frowning:
Can you give us some advices on this?!

Best regards.

If your item work as described, and what they said is not a bug or not a feature, deny that refund

1 Like

Thank you so much for your opinion @leafcolor.

Best regards.

Well but how is it possible to use PDO for connections and MySQLi for functions? That are two different classes. I don’t really understand it.

It is possible, as the server has the mudules correctly installed.
We started with the old and obsolete MYSQL, then we updated all our functions for MYSQLI.
But for security measures, we decided to use only the database conection with PDO, and left the rest of the functions using MYSQLI.

Best regards.

I don’t see mysqli listed in your requirements. Not everyone has mysqli enabled.


  • PHP 5.3+, PHP 7.0+
  • PDO PHP Extension
  • MySQL 5.x
  • Apache Mod Rewrite Enabled

If he’s requesting a refund because his server doesn’t have mysqli and your item is using mysqli, the refund request is valid (because it wasn’t in the requirements).

Ok. thank you @allenherbert.
I asked him also to install MYSQLI. Why can’t he install it on his server?
How can I refund customer then?
I told him to send request to Envato.

Best regards.

The customer should open a refund request at and then you will have an option to approve it.

He may or may not be able to install mysqli, but it doesn’t really matter. If the requirement wasn’t listed, the customer did not have that expectation originally, and shouldn’t be held responsible.

1 Like

Ok. Thanks :slight_smile:
Although i don’t think is fair, because we only mention that the PDO extension is a requirement, but we don’t say that prepared PDO statements are in the base of this script creation…
By the way, if we see the client is using the plugin can we create a DCMA against him?

Best regards and thank you for your help.

Ok, I’m confused. Are we talking about PDO Prepared Statements or mysqli? They’re two completely different extensions.

If we are talking about mysqli then yes, you didn’t put it in the requirements and you cannot expect every buyer to be ok with that - people do look at requirements before buying, and you basically misled this particular customer. You also need to fix the requirements list because something like this could get the item disabled.

You own the copyright so if someone is using your work without a license you can definitely send a DMCA complaint.

Sorry but, even MySQLi has to open always a connection before managing any querys, am I right? So, if you open a connection with PDO, do you return the connection object and take it for MySQLi? Or are you just opening a PDO connection and after that for each SQL-Query you’re reopening a MySQLi connection to handle those queries?

Why not just use MySQLi or PDO. Both are secure, if you use it well like written in documentation. You can escape each MySQLi query, especially the connection shouldn’t be a problem because there is no client input required the configuration for your database server should be local in a file as best in a non-clientside-readable PHP file which gets included into the connection class/function.


We’ve changed that on the requirements.
But just look. This client bought the plugin, and after a few minutes he was requesting refund. He could ask for help, has he has right to have support. But he didn’t ask for help. He just requested Refund… :frowning:

Personally, I would have requested a refund immediately too. The item was not as described. I really don’t see an issue here.

1 Like