也许我有这个错误,但查看文档我希望客户的电子邮件地址作为receipt_email返回,这个信息在付款时要求但是它当前没有记录在数据库中,有一个DB列。
以下是创建费用的代码。
def do_transaction(self, token, price, amount, address):
charge = self.stripe_charge(token, price, amount)
txid = coin.sendtoaddress(address, amount)
ret = db.insert('transactions', txid=txid, price=price,
amount=amount, address=address, ip=df.ctx['ip'],
charge_id=charge.id)
self.stripe_finish(charge)
return ret
def stripe_charge(self, token, price, amount):
return stripe.Charge.create(
amount=int(price * 100), currency='usd', card=token,
capture=False, description='%f ArtBytes' % amount)
可以通过charge.id访问Charge ID,所以我希望收到电子邮件,邮件如下= charge.receipt_email,但不会返回任何内容。没有为收费设置目的地,可能是receipt_email有效所必需的。
db.insert('transactions', txid=txid, price=price, amount=amount,
address=address, email=charge.receipt_email, ip=df.ctx['ip'], charge_id=charge.id)
我可以通过收费对象向客户发送电子邮件,还是应该以其他方式获取电子邮件?
API参考:https://stripe.com/docs/api?lang=python#retrieve_charge
答案 0 :(得分:1)
为了让Stripe发送email receipt,必须满足以下条件之一:
created the charge参数中包含客户ID的customer
,此customer在email
属性中有一个有效的电子邮件地址,而您&#39} ;检查了"电子邮件客户是否成功付款"您account settings
created the charge receipt_email
参数中有效的电子邮件地址<{3}}
根据您分享的代码,这两个条件都不符合(您的费用创建请求参数不包含customer
或receipt_email
参数),因此Stripe无法了解客户&#39 ;电子邮件地址和发送收据。