Perform Partner Settlement
Partner route to perform a settlement. This endpoint allows partners without disputes enabled to create new settlements between client accounts, transferring funds according to the specified amounts.
Please note that this endpoint cannot be used by partners with disputes enabled, instead use the V2 Settlement endpoint. This is because dispute enabled partners must have an asyncronous settlement process to allow clients time to review the settlement and reconcile liabilities agains their trading activity on your platform. In the event that you cal this endpoint and you have disputes enabled, you will recieve a 403 response.
Error scenarios:
-
400: Invalid Request Error
-
Occurs when the request parameters are invalid or malformed.
-
Examples: Invalid format for settlement amounts, missing required fields, invalid signature.
-
401: Authentication Error or Incomplete Settlement
-
Occurs when the request is not authorized or cannot be completed immediately.
-
Examples: Caller is not a member of the enterprise, signature verification failed.
-
403: Permission Denied Error
-
Occurs when the authenticated partner doesn't have necessary permissions.
-
Examples: Enterprise does not have OES license, partner is enabled for disputes, partner is inactive.
-
409: Conflict Error
-
Occurs when the request conflicts with current state.
-
Examples: Settlement already exists with the same externalId and different properties.
-
500: Internal Server Error or Incomplete Settlement
-
Occurs when there's an unexpected server error processing the request.
-
Examples: Database connection issues, settlement initiated but not completed due to transient errors.
Requires access token scopes: settlement_network_read, settlement_network_write
Path Params
-
enterpriseIdstring required
Body Params
object
-
externalIdstring requiredExternal identifier for the settlement request. This should be unique for each settlement request and is used for idempotence and correlation with partner systems. -
notesstringOptional notes about the settlement. Can contain additional context or information about the purpose of the settlement. -
settlementAmountsobject requiredONE OF
-
<key>map of stringsvalue object
-
<key>stringFor unmapped settlement amounts where the amount can be either BigNumberFromString or BigIntFromString. This provides flexibility in how monetary values are represented in settlement requests.
-
-
<key>map of objectsvalue object
-
<key>map of stringsvalue object
-
<key>stringFor unmapped settlement amounts where the amount can be either BigNumberFromString or BigIntFromString. This provides flexibility in how monetary values are represented in settlement requests.
-
-
-
-
noncestring requiredA unique nonce value used for cryptographic operations. This provides additional security for settlement operations. -
payloadstring required -
signaturestring required
Responses
200
OK
Response Body
object
-
settlementobject requiredsettlement object
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
statusstring enum requiredcompleted -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
finalizedAtstring date-time required -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
401
Unauthorized
Response Body
ONE OF
-
settlementobject requiredONE OF
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
statusstring enum requiredpending -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
reasonstring required -
statusstring enum requiredfailed -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
reasonstring required -
statusstring enum requiredrejected -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
finalizedAtstring date-time required -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
-
errorstring required
403
Forbidden
Response Body
object
-
errorstring required
409
Conflict
Response Body
object
-
errorstring required
500
Internal Server Error
Response Body
ONE OF
-
settlementobject requiredONE OF
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
statusstring enum requiredpending -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
reasonstring required -
statusstring enum requiredfailed -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
idstring requiredThe unique identifier of the settlement. This is a UUID that uniquely identifies the settlement record. -
partnerIdstring requiredThe unique identifier of the partner the settlement is associated with. This is a UUID that uniquely identifies the partner. -
externalIdstring requiredExternal identifier provided by the partner when creating the settlement. -
reasonstring required -
statusstring enum requiredrejected -
settlementTypestring enum requiredThe type of settlement. Possible values are:
- onchain: The settlement is on-chain.
- offchain: The settlement is off-chain.
onchainoffchain -
reconciledboolean requiredWhether or not the settlement is reconciled against trade data. Currently there are no reconciled settlements. This field is always false. -
initiatedBystring requiredId of the user which initiated the settlement. -
notesstringThe notes associated with the settlement. This is a free-form text field that can contain any additional information about the settlement. -
createdAtstring date-time requiredThe date and time when the settlement was created. This is a timestamp in ISO 8601 format. -
updatedAtstring date-time requiredThe date and time when the settlement was last updated. This is a timestamp in ISO 8601 format. -
finalizedAtstring date-time required -
rtIdstringRouted transaction id associated with the settlement. This is a UUID that uniquely identifies the routed transaction. This field is only populated for on-chain settlements for partners with automation enabled. -
lossSLAAlertSentboolean requiredWhether or not an alert has been sent if loss settlement SLA is close to being breached. Only relevant for on-chain settlements. -
gainSLAAlertSentboolean requiredWhether or not an alert has been sent if gain settlement SLA is close to being breached. Only relevant for on-chain settlements. -
cutoffAtstring date-timeThe date and time of the newest trade being settled in the partner system. This is a timestamp in ISO 8601 format. This field is only populated for dispute enabled partners. -
disputedbooleanWhether or not a dispute was raised on this settlement.
-
-
errorstring required