wpsharks / s2member

s2Member® Framework (membership management for WordPress®).
64 stars 36 forks source link

VAT Regulations; Improve Tax Calculations #395

Open jaswrks opened 9 years ago

jaswrks commented 9 years ago

Referencing details provided by customer here. https://websharks.zendesk.com/agent/tickets/4384

clavaque commented 9 years ago

Relevant, from the forums: https://wordpress.org/support/topic/pro-forms-and-the-new-eu-vat-rules https://wordpress.org/support/topic/112015-eu-moss-vat-change-compliance

This last one is related, but not informative. https://wordpress.org/support/topic/who-else-will-tryout-websharks-is-following-moss-rule

I wonder what can be done against the software, though, I think the liable one is the business. But I'm no lawyer, and laws don't always follow common sense very well. I leave it for you so you can check with Michelle or Elizabeth.

In any case, better to provide the feature before the dateline, if possible, in my opinion, to help all site owners that will have the predicament of complying with that new regulation. It will be requested repeatedly anyway, so better done sooner than later.

KTS915 commented 9 years ago

This might be of interest: https://wordpress.org/plugins/woocommerce-eu-vat-compliance/

jaswrks commented 9 years ago

@KTS915 Very helpful, great to see progress being made on their side also. We're workin' on it too! :-)

KTS915 commented 9 years ago

@jaswsinc Great! I hope you aren't getting blown off course by some of the scare stories I've seen.

In fact, you may be doing more about this than WooCommerce, because the plugin to which I referred is actually by an independent developer, who also created UpdraftPlus. He seems to have ignored the scare stories and taken quite a pragmatic approach.

extremecarver commented 9 years ago

Any date for when you're ready? When will the next release be out - there really needs to be a couple of days testing before 1.1.2015 and knowledge what and how this will be implemented and for which payment processors or all... (and special info about subscriptions).

Also how will you treat existing paypal subscriptions? That's the point were I mainly got stuck! I will post my code hopefully on Saturday on wordpress forums.

sowacharya commented 9 years ago

Please unsubscribe me from this On Dec 16, 2014 3:21 AM, "KTS915" notifications@github.com wrote:

This might be of interest: https://wordpress.org/plugins/woocommerce-eu-vat-compliance/

— Reply to this email directly or view it on GitHub https://github.com/websharks/s2member/issues/395#issuecomment-67072756.

jaswrks commented 9 years ago

@sowacharya You will need to come to GitHub and use the "Unwatch" issue button at the top to choose "Ignoring" please. You are subscribed to an issue tracker at GitHub. It requires you to take action in order to ignore any notifications that you get through your GitHub account.

codeforest commented 9 years ago

Hi Jason, is there any chance to get this patch for some beta testing before the release?

Thanks

markwarner commented 9 years ago

With the new rules coming into effect in a few days, it would be great to hear what this update might include and when it might be available. Thanks for working on this on our behalf!

jaswrks commented 9 years ago

Great! I hope you aren't getting blown off course by some of the scare stories I've seen.

@KTS915 Nope :-) Not at all. "Scare tactics" is a good term to use; right along with "insane", "crazy", and a few other choice words. lol ~ When I see the word "tax" I'm already questioning legitimacy. In this particular case it's just downright ridiculous. US tax rates alone are ridiculous enough on their own!

jaswrks commented 9 years ago

Notice: I'm removing the ready tag from this issue to help avoid confusion. That particular tag actually comes from the waffle.io service, because it was "ready" to be worked on; not because it was ready to release.

jaswrks commented 9 years ago

With the new rules coming into effect in a few days, it would be great to hear what this update might include and when it might be available. Thanks for working on this on our behalf!

At a minimum, this update will expose s2Member's GeoIP tracking and the ability to configure a separate set of VAT rates; which will be in addition to any other taxes that you configure with s2Member.

We are also planning to provide a new set of shortcode attributes that can be used to turn tax/VAT on or off for specific Pro Forms; e.g. if you sell something where taxes or VAT should not be applied at all, or one but not the other.

Other improvements may occur over time in an effort to reach full compliance. We have a high priority on this, but there's no certainty that it will be made available before Jan 1st. We will do our best to release it in a timely fashion though; most likely in the form of small improvements a little at a time. Making the Jan 1st deadline is probably not something we can pull-off at this point.

jaswrks commented 9 years ago

