The Payments Configuration Status API allows you to check the status of your Payments by Booking onboarding or configuration change request.
We recommend that you integrate with the notification service to receive status updates. When you receive a notification, call the Configuration Status API to fetch the latest status details.
You need to be connected with the Payments by Booking.com onboarding connection type to use this API.
For more information on the connection types, see Connections API Overview.
To simplify the process of setting up a connection between Booking.com and your platform, you can use Quick Connect.
With Quick Connect, you can request to connect a property directly from your interface. You can use it for already connected properties and for newly connecting properties. For more information, see this deck.
POST https://payments-api.booking.com/connectivity-payments/pbb/configurations/statusYou can check the status of the request by using either:
- Request ID – in case a configuration has already been accepted (you've received a notification that the given configuration has been
ACCEPTEDor a response from calling the Payments Configuration API that the configuration has beenACCEPTED), or - Property ID – to check the status of an individual property, or a set of properties in case you submitted multiple requests for different properties belonging to the same legal ID.
The API only returns information for requests that were successfully validated and accepted for processing. Therefore:
In case
request_idis used in the request, the API returns the latest status of all theACCEPTEDrequests, if available.In case
property_idsis used in the request, the API returns the latest status of the most recentlyACCEPTEDrequest for the given property, if available.
{
"property_ids": [],
"request_id": "681fb7d4-a469-470a-b105-faba177bfc57",
"kyc_callback_url": "https://www.google.com"
}
One request can have a maximum of 10 property IDs. All property IDs must belong to the same legal ID.
{
"property_ids": ["1234567","7654321"],
"request_id": null,
"kyc_callback_url": "https://www.google.com"
}The following table describes the request elements:
| Element | Description | Type |
|---|---|---|
:: property_ids | Required if request_id is not used. Specifies the ID of the property or an array of property IDs for which requests were submitted. All property IDs must belong to the same legal entity. Leave empty if checking the status with request_id. | string |
:: request_id | Required if property_ids is not used. Specifies the identifier of the ACCEPTED configuration that you want to check the status of. The request ID is received in the response to the onboarding/configuration change request. Set to null if checking the status with property_ids. | string |
:: kyc_callback_url | Required. Specifies the callback URL for the page where the user should be redirected after completing the pending actions that they receive in the response (e.g.SUBMIT_KYC). | string |
| Element | Description | Type | Required/Optional |
|---|---|---|---|
accept-version | Specifies the version of the API you want to use. Accepted value is 1.0. If not specified, defaults to the latest version. | string | optional |
The response structure is identical for both request methods:
{
"meta": {
"ruid": "9693efa1-fda3-407f-a700-62fa67bbe4e2"
},
"data": {
"config_update_details": [
{
"property_id": "1234567",
"request_id": "681fb7d4-a469-470a-b105-faba177bfc57",
"status": "WAITING",
"requested_at": "2025-05-02",
"actions": [
{
"reference": "https://connect.stripe.com/setup/c/acct_123/abc",
"type": "SUBMIT_KYC"
}
]
},
{
"property_id": "7654321",
"request_id": "1f11033b-7d11-65b3-acb0-7108ea9d653b",
"status": "IN_PROGRESS",
"requested_at": "2025-05-01",
"actions": []
}
]
},
"errors": [],
"warnings": []
}| Header | Description | Type |
|---|---|---|
api-version | The latest version of the API used to generate the response. | string |
The following table describes the response elements:
| Element | Description | Type |
|---|---|---|
::: property_id | Unique identifier of the property for which the status is retrieved. | string |
::: request_id | Identifier of the ACCEPTED configuration for which the status is retrieved. | string |
::: status | Status of the request. For more information, see Request statuses. | string |
::: rejection_reason | In case the request has been rejected, this field provides the reason. For more information, see Request rejection reasons. | string |
::: requested_at | Date when the request was sent. | string |
::: actions | Indicates any steps the partner must complete before the request can proceed. | string |
:::: reference | Reference to the action, such as a URL. | string |
:::: type | Action the partner needs to take. | string |
errors | Contains potential errors. These can help you understand what went wrong with your request. For more information, see Response codes. | array |
warnings | Contains potential warnings. These can help you improve your requests. | array |
| Status | Meaning |
|---|---|
ACCEPTED | Request was successfully validated and accepted for processing. |
WAITING | Request requires an action from partner's side. In case of Stripe, you need to complete the KYP form. For more details, see Note for Stripe. |
IN_PROGRESS | Request is in progress. |
SUCCESSFUL | Request completed successfully. In case of bank transfers, you need to provide your bank details on Extranet. For more details, see Note for bank transfers. |
FAILED | Request failed. Retry or reach out to the Connectivity Support team. |
REJECTED | Request was rejected. See rejection_reason. |
| Reason | Meaning |
|---|---|
The requested configuration is ineligible for the asset | The property doesn't meet eligibility criteria for onboarding. |
The legal_entity_id does not exist | The provided legal entity ID doesn't exist. |
The requested configuration is the same as current | The submitted payout configuration is identical to the current payout setup. |
The requested configuration has properties from different legal entities | One or more property IDs in the submitted configuration aren't associated with the provided legal entity ID. |
Previous request is in process | An onboarding request for this asset is already being processed; only one active request is allowed. |
The property signed up with Payments By Booking in the past, or the requested payout configuration change is not supported | The property has been enrolled to Payments by Booking before, or the payout configuration change in not supported. |
The KYC process is blocked | The KYC process for this asset is currently blocked and cannot proceed. |
To prevent excessive load on our systems, we limit the number of API calls that a provider can make per minute. For the Payments Configuration Status API, the limit is 30 requests per minute.
This table lists and describes the response codes that the API can return.
| Code | Type | Description |
|---|---|---|
| 200 | Success | Successfully retrieved the status. |
| 400 | Non-retryable failure | Returned in case of multiple reasons. Check the description. |
| 401 | Non-retryable failure | Machine account is not authenticated. |
| 403 | Non-retryable failure | Machine account is not authorized to fetch the requested information. |
| 404 | Non-retryable failure | Request ID doesn't exist. |
| 429 | Retryable error | You exceeded the rate limit. |
| 500 | Retryable failure | Request failed with an internal server error. |