API

SettlementAllocation

A settlement allocation request.

Operations

Every route this entity exposes. Each route links to its own reference on this page.

Method Route SDK operation Returns
POST /settlement/allocations create Settlement allocation request accepted
GET /settlement/allocations/{allocationId} load Settlement allocation details retrieved successfully

Examples

One example per SDK, generated from the API model. The argument names are the parameters and fields of this entity, and the values are placeholders. The examples are not compiled or executed.

Golang

Construct client as shown in the Golang setup, then call the operations:

settlement_allocation, err := client.SettlementAllocation(nil).Load(map[string]any{"id": "example_id"}, nil)
if err != nil {
    panic(err)
}
fmt.Println(settlement_allocation)
created, err := client.SettlementAllocation(nil).Create(map[string]any{"command": map[string]any{}, "createdAt": "example", "currency": "example", "expectedTotalAmount": 1, "file": "example", "id": "example", "paymentReference": "example", "state": "example", "updatedAt": "example"}, nil)
if err != nil {
    panic(err)
}
fmt.Println(created)

Lua

Construct client as shown in the Lua setup, then call the operations:

local settlement_allocation, err = client:SettlementAllocation():load({ id = "example_id" })
local created, err = client:SettlementAllocation():create({ command = {}, createdAt = "example", currency = "example", expectedTotalAmount = 1, file = "example", id = "example", paymentReference = "example", state = "example", updatedAt = "example" })

PHP

Construct client as shown in the PHP setup, then call the operations:

$settlement_allocation = $client->SettlementAllocation()->load(["id" => "example_id"]);
$created = $client->SettlementAllocation()->create(["command" => [], "createdAt" => "example", "currency" => "example", "expectedTotalAmount" => 1, "file" => "example", "id" => "example", "paymentReference" => "example", "state" => "example", "updatedAt" => "example"]);

Python

Construct client as shown in the Python setup, then call the operations:

settlement_allocation = client.SettlementAllocation().load({"id": "example_id"})
created = client.SettlementAllocation().create({ "command": {}, "createdAt": "example", "currency": "example", "expectedTotalAmount": 1, "file": "example", "id": "example", "paymentReference": "example", "state": "example", "updatedAt": "example" })

Ruby

Construct client as shown in the Ruby setup, then call the operations:

settlement_allocation = client.SettlementAllocation.load({ "id" => "example_id" })
created = client.SettlementAllocation.create({ "command" => {}, "createdAt" => "example", "currency" => "example", "expectedTotalAmount" => 1, "file" => "example", "id" => "example", "paymentReference" => "example", "state" => "example", "updatedAt" => "example" })

TypeScript

Construct client as shown in the TypeScript setup, then call the operations:

const settlement_allocation = await client.SettlementAllocation().load({ id: "example_id" })
const created = await client.SettlementAllocation().create({ command: {}, createdAt: "example", currency: "example", expectedTotalAmount: 1, file: "example", id: "example", paymentReference: "example", state: "example", updatedAt: "example" })

Fields

Field Type Required Description
command object Yes Command
createdAt string No Timestamp when the settlement allocation was created.
currency string No Currency code for the allocation (ISO 4217).
expectedTotalAmount number No Expected total amount for the allocation.
file string Yes Settlement Allocation Request (SAR) file containing payment intent details
id string No Unique identifier of the settlement allocation.
nextPageToken string No Token for fetching the next page of payment intents.
paymentIntents array No List of payment intents associated with the allocation.
paymentReference string No Unique payment reference for the settlement allocation.
state string No Current state of the settlement allocation.
updatedAt string No Timestamp when the settlement allocation was last updated.

create

POST /settlement/allocations

Operation ID: createFundsAllocationRequest.

Authentication: bearer token (ClientCredentialsToken) or API key in the header (HmacSignature) or API key in the header (HmacSignatureTimestamp).

Parameters

Parameter In Type Required Description
X-Signature header string Yes HMAC-SHA256 signature of the request content, hex-encoded in lowercase (64 characters). Must be sent together with X-Signature-Timestamp.
X-Signature-Timestamp header string Yes Unix timestamp in seconds at which X-Signature was generated, as a decimal string. This value is part of the signed canonical string, so it must exactly match the timestamp used to compute the signature. Requests more than 300 seconds from Wise server time are rejected in either direction.
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Request body

