Skip to content

Instantly share code, notes, and snippets.

@swenson
Last active July 12, 2016 14:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save swenson/dad13ff2527cf9f007f1 to your computer and use it in GitHub Desktop.
Save swenson/dad13ff2527cf9f007f1 to your computer and use it in GitHub Desktop.
Simple Flask app to back the PyDX sponshorship form. (AWS Lambda.)
import json
import logging
import requests
import urlparse
import stripe
stripe.api_key = "YOURKEYHERE"
slack_hook = 'YOURSLACKHOOKURLHERE'
logger = logging.getLogger()
logger.setLevel(logging.INFO)
def hook(event, context):
params = urlparse.parse_qs(event['body'])
token = params['stripeToken'][0]
amount = int(round(100.0 * float(params['amount'][0])))
desc = 'PyDX Sponsorship from ' + params['name'][0]
try:
charge = stripe.Charge.create(amount=amount, currency='usd', source=token, description=desc, receipt_email=params['email'][0])
# notify slack
notify = {'text':
'%s successfully sent sponsorship payment of $%s' % (params['name'][0],
params['amount'][0])}
requests.post(slack_hook, data=json.dumps(notify))
return 'Your payment has been processed!\n'
except stripe.error.CardError, e:
print 'Stripe error'
print e
return 'There was an error charging your card. It might have been declined.'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment