Django paypal ipn标准付款人地址

时间:2012-10-22 14:39:26

标签: django django-paypal

我正在使用django-paypal的DCramer fork:https://github.com/dcramer/django-paypal

我正在使用IPN标准

我想做的是从IPN获取付款人(客户)地址。我可以从paypal文档中看到这些信息是通过IPN发送的,并且通过浏览django-paypal,数据库中存在用于存储此数据的字段。但是,此数据未存储在django-paypal提供的paypal_ipn模型中。我还检查了信号中的ipn_obj,这些数据的所有字段都是空白的。

任何人都可以了解我如何能够获得付款人地址吗?

如果它有助于我使用示例中的信号:

    #Paypal signals
    from paypal.standard.ipn.signals import payment_was_successful
    import datetime

    #Signal for paypal confirmation
    def show_me_the_money(sender, **kwargs):
        ipn_obj = sender

        # Undertake some action depending upon `ipn_obj`.

    payment_was_successful.connect(show_me_the_money)

编辑:

以下scytale建议的ipn_obj的转储会为相关字段生成此内容:

    address_city\t(<type 'unicode'>)\t: 
    address_country\t(<type 'unicode'>)\t: 
    address_country_code\t(<type 'unicode'>)\t: 
    address_name\t(<type 'unicode'>)\t: 
    address_state\t(<type 'unicode'>)\t: 
    address_status\t(<type 'unicode'>)\t: 
    address_street\t(<type 'unicode'>)\t: 
    address_zip\t(<type 'unicode'>)\t:

还有很多其他字段,如果你需要那些数据让我知道,我会把它们粘贴在这里。

1 个答案:

答案 0 :(得分:0)

听起来你首先没有得到地址信息。您可以要求paypal从他们的PayPal帐户发送客户的地址,或者您可以从您的网站上的客户获取地址并将数据包含在paypal按钮HTML中 - paypal然后在IPN数据中将此信息发回给您。有关详细信息,请参阅Forms Basics guide

由于您正在使用django-paypal(对吗?),您可以将这些数据包含在paypal按钮中,只需将字段添加到传递给PayPalPaymentsForm的初始值的字典中,如django-paypal { {3}}