multipart/form-data

Property Type Required Description
command object Yes
command.currency string Yes Currency code
command.expectedTotalAmount number (decimal) Yes Expected total amount for the allocation
command.paymentReference string Yes Unique payment reference for the allocation request
file string (binary) Yes Settlement Allocation Request (SAR) file containing payment intent details

Responses

202: Settlement allocation request accepted

application/json

Property Type Required Description
createdAt string (date-time) Yes Creation timestamp
currency string Yes Currency code
expectedTotalAmount number (decimal) Yes Expected total amount
id string (uuid) Yes Unique identifier of the settlement allocation request
paymentReference string Yes Payment reference
state enum: NEW, MATCHING_FUNDS, MATCHED, MISMATCHED, PARTIALLY_COMPLETED, COMPLETED, ... Yes State of a funding allocation.
updatedAt string (date-time) Yes Last update timestamp
400: Invalid request. Signature failures are returned with this status and a detail field identifying the cause: | detail | Cause | | -------- | ----- | | Missing required X-Signature header | The X-Signature header was absent or blank. | | Missing required X-Signature-Timestamp header | The X-Signature-Timestamp header was absent or blank. | | Invalid timestamp format | X-Signature-Timestamp is not a whole number of seconds. | | Signature timestamp expired | The timestamp is more than 300 seconds from Wise server time, in either direction. | | Invalid signature encoding | X-Signature is not valid lowercase hexadecimal. | | Invalid signature | The signature did not match the request content. |
401: Unauthorized - missing or invalid authentication
403: Forbidden - insufficient permissions
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.

load

GET /settlement/allocations/{allocationId}

Operation ID: GetSettlementAllocation.

Authentication: bearer token (ClientCredentialsToken).

Parameters

Parameter In Type Required Description
allocationId path string Yes Unique identifier of the settlement allocation.
includePaymentIntents query boolean No Whether to include payment intents in the response.
pageToken query string No Token for fetching the next page of results.
pageSize query integer (int32) No Number of items per page.
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Responses

200: Settlement allocation details retrieved successfully

application/json

Property Type Required Description
createdAt string (date-time) No Timestamp when the settlement allocation was created.
currency string No Currency code for the allocation (ISO 4217).
expectedTotalAmount number (decimal) No Expected total amount for the allocation.
id string No Unique identifier of the settlement allocation.
nextPageToken string No Token for fetching the next page of payment intents. Null if no more pages.
paymentIntents array of object No List of payment intents associated with the allocation. Only included when includePaymentIntents is true.
paymentIntents[].allocationId string No Unique identifier of the associated settlement allocation in the UUID format.
paymentIntents[].allocationType enum: CREDIT, DEBIT No Type of allocation.
paymentIntents[].createdAt string (date-time) No Timestamp when the payment intent was created.
paymentIntents[].fundingSource enum: WISE_COLLECTION_ACCOUNT, PARTNER_DEFICIT_ACCOUNT, SPLIT, UNDETERMINED No Source of funding for the payment.
paymentIntents[].id string No Unique identifier of the payment intent in the UUID format.
paymentIntents[].partnerEntityId string No Partner entity identifier.
paymentIntents[].paymentReference string No Payment reference.
paymentIntents[].profileId string No Profile identifier.
paymentIntents[].reason string No Reason for the payment.
paymentIntents[].recipientType enum: SELLER, PARTNER_FEE No Type of recipient.
paymentIntents[].sourceAmount number (decimal) No Source amount of the payment.
paymentIntents[].sourceCurrency string No Source currency code (ISO 4217).
paymentIntents[].state enum: NEW, PARTIALLY_LEDGERED, LEDGERED, PARTIALLY_SETTLED, SETTLED, CANCELLED No Current state of the payment intent.
paymentIntents[].targetAmount number (decimal) No Target amount of the payment.
paymentIntents[].targetCurrency string No Target currency code (ISO 4217).
paymentIntents[].updatedAt string (date-time) No Timestamp when the payment intent was last updated.
paymentReference string No Unique payment reference for the settlement allocation.
state enum: NEW, MATCHING_FUNDS, MATCHED, MISMATCHED, PARTIALLY_COMPLETED, COMPLETED, ... No Current state of the settlement allocation.
updatedAt string (date-time) No Timestamp when the settlement allocation was last updated.
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.