curl --request POST \
--url https://app.base44.com/api/payment-webhooks/stripe/liveimport requests
url = "https://app.base44.com/api/payment-webhooks/stripe/live"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://app.base44.com/api/payment-webhooks/stripe/live', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.base44.com/api/payment-webhooks/stripe/live",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.base44.com/api/payment-webhooks/stripe/live"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.base44.com/api/payment-webhooks/stripe/live")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.base44.com/api/payment-webhooks/stripe/live")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body{
"status": "processed",
"reason": "unknown_event_type",
"action": "payment_tracked"
}Receive Stripe live event
Receives live-mode Stripe events for apps that have gone live with their own Stripe account.
This endpoint behaves exactly like Receive Stripe sandbox event and returns the same acknowledgements. It exists separately because live events are signed with a different secret, so Base44 verifies the Stripe-Signature header against its live signing secret and rejects anything that doesn’t match it.
curl --request POST \
--url https://app.base44.com/api/payment-webhooks/stripe/liveimport requests
url = "https://app.base44.com/api/payment-webhooks/stripe/live"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://app.base44.com/api/payment-webhooks/stripe/live', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.base44.com/api/payment-webhooks/stripe/live",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.base44.com/api/payment-webhooks/stripe/live"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.base44.com/api/payment-webhooks/stripe/live")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.base44.com/api/payment-webhooks/stripe/live")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body{
"status": "processed",
"reason": "unknown_event_type",
"action": "payment_tracked"
}Headers
Required on every request. Stripe's signature over the raw request body. A request that omits it is rejected with a 400, as is one whose signature doesn't verify.
Response
How Base44 handled the event.
What Base44 did with an inbound payment webhook event.
How Base44 handled the event. processed means it updated app state or recorded revenue, acknowledged means the event was valid but needed no action, and ignored means it was skipped. The Stripe endpoints also return logged, for an event recorded for reporting only.
"processed"
Why the event needed no action. Present when status is ignored, and on the acknowledged responses that skip an event, such as a transaction that was already approved or one for a zero amount.
"unknown_event_type"
What Base44 recorded. Present on most processed responses.
"payment_tracked"
Was this page helpful?