curl --request POST \
--url https://thirdparty-sandbox.staging.qonto.co/register/partner_events \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Qonto-Partner-Id: <api-key>' \
--data '
{
"organization_id": "6367b150-ce8c-40c4-8e0a-5535119fde70",
"event": "incorporation_flow_started",
"occurred_at": "2026-09-23T10:00:00Z",
"registration_id": "01959094-8699-7b6c-b0e6-9cd728890843"
}
'import requests
url = "https://thirdparty-sandbox.staging.qonto.co/register/partner_events"
payload = {
"organization_id": "6367b150-ce8c-40c4-8e0a-5535119fde70",
"event": "incorporation_flow_started",
"occurred_at": "2026-09-23T10:00:00Z",
"registration_id": "01959094-8699-7b6c-b0e6-9cd728890843"
}
headers = {
"Authorization": "Bearer <token>",
"Qonto-Partner-Id": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'Qonto-Partner-Id': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
organization_id: '6367b150-ce8c-40c4-8e0a-5535119fde70',
event: 'incorporation_flow_started',
occurred_at: '2026-09-23T10:00:00Z',
registration_id: '01959094-8699-7b6c-b0e6-9cd728890843'
})
};
fetch('https://thirdparty-sandbox.staging.qonto.co/register/partner_events', 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://thirdparty-sandbox.staging.qonto.co/register/partner_events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'organization_id' => '6367b150-ce8c-40c4-8e0a-5535119fde70',
'event' => 'incorporation_flow_started',
'occurred_at' => '2026-09-23T10:00:00Z',
'registration_id' => '01959094-8699-7b6c-b0e6-9cd728890843'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Qonto-Partner-Id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://thirdparty-sandbox.staging.qonto.co/register/partner_events"
payload := strings.NewReader("{\n \"organization_id\": \"6367b150-ce8c-40c4-8e0a-5535119fde70\",\n \"event\": \"incorporation_flow_started\",\n \"occurred_at\": \"2026-09-23T10:00:00Z\",\n \"registration_id\": \"01959094-8699-7b6c-b0e6-9cd728890843\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Qonto-Partner-Id", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://thirdparty-sandbox.staging.qonto.co/register/partner_events")
.header("Authorization", "Bearer <token>")
.header("Qonto-Partner-Id", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"organization_id\": \"6367b150-ce8c-40c4-8e0a-5535119fde70\",\n \"event\": \"incorporation_flow_started\",\n \"occurred_at\": \"2026-09-23T10:00:00Z\",\n \"registration_id\": \"01959094-8699-7b6c-b0e6-9cd728890843\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://thirdparty-sandbox.staging.qonto.co/register/partner_events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Qonto-Partner-Id"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"organization_id\": \"6367b150-ce8c-40c4-8e0a-5535119fde70\",\n \"event\": \"incorporation_flow_started\",\n \"occurred_at\": \"2026-09-23T10:00:00Z\",\n \"registration_id\": \"01959094-8699-7b6c-b0e6-9cd728890843\"\n}"
response = http.request(request)
puts response.read_body{
"errors": [
{
"code": "unauthorized",
"detail": "You must authenticate to perform API requests"
}
]
}{
"errors": [
{
"code": "not_found",
"detail": "The record identified by <uuid> could not be found."
}
]
}{
"errors": [
{
"code": "<error-code>",
"detail": "<relevant-detail>",
"source": {
"pointer": "<ie /data/attributes/attr_name>"
}
}
]
}Record a partner event
Records an incorporation milestone reported by an authorized partner. This endpoint is currently available to ITAdvisors only. The event value must be one of the events listed below for ITAdvisors.
Provide organization_id, registration_id, or both. When both are provided, they must identify the same organization. Early events can be reported before a registration exists, using organization_id.
Repeated reports for the same partner, organization, and event are idempotent. If duplicate reports have different occurred_at values, Qonto retains the earliest timestamp.
curl --request POST \
--url https://thirdparty-sandbox.staging.qonto.co/register/partner_events \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Qonto-Partner-Id: <api-key>' \
--data '
{
"organization_id": "6367b150-ce8c-40c4-8e0a-5535119fde70",
"event": "incorporation_flow_started",
"occurred_at": "2026-09-23T10:00:00Z",
"registration_id": "01959094-8699-7b6c-b0e6-9cd728890843"
}
'import requests
url = "https://thirdparty-sandbox.staging.qonto.co/register/partner_events"
payload = {
"organization_id": "6367b150-ce8c-40c4-8e0a-5535119fde70",
"event": "incorporation_flow_started",
"occurred_at": "2026-09-23T10:00:00Z",
"registration_id": "01959094-8699-7b6c-b0e6-9cd728890843"
}
headers = {
"Authorization": "Bearer <token>",
"Qonto-Partner-Id": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'Qonto-Partner-Id': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
organization_id: '6367b150-ce8c-40c4-8e0a-5535119fde70',
event: 'incorporation_flow_started',
occurred_at: '2026-09-23T10:00:00Z',
registration_id: '01959094-8699-7b6c-b0e6-9cd728890843'
})
};
fetch('https://thirdparty-sandbox.staging.qonto.co/register/partner_events', 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://thirdparty-sandbox.staging.qonto.co/register/partner_events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'organization_id' => '6367b150-ce8c-40c4-8e0a-5535119fde70',
'event' => 'incorporation_flow_started',
'occurred_at' => '2026-09-23T10:00:00Z',
'registration_id' => '01959094-8699-7b6c-b0e6-9cd728890843'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Qonto-Partner-Id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://thirdparty-sandbox.staging.qonto.co/register/partner_events"
payload := strings.NewReader("{\n \"organization_id\": \"6367b150-ce8c-40c4-8e0a-5535119fde70\",\n \"event\": \"incorporation_flow_started\",\n \"occurred_at\": \"2026-09-23T10:00:00Z\",\n \"registration_id\": \"01959094-8699-7b6c-b0e6-9cd728890843\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Qonto-Partner-Id", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://thirdparty-sandbox.staging.qonto.co/register/partner_events")
.header("Authorization", "Bearer <token>")
.header("Qonto-Partner-Id", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"organization_id\": \"6367b150-ce8c-40c4-8e0a-5535119fde70\",\n \"event\": \"incorporation_flow_started\",\n \"occurred_at\": \"2026-09-23T10:00:00Z\",\n \"registration_id\": \"01959094-8699-7b6c-b0e6-9cd728890843\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://thirdparty-sandbox.staging.qonto.co/register/partner_events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Qonto-Partner-Id"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"organization_id\": \"6367b150-ce8c-40c4-8e0a-5535119fde70\",\n \"event\": \"incorporation_flow_started\",\n \"occurred_at\": \"2026-09-23T10:00:00Z\",\n \"registration_id\": \"01959094-8699-7b6c-b0e6-9cd728890843\"\n}"
response = http.request(request)
puts response.read_body{
"errors": [
{
"code": "unauthorized",
"detail": "You must authenticate to perform API requests"
}
]
}{
"errors": [
{
"code": "not_found",
"detail": "The record identified by <uuid> could not be found."
}
]
}{
"errors": [
{
"code": "<error-code>",
"detail": "<relevant-detail>",
"source": {
"pointer": "<ie /data/attributes/attr_name>"
}
}
]
}Authorizations
Bearer authorization header: Bearer <token>.
To get your <token>, please sign up to the Developer Portal.
API Key authorization header: Qonto-Partner-Id: <partner_id>.
To get your <partner_id> please, sign up to the Developer Portal.
Headers
Required only for Sandbox API requests; to get one, please sign up to the Developer Portal.
Body
- Option 1
- Option 2
Qonto organization ID. Required unless registration_id is provided.
"6367b150-ce8c-40c4-8e0a-5535119fde70"
ITAdvisors event name. Other partner codes or undeclared event names are rejected.
incorporation_flow_started, incorporation_legal_form_filled, incorporation_pricing_seen, incorporation_invoicing_info_filled, incorporation_checkout_clicked, incorporation_payment_completed, incorporation_accountant_booked, incorporation_accountant_completed, incorporation_vat_submitted, incorporation_vat_completed "incorporation_flow_started"
Timestamp when the event occurred, with timezone.
"2026-09-23T10:00:00Z"
Partner registration ID. May be sent with organization_id if both identify the same organization.
"01959094-8699-7b6c-b0e6-9cd728890843"
Response
Event recorded or an existing event updated idempotently.
Was this page helpful?