Referencing this comment by @extremecarver for consideration. See: https://github.com/websharks/s2member/issues/425#issuecomment-68446601

extremecarver commented 9 years ago

Okay - here you go: Prerequisites:

  1. Install the GeoIP Maxmind Plugin
  2. Create an empty Page called "Payment Button"
  3. Install into your theme the following file: www.velomap.org/plugin_vat/template_velomap_paybutton.php.txt (and remove .txt ending)
  4. Install the plugin: www.velomap.org/plugin_vat/mc_velomap.php.txt (and remove .txt ending)

Note - you will have to adapt it with your data. and get a VatAPI.com account. You will need to replace all "velomap" references with your own domain...

It currently sets a drowpdown for several fields to checkout - it should be easy to understand and adapt.

Expect 2-3 hours to get it working! Good luck before midnight...

extremecarver commented 9 years ago

If you want to clean up the plugin with more variables for domain settings and names - please go ahead... See it working here: https://www.velomap.org/support/membership/

jaswrks commented 9 years ago

Next Release Changelog:

jaswrks commented 9 years ago

Notice: There is more work to be done here, and it's likely that some portions of the work that's completed in this issue will require extensive beta testing. If anyone watching this issue is an s2Member Pro customer, you can log into your account at s2Member.com and visit this page to signup for early beta releases. We appreciate any help that you might be able to offer through our Beta Testers mailing list!

See: http://www.s2member.com/beta-testers/

extremecarver commented 9 years ago

Please send this out via beta list again or also.. I just received the Jan 01 06:04 PM beta without this latest changes...(at least according to changelog)

extremecarver commented 9 years ago

Okay - actually I think the plugin works, but there is a bug and it doesn't work if global tax = 0.0%.. and some other countries filled in - e.g. BV=0.1% (and then selecting a country with is not on the list)..

Also of course as written above the latest changes were not implemented... Please send me the newest version and quickly check before that it also works with 0.0% VAT passing on the fields... (best add a box to allow for adding the Country OR the Country, City, Zip fields even in case no taxes are defined). Why Country alone - it is not so sure whether one actually needs to ask for Zip and City too - or better depends on your local country's VATMOSS interpretation - and the less the user needs to enter - the higher the checkout percentage). ... It's probably enough to just ask for country - AND prepopulate that field before with the country as chosen by IP.. Then pass along all that info that was sampled (IP, Country and according to given or not City/Zip Code) to Stripe (and use Octobat or similar services to get the rest done).

jaswrks commented 9 years ago

Please send this out via beta list again or also.. I just received the Jan 01 06:04 PM beta without this latest changes...(at least according to changelog)

@extremecarver The changes I noted above, along the changes that we pushed out prior were released in s2Member v150102 just a few moments ago. You should get a Dashboard notice shortly. If not, please log into your account at s2Member.com for access to the latest release :-)

Changelog: http://www.s2member.com/changelog/#s2-changes-v150102

jaswrks commented 9 years ago

Also of course as written above the latest changes were not implemented... Please send me the newest version and quickly check before that it also works with 0.0% VAT passing on the fields...

and the less the user needs to enter - the higher the checkout percentage). ... It's probably enough to just ask for country - AND prepopulate that field before with the country as chosen by IP

@extremecarver I agree w/ the points that you raise. Currently, you will need to configure at least one tax rate (it can be bogus if you wish) in order to get the tax location details to be presented by the Pro Form. That will likely improve as work continues here though. Thanks!

extremecarver commented 9 years ago

okay - thanks for the new version. That more or less does it. Still It would be great if you could prechoose the country based on the IP (e.g. by using the GeoIP Detection plugin as referenced in the VAT topic).

The data is correctly transferred now - I do wonder why the IP is only in the customer data - and not in the actual sales data. But I'm not sure if there is a field for that. The reason I ask is that I noticed octobat does not yet use the IP - and I don't actually know why - so I contacted them too for clarification..

Also they actually expect the city and not the State. In Europe city is more important than State in general - so the next hopefully easy step should be to go for a full address - and give a shortcode or similar so we can specify what part of the address we actually need..

