I am the head of IT for a microlending organization. We make small loans to new businesses, and as such we have to collect these clients' tax returns and other financial data as part of the application process. Currently this is done either by clients physically dropping them off at the office, or emailing them (obviously not very secure!).

We have to spend a lot of time prodding applicants to get us all of their required documents. We'd like to be able to write a software system with a dashboard the client can log into, listing each of their still needed documents and an upload button. Periodically clients would get an email listing documents still needed.

Now I could write this system pretty easily if we just store the documents on our VPS and in our database. But, management (I assume rightly?) is concerned that storing documents on our server would increase our liability.

When I integrated a Stripe checkout form into an ecommerce site a few years ago, Javascript would intercept the form submission, send the credit card number to Stripe and get back a token, which would then be saved on my server. The token could be used to charge the card, but there was no way to get the card number from the token.

Does anyone know of a way or a service that would allow something similar for sensitive documents? Say the submission form could take the file attachment and send it to a service, and then the service sends back metadata about the file, but does not allow looking at the files' contents directly.

There doesn't seem to be a way to do this with Box, Dropbox, or Google Drive, and I don't think they are secure enough anyway. Foldergrid.com looks promising, but there doesn't seem to be a way to send a file from the user's filesystem to their server via Javascript. Javascript can't access the filesystem, and html forms can't send Ajax requests with content-type of json.

We can set up one time "dropzones" with Foldergrid where a user can, given a unique link, upload files to a folder without logging in. However with this there is no way to know when certain documents have been uploaded (we want to send a notification to an employee when all of the documents are uploaded).

Perhaps we'll have to bite the bullet and become PCI-compliant or whatever certification is required to do this in a proper manner on our server, but does anyone have any ideas?

closed as off-topic by schroeder, Graham Hill, Iszi, Stephane, Steve Jun 23 '15 at 23:07

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question does not appear to be about Information security within the scope defined in the help center." – Graham Hill, Iszi, Stephane, Steve
If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    What, if any, liability you incur by adopting a particular software solution is a legal question, not an information security question. Try Law.SE. Also, product recommendations are off topic. – Justin Lardinois Jun 22 '15 at 3:28
  • 1
    PCI compliance is for credit cards, not for other types of sensitive information. – gowenfawr Jun 22 '15 at 3:51
  • 1
    Can you store them completely offline after getting them? Print them and put them in a safe? pciguru.files.wordpress.com/2013/12/… for a "not entirely insecure" network layout – Neil McGuigan Jun 22 '15 at 6:21
  • You need to define "liability" for your organization before you can find an answer to this. Liability for what? If you had a per-client encryption key, proper key management, and encrypted the documents before storing (on an encrypted drive), then you have lowered your risk of the data being accessed by unauthorized parties. Is that what you mean? – schroeder Jun 22 '15 at 6:33
  • You're already liable to be GLBA compliant for handling sensitive customer/financial data. (if you're in the US or doing business with a US company) Please review: ftc.gov/tips-advice/business-center/privacy-and-security/… – k1DBLITZ Jun 22 '15 at 12:58