samtregar
samtregar

Reputation: 7148

In the PayPal REST API, how can I get payer information from a newly executed BillingAgreement?

Let's say I have a billing agreement, which I just executed on the callback from the PayPal site:

resource = BillingAgreement.execute(token)

The resource returned does not have any payer information (name, email, etc). I can use the ID to load the full BillingAgreement:

billing_agreement = BillingAgreement.find(resource.id)

That returns successfully, but the resulting object also lacks an payer info.

This seems like a critical oversight in the REST API's design. If I just got a user to sign up for a subscription, don't I need to know who they are? How else will I send them a confirmation email, allow them to cancel later, etc?

Thanks for the help!

Upvotes: 1

Views: 563

Answers (1)

samtregar
samtregar

Reputation: 7148

Got a reply from PayPal support. Apparently you can take the same token you pass to BillingAgreement.execute() and pass it to GetExpressCheckoutDetails in their classic API. I tried it and it works. It means you have to use both APIs (which we weren't planning to do) and store both API auth info, which is annoying. Hopefully they'll fix it someday, but if it's been high-priority for two months I'm not holding my breath.

Upvotes: 2

Related Questions