Configure the endpoint
Endpoint setup, signing-secret reveal, and replay require authorized FloKit operator access. If you do not have that access, ask your FloKit operator to configure the endpoint and provide the signing secret through a secure channel. Your application implements the receiver; it does not need Admin credentials to receive events.- Open Admin and select Webhooks.
- Select the Endpoints tab and click Add endpoint.
- Select the Company, App, and environment.
- Enter a descriptive name and the public HTTPS receiver URL.
- Confirm Initial successful subscription payment and save the endpoint.
- In Webhook signing secret, reveal and copy the Company’s secret.
- Store the secret in your server’s secret manager and configure the receiver below.
- Click Send test in Admin.
- Open the delivery and confirm its status and attempt history.
Accept durably
After signature verification, validate the payload and accept it durably before acknowledging the request. The SQL below is an optional PostgreSQL implementation example for your receiver; FloKit neither requires nor provisions PostgreSQL, and you can use an equivalent atomic operation in another durable datastore.200 OK or 204 No Content. A duplicate event is a successful acknowledgment with no new job. If the database transaction fails, return a retryable error. Your background job processes the accepted event independently.
Never use email, the Stripe Event ID, delivery ID, or an in-memory cache as the receiver’s deduplication key. Use event_id. Protect the stored payload with access controls, encryption, and an appropriate retention policy; questionnaire answers may be sensitive.
Test events
Admin Send test follows the same delivery pipeline and signature checks. These events containtest_event: true and obvious synthetic identifiers. Accept and deduplicate them normally, then skip business side effects. Test sends use the Company’s actual signing secret.
test_event does not identify Stripe or another provider’s Test mode. A real checkout in a provider test account is still a normal payment event without that flag. Use an isolated App and receiver for provider test purchases, and verify the connection’s provider mode before testing. The payload’s environment is the FloKit connection environment, not independent proof of provider Test/Live mode.
See retries, dead deliveries, and replay when a delivery does not succeed.