Parts are: Country (most important!) State (noone actually cares in Europe!) City (more important) Postcode (more important) Street and Streetnumber (more important - I am 99% sure we don't need the streetnumber for VATMOSS compliance).

I will inquire at my tax consultant and local authorities again if Country alone is sufficient - or if there is a need for full address (note - full address in EU is Country, Postcode / City, Street, Streetnumber) - State is never needed! (but I know it is much more important in the US)... State is for sure not needed for VATMOSS compliance - So City, Postcode and Streetnumber I will inquire again - also it could be that depending on the country your registered for VATMOSS - you will need full adress, or not...

One thing however is for sure - Full adress is needed for bigger amounts. That threshold varies from country to country however. In general 100-400€. This is actually independant of VATMOSS but comes with general Invoice requirement - so please allow full address for Proform - and let the website owner define exactly which fields should be shown...

extremecarver commented 9 years ago

Could you please add the IP address also to the transaction data transmitted?

Stripe "is working" on allowing apps to access the IP data from the customer data - but so far they haven't implemented it - and there is no definite Date set. However even though not documented you can add the IP also to the transcation - just in the same format as for the customer data. Could you tell me how to add that - or change it quickly?

Also pretty sure - for VATMOSS compliance Country alone is enough (waiting for one more return on my questions). No need for State and City or Full adress. But that could also depend on the country you are based in EU - respectively registered for MOSS. So that should be choosable - however the two default options would be either Full Adress (Housenumber, Street, Postcode, City - BUT NOT STATE, at least I don't know any European country where State is required, OR just Country. Only for Amounts above 400€ full address is a must - that won't be the major use case for s2member sales - but just to make it sure - therefore the fields should be choosable via shortcode - not via Options page so that one can adjust in case)

KTS915 commented 9 years ago

@jaswsinc,

Just wanted (a) to endorse extremecarver's suggestions about addresses in the EU, and (b) to say thanks again for doing all this.

As I suspected when I commented above, you're actually doing a lot more about this than WooCommerce. The developer who has created what looks like a fantastic plugin for that platform seems to be getting zero help from WooCommerce themselves, and has now concluded: "Implementing the rules for evidence required by the new EU VAT nightmare requires something that currently can't be done in WooCommerce."

extremecarver commented 9 years ago

@KTS915 Well to be frank - they don't need to do anything about it - as there is a solution for WooCommerce by Taxamo. Install their plugin - pay them for their services - and it's fine. WooCommerce has an approach based on offering lot's of functionality by plugins - So it's kinda their business model. That there is only one choice (Taxamo plugin) now - is not nice. But it's no problem to handle your business in full compliance (in exchange for paying 0,20€ per payment to Taxamo).

But there is no plugin by anyone (but my 95% use ready) plugin for s2member. So the situation is completely different here.

Or am I missing something here and the Taxamo plugin despite big advertisement doesn't work? Same for Magentoshop or Prestashop. For EDD there are also plugins. Also their solution in core (!!!) is working like 99% anyhow: https://github.com/woothemes/woocommerce/issues/7025 So they just refuse full implementation for core (but have a solution that will work in 999 out of 1000 payments correctly anyhow (number taken from other sources following the IP/user confirms preselected country approach) - but miss that last step of verifying the payment gateway supplied country). Actually no s2member solution does this correctly so far either. Neither the octobat approach nor the plugin provided by me. But both VATAPI/OCTOBAT store it - and in case of 3 single pieces of evidence - it is safe to assume the user selected country according to EU. So actually getting the country from the payment provider AFTER the transaction is fine anyhow - except for 1 single case! - the case being IP and country selected differ - and payment provider country matches either IP or Country Selected. However even that doesn't matter - as long as you as a seller - take the decision to chump the VAT on your behalf. Meaning same prices for any customer no matter where he is from. You just need to get your accounting to use the right info, and the invoices (for those countries where they are required) need to reflect the correct VAT rate - but invoices are always created after the payment - so for invoices the solution is easy. As for technical in-capabilities - as long as the user pays with a EU credit card - or EU bank account - there is no problem - as you can find out the issuance country based on the number (that approach is sanctioned by EU too - only problem is that we as a seller never get those first 4 digits of the credit card (the last 4 that we do get - have no country info on the otherhand). However all payment gateways do have this - so they can issue you that country code. The only exception are internet currencies such as Bitcoins - or vouchers bought somewhere. Well how those will be acceptable now is a completely different question anyhow.

As for s2member - without the changes that we needed to ask for s2member - Even Stripe payments handled by Octobat would be incompatible. Even worse as they asked for customer data and never saved it anywhere or transmitted it anywhere. To me that feature before seemed like no-one used it at all commercially? S2member proforms tax form was plainly speaking a joke - cause if you don't gather evidence - you will utterly fail on any tax review. So frankly - it seems to me that actually no single company uses s2member productively - so that is no great outlook and if I were not using it already - I would steer far away from it! (Note - that country information was/is also not included in the "(s2Member / API Notification Email) - Payment nor stored in the user profile".

Also I don't see that s2member did much at all so far. They fixed some bugs in the stripe implementation they had (not adapting new format in time) - and they started forwarding data that should have been forwarded/recorded since the beginning (data you ask a customer must be recorded or forwarded - otherwise there is no reason to ask for). Actually it's still not recorded but at least forwarded. At least inside Europe - if you decided to base your tax decisions on such a form without any evidence - on a tax review the authorities would most likely close down your business and put big fines on you..(and not even remotely unlikely you ending up in jail for that!)

@jaswsinc Please put a plain country formular instead of all the fields as option ASAP! I confirmed that user selecting the country is enough. There is no need for any more evidence for payments below 400€. As for higher payments we need full address! So offer that as option too - and let it be selectable by a shortcode parameter. (eg loc=0 -- not location field at all - e.g. for real donations without any service offered in return, loc=1 user needs to select country from list, loc=2 - the current form for US (postcode, state, country), loc=3 full address without state (street, streetnumber, postcode, city, country), loc=4 full adress including state(street, streetnumber, postcode, city, state, country). And now only forward all that info to Stripe - but also record it in the s2member API notification email.

Also forget about the IP. Stripe now came forward and made it possible for Apps to access the IP from the customer data.

Oh and put country preselection based on IP on a high priority. Otherwise we won't be able to get the 999/1000 rate for actual compliance with the EU rules working. Based on Geo-IP plugin would be great.

KTS915 commented 9 years ago

@extremecarver,

Yes, EDD now has Taxamo integration. (You wonder whether I think Taxamo is fully capable of doing what needs to be done. I believe that you are right to wonder; I am not at all convinced that it is yet, though I have little doubt that it will get there in time.)

But I still don't quite understand your angst. Surely one of the main points of using Stripe (and of having s2Member integrate with Stripe) has always been to be able to make use of all the other services that also work with the Stripe API? There were, for example, a ton of invoicing solutions integrated with Stripe well before anyone started wondering about EU VAT compliance.

I certainly never expected s2Member to do EU VAT calculations; it just needs to make it feasible for another service to do so via Stripe.

All this talk of add-ons for other plugins therefore seems to me to be entirely beside the point. I just want services working with Stripe.

extremecarver commented 9 years ago

Well - Stripe is easy - really anyone can implement it using Octobat.com - you just need to have the right information transferred - and preferably also preselect the country from IP address.

The main troubles are Paypal! Well and there are good solutions for WooCommerce AND EDD - at least for 1 time payments. My plugin published above also does this well - but I can only hope no future s2member update breaks it. AND it still leaves me to process manually all subscriptions.

Heck - I am still bugged down by them. I don't even know how I could export a list of all active subscriptions from Paypal. So now it's email checking vs database. Lot's of data crunching (60.000 emails - and welll - that never goes without manual intervention - and so force. It's hell. It will cost me several weeks for work - not counting the time I already spent on this.). Basically I'm still fighting to survive or shut down in insolvence because the compliance cost is too high.

Had I been using WooCommerce or EDD all along, I would not be in even remotely similar mess. The main problem is of course - as soon as you decide on one membership plugin - it will be hard to move on.

As for Stripe vs Paypal Button.

  1. the current Stripe integration is not legal in EU - as "submit Form" is clearly insufficient to make it clear that it actually means "Pay Now and Check out"... just a small detail. I live with it for right now and will get it changed soon (otherwise sooner or later I'ld get busted by a lawyer - and fined several thousands of Euros for unclear checkout!).
  2. Most customers in Europe clearly prefer Paypal over direct credit card payments - except if they pay at a huge company... Even with Stripe ProForm above Paypal Checkout - I got 75% of customers scrolling down and using the Paypal Checkout button. Not offering Paypal would be clear suicide if you have German speaking customers. A large majority of internet users here have no clue what ssl means and how it works - hence they don't trust to hand out credit card data into a proform. Actually for a small biz - transferrring the customer to paypal to pay, and not using proform or any other kind of checkout on your page is by far the best. 1. it saves you compliance issues (easy) 2. it gains trust, and everyone knows paypal (though a couple hate it and steer away) 3. it gives you legal safety as no lawyer will be able to sue you down for incorrect checkout (heck in Germany and Austria before you open any kind of commercial website - you best spent at least a week reading through e-commerce law blogs and consult a lawyer, 4... many many other reasons.

The only real alternative would be an amazon button with amazon payments/checkout. Let people login to their amazon account and pay that way. Only real solution to gain as much trust as you get by paypal button (or shopping basket - then forwarded to paypal for checkout).

I want compliance with Paypal first and foremost. This is also the only payment gateway offered in the non pro s2member. Clearly it should be fully EU Vatmoss compatible - be it from core or through a reliable 3rd party plugin/module with service contract. Any other payment gateway on top is a nice addon - and I'm happy about everyone checking out at Stripe over Paypal (even though Paypal is only 50% the price of Stripe with 1.5% vs 2.9% here and vatapi being about 1/3 of the price of octobat - simply because they offer better subscription handling and possibility to move subscriptions to another payment gateway - so they are not a lockin like Paypal).

And s2member having no invoicing support whatsoever - has been a big big failure all along anyhow... Invoicing via Stripe app is simply much more expensive than via plugin or core functionality...

Well so first thing here is to get the address right (either country alone, or full adress, but not the current North Ameica centric view which is useless for the rest of the world). Then make sure there are solutions for paypal for whatever service - or at least make sure code affected won't change.

KTS915 commented 9 years ago

From what you say, the "mess" is surely produced more by PayPal than by anything else, which is why I and many others moved away from it asap. Stripe is just so much better.

As to your specifics:

  1. "Submit Form" is easily translatable. You just need the Say What? plugin. I use it extensively. I actually don't want s2Member to change any of what it currently says, because then I'd have to update all my translated strings!
  2. My experience of European buyers is quite different from yours. In fact, I did some A/B testing in a non-English speaking country in May, and found that they much preferred to pay by credit card rather than using PayPal. That's what finally sold me on using Stripe.
extremecarver commented 9 years ago

Do you use Extended Validation SSL certs? I still need to try out if that can get more people to pay via Stripe Proform. But with a simple Comodo or Geotrust SSL cert - (so only little green in firefox - not full address bar in green), for my users (60% german speaking), paypal is a must.

I do know that in the whole UK this is different. UK = credit cards acceptance equal to US - hence no problem moving away from Paypal. But France,Germany, Austria, BeNELux, Italy, Spain, and the eastern European EU countries - paypal is king in my experience. Especially Germany as many pay with bank transfer or direct debit from their bank account via paypal - and that is not possible via Stripe - and the users simply don't have a credit card or don't want to use their credit card on the internet.

And yes - I agree Stripe is from a sellers standpoint much better - though also much more expensive, and much worse support. With paypal biz support I directly get my personal sales rep on the line during business hours, and 24/7 phone support. Don't get me started about Stripe support in Austria/Germany - emails answered 40 days later - only support if you're lucky via chat. Maybe that's opposite where you are. And as long as Stripe does not offer direct debit - I and all other German/Austrian webshops need paypal (or accept bank transfers directly, now even worse with VATMOSS so no solution for me anymore)

Thanks for "say What" plugin. I'll have a look at it.

KTS915 commented 9 years ago

I use a regular SSL certificate that I bought from my host.

My test was in an Eastern European country. (Well, I think they like to think of themselves as a Central European country now!)

Obviously, I can't comment on Stripe support where you are. But I absolutely hate using phone or chat support services anyway. I avoid them like the plague. I want email or online: it must be written down. I want a record of everything. Stripe has always provided that for me, and within an acceptable timeframe.

One thing is definitely different here in the US. Most Americans I know are terrified of the concept of direct debit in case of financial or identity theft -- many people still won't agree to have their wages/salary paid directly into their bank accounts -- and no American bank I know offers a proper bank transfer facility except for payment of credit card and utility bills. (They use some peculiar intermediary service if they offer it at all.)

extremecarver commented 9 years ago

Yes - concept clearly differ.

I just spoke again with some more tax consultants - all agree country is enough. And it is fine if it is preselected by IP. Only for companies operating out of UK or Germany - an additional checkbox to tick "i confirm country XXXX is the country where I live" would be beneficial. However in general - just adding a country list dropdown - which is preselected by IP will be perfectly fine." - For the reminder if IP preselection is not yet there - the same box without preselection would be fine too (in that case no default is best except if you have 99% customers from one country).

So we really need this soon! I checked that I loose over 20%!!!!! of customers if they have to enter the full address field! - some of them them then use Papyal button instead.

BTW - putting credit card in front of paypal button - does not really increase users choosing to pay via credit card. Really - most here prefer Paypal - not offering paypal is suicide...

Example of the paypal implementation is here: https://openmtbmap.org/support/members/ Problem is - implementing that for proforms needs much more insight into how s2member works.

anjimi commented 9 years ago

Hello, I am looking at using s2member for a WP site which we need to add paid subscriptions for digital content. s2member seems to have all the functionality we need. It's a UK site with mostly UK and also EU users so we need to make sure that we're covered for EU VAT. We will be using paypal only.

Please can you tell me if s2member is now ready for EU VAT? Will s2member pro be required for the EU VAT element? Also please any other plugins/services which may be necessary to get s2member/paypal working for EU VAT?

I looked at EDD and woo commerce which have EU VAT plugins ready but can't see how they would work for our subscriptions based site. Thanks!

extremecarver commented 9 years ago

It is working with Stripe and Octobat. If you want Paypal you gotta code yourself (a lot). I have a working plugin for paypal (plus pretty much working conversion of existing users).

But if you haven't started the site yet - I would highly recommmend for any plugin but s2member. They simply don't care for EU regulations (and never did). So use Woocommerce or EDD if you can. Even my plugin though mainly working needs manual compiling of reports at the end of each month (your local country) and end of each quarter (vatmoss return). It does give you a csv file with all the data though for each month - you you can do it in excel (well needs manual conversion of currencies if outside euro zone). It uses vatapi.com which in itself is not very reliable however and they don't seem to care anymore about their product either... (no reports, no nothing though promised). Octobat is great though (only 2nd to Taxamo I suppose - but much easier to integrate).

S2member support is simply a joke. They don't care at all, still no proper pro form address fields and no way to modify it yourself. Loosing conversions all the time cause of s2member's ignorance.

anjimi commented 9 years ago

Thanks for reply. I just can't see how EDD or woocommerce will really work well for subscriptions. I just discovered however that Restrict Content Pro (subscriptions/membership plugin by same developer as EDD) has a Taxamo plugin for EU VAT, which works with paypal :) So I think this will now be our chosen route.

KTS915 commented 9 years ago

@anjimi,

Just bear in mind that RCP does not provide file protection. (And the developer has made it clear that he won't be adding that in the future). So if you need that, it's not going to work for you. If you just want to sell files, then you'll be fine, because that function is handled by EDD.

anjimi commented 9 years ago

Thanks @KTS915 that is a need for us and I did realise that after I posted here! We're doing subscriptions rather than selling files, so I can't actually find a wordpress plugin which ticks all of our boxes, which is disappointing! I have now looked at aMember Pro which does seem to do everything we need, including EU VAT and file protection, and can integrate with wordpress.

KTS915 commented 9 years ago

@anjimi,

It's been a long time since I even heard anyone mention aMember! I didn't even realize that it was still going. Before you commit to it, though, I'd really urge you to find out precisely how that plugin purports to protect files.

The reason is that, unlike the developer of RCP, who is very open about what his plugins can and can't be expected to do, my previous research found that no membership plugin apart from s2Member and Magic Members could do real file protection. Because I could try out s2Member free, which was not possible with Magic Members, that's what initially made me choose s2Member for my own sites. (I have since found many reasons to know that I made the right choice.)

When I last checked, all that the others do who claim to have file protection is just hide the URL. But, once anyone knows that URL, whether a logged-in member or not, they have open access! That's obviously not really file protection at all.

You have probably guessed that @extremecarver and I have had very different experiences with s2Member. We have often discussed them here and on the wordpress.org forum. I run a number of sites very successfully using s2Member for clients who are well known for being among the most demanding around. I have never had a problem.

But one major difference between our usage is that I don't use PayPal; I use Stripe. I know Stripe is available in the UK. If you can -- and there are many reasons to prefer it over PayPal besides integration with s2Member, including the ability to generate EU VAT invoices using something like Octobat -- I'd strongly urge you to consider using Stripe too. That's why @extremecarver himself said that s2member "is working with Stripe and Octobat."

extremecarver commented 9 years ago

I'm also using Stripe - but outside UK in Europe you won't get anywhere near the same acceptance level as Paypal. It's simply impossible to forego Paypal. Even more if e.g. Sofort or Giropay for the German market or Ideal for the Netherlands is not implemented. I put stripe more prominent than paypal - yet >70% of new users still go to paypal!

But even with Stripe s2member conduct is really lackluster. Common - no possiblity to specify which address fields are shown and if you want full address you need to use custom fields that show up at the end in maybe wrong order? No country selector field with dropdown except if charging for tax? Before my complaint asking users for data without even recording/forwarding it - that's a plain joke. Not thought through at all.

S2member would be a great plugin if they started thinking about features professionally and start implementing features that have been asked for by many since 3-4 years (and not hearing they will come in next update that comes never). And I don't mean just another payment gateway, or another techie feature. I mean barebone basics features that are missing (like emails) and polishing (customizability) the checkout interface - also making sure that several pro forms can be on one page, and so on... So many little stupid limitations/bugs just make it a PITA. (not to mention the user data management in the database) - and do a cleanup and remove historic things which are possible with wordpress core since a couple of years.

About file protection - is there really no proper implementation in Woocommerce? https://www.sellwithwp.com/how-to-create-woocommerce-secure-downloads/

Looks just as good as s2member -where are the shortcomings? At worst just setup mod-x-sendfile with proper restrictions.... (that should work for EDD too) - but will involve some hacking how to forward the info.

Heck - maybe it's actually even better? Cause s2member downloads have no standard resume support!!!!! Offering 2-3GB files in size with s2member is nightmare - because users will complain rightfully if they don't have a fast internet connection. Clearly downloads by s2member are not a top priority either, otherwise there would be a proper resume support.

Yes woocommerce is much more expensive because most likely you will still need some additional plugins that aren't cheap. But you get a huge community, due to popularity 3rd party plugins most likely will work well together with Woo, and there is no risk for major trouble due to new laws or the plugin disappearing completely. Sorry - but I don't think s2member business model is thriving so to speak. Update frequency and quality as well as support was good 3-4 years ago, but now?

I stand my offer, I will happily pay a couple grands to that person who can transfer my users out from s2member into woocommerce without interruptions/subscriptions breaking! Mind choosing a membership plugin most likely locks you in for life - so make your decision also on the grounds of thinking about which plugin will still be there and actively developed in 10 years!

KTS915 commented 9 years ago

@extremecarver,

I'm not sure of the point of your latest post. Perhaps you need to read a little more carefully. You talk about issues with Stripe in Europe outside of the UK -- BUT @anjimi IS IN THE UK!!

Next you try to tell me that other plugins can handle file protection. BUT I NEVER SAID THEY COULDN'T! In fact, I even said expressly in a previous post on this thread that EDD does do file protection!

However, what I also said was that, AFAIK, only one other membership plugin, apart from s2Member, can handle real file protection. So whether WooCommerce can do is is irrelevant to @anjimi because she needs that capability as part of a MEMBERSHIP plugin.

Maybe you don't use files the way I do. Yes, I sell a few discrete downloads and (since EDD at last added some much-needed additional security features towards the end of last year) I use EDD to do so because it does file protection.

But I have hundreds of files that are not for download but are used on-site by logged-in members. EDD is useless for that. So is WooCommerce. And, since they couldn't secure these files properly, so was every other membership plugin I looked at (apart, apparently, from Magic Members) when I last investigated the issue.

extremecarver commented 9 years ago

But even @anjimi being in the UK - does this mean his clients are too? We don't know.

I don't know what kind of file securing you mean. But I would strongly assume downloads and streaming are properly secured by woocommerce (which can easily be extended to serve as a membership plugin too). If you need editing of files - well I have no clue.

(e.g. one way to do so is described here: http://chrislema.com/membership-site-with-woocommerce/ another one here: http://www.woothemes.com/2014/02/creating-a-tiered-membership-site-with-sensei-and-groups/

anjimi commented 9 years ago

Thank you guys for your input, we have definitely decided on using aMember now, it is the only option I have found which ticks all our boxes. Paypal is a must, protected files, EU VAT, membership/subscriptions functionality, site is primarily UK but with users worldwide.

Just to answer @KTS915 re file protection, aMember protects the location of the files (no web access) and protected files are served to logged in subscribers via php. aMember seems to be up-to-date and well used/supported, I've asked them a few questions which have all been properly/swiftly answered. It's not specific to wordpress although it has a wordpress plugin so I didn't find much about it when searching for wp membership plugins, but it was recommended to us which led me to look at it.

extremecarver commented 9 years ago

@anjimi Does amember allow file resume on downloads via php? Would it work for files with say 10GB in size to be downloaded in 3-4 hours time?

amember is one of the oldest membership plugins for wordpress. Nice to hear it's still well supported/developed.

anjimi commented 9 years ago

Sorry, I don't know the answer to that question!

KTS915 commented 9 years ago

@anjimi, Thanks for that. It would be interesting to hear how you get along. It has indeed been around for ages, and I didn't realize it was still going.

@extremecarver, Your latest links just emphasize that you don't know what I'm talking about. Amazingly, I had previously looked at those options, and they are quite useless to me. Indeed, the membership solution for WooCommerce relies on Groups, which is just a rather ordinary wordpress.org plugin. And while Chris Lema likes to portray himself as the guru of membership sites, I lost confidence in his recommendations nearly a year ago because they were so poor.

His overall top pick for membership plugins is MemberPress, by the way, yet it can't do file protection at all. The finall straw with him, so far as I was concerned, was when he said that using Membership by WPMU Dev would be a good choice because then you could use all WPMU Dev plugins because they are designed to integrate well with one another! I just burst out lauging at that point, because only a week or so before I had seen a WPMU Dev rep explain that Membership couldn't work with a specific plugin (a plugin in which I was interested) because of the idiosyncratic way that Membership stores its user data. I subsequently purchased the plugin, because of course s2Member uses the regular WordPress tables, and so it works with s2Member. But it doesn't work with Membership. Of course, that's the nonsense advice you get if you rely on a site that's full of affiliate links.

extremecarver commented 9 years ago

I've never bought woocommerce or EDD - hence you're right. I can only read up on it. But file protection for downloads and streaming really does not seem to be a problem with most popular plugins.

As for Chris Lema - I also don't hold his blog for expert content - but still I wouldn't know where the problem is if woocommerce and groups play well together. For sure anything about invoicing/billing/VAT is handled correctly and good by woocommerce and it's plugins - that's a fact I know from some people using Woo for shops. They have way less trouble than we do with s2member (with Stripe and octobat.com being the ONLY exception - and I spent already some days with Gaultier from Octobat making sure it does work - cause there were many bugs in January and February on the summaries and totals as well as refunds and so on. They are sorted now as far as I can tell - but still no goodies like SMS verification which you will need in maybe 1 out of 2000 cases - as possible on Taxamo. But yeah Octobat offers great support - 100% the opposite of what I experience since 2-3 years with s2member).

Oh and as for download protection not working - what about using a third party plugin like "Delightful Downloads" or "Download Monitor"- that could secure downloads to logged in users only (cannot be hard to hack if you want subscribers excluded). I'll have to check how it handles resumes and big files - Maybe it would be a good replacement for s2member download system - because of resume problems. Maybe it's better to have a specialized plugin for downloads anyhow. Then use a membership plugin that got the essentials right - like invoicing, checkout forms and so on.

KTS915 commented 9 years ago

Sorry, @extremecarver, but protecting the downloading of files is precisely what I do NOT want. These files are quite useless if downloaded: they need a server to work. They are dynamic files that need to be used in situ. That's why all your proposals are quite useless for me. And why s2Member is so good: my members can access these files "inline" (to use s2Member's terminology) and yet those files are properly protected from non-members.

extremecarver commented 9 years ago

Well - then you should have explained better what you mean with real file protection. To me that sounded like other plugins would only obfuscate the links, but not protect the files once the location is known. But virtually all plugins seem to support proper protection and not only obfuscating links.

KTS915 commented 9 years ago

Ha, ha! I explained that I needed a MEMBERSHIP plugin toprovide real file protection. You just thought you knew better and proceeded to tell me about plugins that provide file protection. When I said membership plugins, I really did mean membership plugins.

jaswrks commented 7 years ago

Referencing: http://s2member.com/kb-article/what-metadata-does-s2member-pass-to-stripe/

jaswrks commented 7 years ago

Work Remaining