Webhook from Payment Gateway Not Receiving Data After Initial Setup in Bubble

Hello,

A webhook from a payment gateway was successfully set up in Bubble. Initially, data was received correctly using the Detect data feature during the creation of the API endpoint. Later, a new webhook was created with the same name, modifying the URL to remove “initialize” to meet Bubble’s requirements. This step was necessary because the payment gateway does not allow modifying an existing webhook’s URL after creation. Despite this adjustment, no new data has been received after the initial setup, as confirmed by checking the Bubble logs.


Steps Taken:

  1. Set up the API endpoint in Bubble and successfully received initial data using Detect data.
  2. Created a new webhook in the payment gateway with the same name and updated the URL to remove “initialize.” This was required because the payment gateway does not permit editing the URL of an existing webhook.
  3. Verified that the new URL matches the expected configuration in Bubble.

The Issue:

  • Despite modifying the URL and creating a new webhook, no new requests are being received in Bubble after the initial setup.
  • Bubble logs show no incoming requests after the first successful test.

Steps for Investigation:

  1. Reviewed the API endpoint configuration in Bubble.
  2. Verified that the URL registered in the payment gateway matches the URL used in Bubble.
  3. Sent test requests from the payment gateway to confirm they are being transmitted correctly.

Notes:

  • The Bubble workflow is configured to process fields such as status, amount, and transaction_id.
  • The payment gateway allows creating a new webhook with the same name, but does not support editing the URL of an existing webhook. This limitation made it necessary to create a new webhook after Bubble required removing “initialize” from the URL.
  • Initial requests were received successfully during the first setup only.

Questions:

  1. Does Bubble require additional steps to activate the webhook after modifying the URL?
  2. How can I ensure the payment gateway is correctly transmitting requests to the updated URL?
  3. Are there additional settings in Bubble or the payment gateway to ensure data is continuously received?

Any assistance or suggestions would be greatly appreciated! :blush:

Did you remove authorization checkbox?

“It’s not checked, but I have provided the key token in the webhook configuration.”

Are you doing that correctly? You’re appending an admin API token at the end of the webhook URL?

1 Like

Please… don’t provide AI generated answer. If you don’t know the answer, don’t reply.

2 Likes

The payment platform I’m using allows me to provide the key token directly as part of the webhook setup. It provides a dedicated input field for the token, which I’ve used to include it securely. I didn’t need to append the token manually to the webhook URL—it’s handled by the platform itself.

Can you share screenshot of both your Backend/API Settings and your webhook config?

1 Like

^ and is an error being returned when the webhook is triggered?


unfortunately I don’t have access to the payment platform right now

No errors when setting up the webhook for the first time; it just detects the data successfully. But later, when I try to test and make a payment, nothing happens. The event doesn’t appear in the logs.

Do you have link to payment platform doc?

Do you mean you provided the API token from Bubble into the shared secret field?
This is not used to authenticate to Bubble. You could use any key you want there.

The only way to use Bubble api token to authenticate this call, is to add api key to the url. However, I don’t recommend this for security reason. Instead, check the this workflow can be run without authentication checkbox and instead, validate the secret_token received in conditionnal to be sure this come from this API

No, it’s not in the shared secret field. I used the payment platform dashboard to create the webhook, not through the API, so I added the key there.

It doesn’t matter how you add it. I’m pretty sure what you entered in the platform dashboard was the secret_token because this is mandatory. If your url doesn’t contain ?api_token=bubbleapikey, it won’t work if you don’t check to run it without authentication

This is what I found about the dashboard webhook creation… the secret_token is the one you entered there and is not related to Bubble authentication.

okay so you suggest that I use this webhook without authentication?

Yes. Add a conditionnal for secret_token is (theonenteredindashboard)

how can I add the conditionnal?

in the only when section…

I’ll try it thanks for your time