So I am doing QRPH development and I followed all the requirements for creation of QRPH payments; displaying it (I used embed); and webhooks. The first two are fine: I am able to create the QRPH and display. I am also able to successfully pay. What’s not working is the webhook.
At this point all good. By the way, if I present the QRPH request using redirectUrl, everything works fine.
It’s when I go the path to presenting the QRPH in my own page, using qrCodeBody, that webhooks are not working. I do not receive any event at all. This particular payment, I successfully paid, but no webhook is reaching my server.
When using the qrCodeBody to present the QRPH on your own page, webhooks should still work as expected. The issue you’re experiencing might be related to how the payment is being processed or how the webhook is configured. Check that your webhook endpoint is correctly registered and that there are no issues with the payment status updates. If the problem persists, test your webhook endpoint using a tool like curl or Postman to ensure it’s reachable and correctly handling the webhook events.
For Sandbox concerns and other technical implementation inquiries, please get in touch with us via:
Sandbox Health Page: Check real-time service status updates.
Maya Developer Hub Service Desk: File
a ticket in Sandbox.
To Know More:
We value your input and would love to hear your insights. Please submit you feedback here.
I did all of the advice here, and I am posting because I am out of options. Let me answer your points:
You said: “The issue you’re experiencing might be related to how the payment is being processed or how the webhook is configured.”
The payment is QRPH, a real-time process. I know the webhook is registered because it worked using redirectUrl, so there is no reason I should not be receiving the events.
You also said: “Check that your webhook endpoint is correctly registered and that there are no issues with the payment status updates. If the problem persists, test your webhook endpoint using a tool like curl or Postman to ensure it’s reachable and correctly handling the webhook events.”
See my answer above. Just for kicks, I also did what is advised. 200 is the response I get when testing via curl.
My post is a production issue, so I need some response that’s a bit more urgent and precise. In short, I need a human being to respond. Thanks.
Thanks for sharing the detailed context and payload — that really helps.
Based on your description, the QR Ph creation and payment flow is working as expected. The behavior you’re seeing with webhooks not firing when using qrCodeBody (embed flow) is usually related to how the webhook endpoint is configured and exposed, rather than how the QR is presented.
Whether the QR is presented via redirectUrl or embedded using qrCodeBody, webhook events are triggered after the payment is completed and confirmed. The QR display method itself does not affect webhook delivery.
If webhooks work when using redirectUrl but not when embedding the QR, this may suggests an environment or endpoint reachability issue.
2. Verify webhook configuration and environment
Please confirm the following:
The webhook URL is registered in the same environment (sandbox or production) where the QR Ph payment was created
Your webhook endpoint is:
Publicly accessible (not behind VPN, localhost, or an internal network)
Able to accept POST requests
Returning a 2xx HTTP response (e.g., 200 or 204)
No firewall or WAF rules are blocking incoming requests from Maya
If IP restrictions are enabled, ensure that Maya’s IP addresses are allowlisted
You can test the connection between Maya and your webhook endpoint during registration in the Maya Manager.
Checking the transaction details directly in Maya Manager
4. Confirm the webhook event type
For QR Ph payments, make sure your endpoint is subscribed to and handling the correct event types (e.g., PAYMENT_SUCCESS, PAYMENT_FAILED).
Note:
Please note that the Maya Developer Forum focuses on sandbox integration and technical consultation. Since this concern appears to be related to production behavior, we recommend reaching out to your Maya Relationship Manager or contacting business.support@maya.ph so the appropriate team can assist with a deeper investigation.