Php PayPal计费协议与其他非常规参考交易

Php PayPal计费协议与其他非常规参考交易,php,soap,paypal,Php,Soap,Paypal,我正在对我的应用程序实施PayPal支付。 我正在使用Laravel框架和merchant sdk php包来处理NVP/SOAP API。确切地说,我更喜欢RESTAPI,但我需要客户在非常规时间段内进行各种金额的参考交易,据我所知,只有使用NVP/SOAP API才可能 快捷方式中的付款流程: 一,。付款人点击“连接”按钮,即使用“SetExpressCheckout”方法创建账单协议。金额设置为0,并向请求添加帐单协议字段。客户被重定向到PayPal,登录到他的帐户,同意直接借记,最后重定

我正在对我的应用程序实施PayPal支付。 我正在使用Laravel框架和merchant sdk php包来处理NVP/SOAP API。确切地说,我更喜欢RESTAPI,但我需要客户在非常规时间段内进行各种金额的参考交易,据我所知,只有使用NVP/SOAP API才可能

快捷方式中的付款流程:
一,。付款人点击“连接”按钮,即使用“SetExpressCheckout”方法创建账单协议。金额设置为0,并向请求添加帐单协议字段。客户被重定向到PayPal,登录到他的帐户,同意直接借记,最后重定向到我的返回url。
二,。收到响应后,将触发return操作(在returnurl字段中传递的操作)。接下来,使用paypal resposne的令牌,我使用CreateBillingAgreement方法获取“BillingAgreementID”,并将其存储在数据库中。
三,。我使用“BillingAgreementID”发出“DoReferenceTransaction”请求。没有出现登录提示,一切都发生在幕后。最后我得到了交易后的回应

我想知道的是:
一,。有没有一种方法可以获得一个电子邮件地址,即消费者在创建账单协议网时使用的登录地址?我想在应用程序中显示直接借记设置为哪个贝宝帐户(与提到的电子邮件相关)?
二,。我想在“BillingAgreementID”和“DoReferenceTransaction”之后在数据库中执行一些操作。是否将响应状态“成功”以及“DoReferenceTransaction”字段“PaymentStatus”中的“PaymentStatus”设置为“Completed”就足以得出结论,即交易已完全完成,我不能共享一些数字商品,或者我应该等待此请求的IPN


感谢所有的贡献

找到了问题1的解决方案。 下注账单协议id后,我必须执行“GetBillingAgreementCustomerDetails”操作。作为回应,我得到了包括电子邮件在内的客户详细信息


仍在关注第二个问题的提示

找到了问题1的答案。 下注账单协议id后,我必须执行“GetBillingAgreementCustomerDetails”操作。作为回应,我得到了包括电子邮件在内的客户详细信息

仍在关注第二个问题的提示