sourceryapp / sourcery-web-app

Progressive Web App for Sourcery
https://sourceryapp.org
GNU Affero General Public License v3.0
4 stars 0 forks source link

How shall we handle unsuccessful payments? AKA - "Recovery Flow" #135

Open bdaley opened 4 years ago

bdaley commented 4 years ago

While wrapping up the on-boarding issue (#121), I was made aware of some (hopefully) edge-cases during our credit card processing workflow. Our current workflow assumes that a user's saved credit card will be successfully charged once their documents are available. Stripe calls this an "off-session" payment, since it happens in the background, outside of the typical online shopping flow. However, the Stripe documentation warns about the possibility of failed charges due to situations where the card has insufficient funds or additional authorization is required.

For our upcoming launch, I believe we can handle these situations offline, directly with the client. But this is something that we might need to address within the app if we want Sourcery to scale.

For example, one option might be to alter our workflow so that clients are required to make "on-session" payments. That is, they are prompted to pay before receiving their documents. That way, failed payments can be resolved in real time.

For reference, these cards will test each case:

image

foundhistory commented 4 years ago

Hi Brian. Thanks. I agree we can move ahead with the off-session payments. We’ll know when/if it becomes a problem and can address it then. Good to know, tho

From: Brian Daleymailto:notifications@github.com Sent: Friday, February 28, 2020 10:08 AM To: GreenhouseStudios/sourcery-web-appmailto:sourcery-web-app@noreply.github.com Cc: Subscribedmailto:subscribed@noreply.github.com Subject: [GreenhouseStudios/sourcery-web-app] How shall we handle unsuccessful payments? AKA - "Recovery Flow" (#135)

Message sent from a system outside of UConn.

While wrapping up the on-boarding issue (#121https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGreenhouseStudios%2Fsourcery-web-app%2Fissues%2F121&data=02%7C01%7Ctom.scheinfeldt%40uconn.edu%7C8aa1621d415b44cbe56408d7bc60013e%7C17f1a87e2a254eaab9df9d439034b080%7C0%7C0%7C637184992829049135&sdata=CccjoX7Sq1fgqNLZlsntPyYhVezkOzWEK7ln7BO6Us8%3D&reserved=0), I was made aware of some (hopefully) edge-cases during our credit card processing workflow. Our current workflow assumes that a user's saved credit card will be successfully charged once their documents are available. Stripe calls this an "off-session" payment, since it happens in the background, outside of the typical online shopping flow. However, the Stripe documentationhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstripe.com%2Fdocs%2Fpayments%2Fsave-and-reuse%23web-test-integration&data=02%7C01%7Ctom.scheinfeldt%40uconn.edu%7C8aa1621d415b44cbe56408d7bc60013e%7C17f1a87e2a254eaab9df9d439034b080%7C0%7C0%7C637184992829049135&sdata=wk%2BGC58Eqa5o6tdE%2BAbRFEFvmHkQ26ZeOw9Lk3ngRdo%3D&reserved=0 warns about the possibility of failed charges due to situations where the card has insufficient funds or additional authorization is required.

For our upcoming launch, I believe we can handle these situations offline, directly with the client. But this is something that we might need to address within the app if we want Sourcery to scale.

For example, one option might be to alter our workflow so that clients are required to make "on-session" payments. That is, they are prompted to pay before receiving their documents. That way, failed payments can be resolved in real time.

For reference, these cards will test each case:

[image]https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fuser-images.githubusercontent.com%2F382814%2F75559750-ff285a80-5a11-11ea-859c-d4aa2f665a67.png&data=02%7C01%7Ctom.scheinfeldt%40uconn.edu%7C8aa1621d415b44cbe56408d7bc60013e%7C17f1a87e2a254eaab9df9d439034b080%7C0%7C0%7C637184992829059130&sdata=XfkxyFiO3uh4bB40MROGXC7Rs4HliFGAj%2FcpH8O%2BhG0%3D&reserved=0

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGreenhouseStudios%2Fsourcery-web-app%2Fissues%2F135%3Femail_source%3Dnotifications%26email_token%3DABHCZNK7QZXLMKUYDYFDAB3RFESFDA5CNFSM4K5SDUYKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IREOFNQ&data=02%7C01%7Ctom.scheinfeldt%40uconn.edu%7C8aa1621d415b44cbe56408d7bc60013e%7C17f1a87e2a254eaab9df9d439034b080%7C0%7C0%7C637184992829059130&sdata=Odxc1QXnBt%2BrfPrRMiO38nW9qL8WU48Tz9jQj5fnYtY%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FABHCZNPIKY2X2S2OQQW7HULRFESFDANCNFSM4K5SDUYA&data=02%7C01%7Ctom.scheinfeldt%40uconn.edu%7C8aa1621d415b44cbe56408d7bc60013e%7C17f1a87e2a254eaab9df9d439034b080%7C0%7C0%7C637184992829069127&sdata=GELX1YHZmuWwMYqzi2R5xPlF9imOrO5yX2EmCvbZygE%3D&reserved=0.