从Stripe

时间:2017-07-05 11:55:15

标签: python stripe-payments

也许我有这个错误,但查看文档我希望客户的电子邮件地址作为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

1 个答案:

答案 0 :(得分:1)

为了让Stripe发送email receipt,必须满足以下条件之一:

根据您分享的代码,这两个条件都不符合(您的费用创建请求参数不包含customerreceipt_email参数),因此Stripe无法了解客户&#39 ;电子邮件地址和发送收据。