Search code examples
javascriptpaypal

Paypal PayoutsAAC login stopped working with error "Window does not have a parent"


I am using the paypal payouts AAC api, and it was working fine until last week. Now after the user logs in, the login window just sits on a blank page. I checked the console and it has this error:

post-robot.ie.min.js:1 Uncaught Error: Window does not have a parent
at post-robot.ie.min.js:1:20565
at new e (post-robot.ie.min.js:1:35923)
at r.sendToParent (post-robot.ie.min.js:1:20523)
at HTMLDocument.<anonymous> (advConnectRedirect.js:21:13)

Solution

  • It turns out another team added a security header in AWS for PCI compliance.

    Cross-Origin-Opener-Policy: same-origin
    

    https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Opener-Policy

    This blocks the code in the paypal window from accessing window.opener to call the postMessage method on it to pass data back.

    Updating to same-origin-allow-popups on the page that uses payoutsAAC fixed the issue.

    Cross-Origin-Opener-Policy: same-origin-allow-popups