Perform an internal transaction
POST/v1/baas/transactions/internal-transfer
Starts an internal transaction between 2 wallets controlled by the customer.
Request
- application/json
Body
required
Internal transaction initialization data
Responses
- 201
- 400
- 403
- 404
The internal transaction successfully executed.
- application/json
- Schema
- Example (from schema)
Schema
data
object
Parent transaction ID (use with GET /wallet-transactions?parentTransactionId=X to find both sides)
Transaction type
Possible values: [PENDING, COMPLETED, FAILED, CANCELLED, PROCESSED]
Transaction status
Transfer amount
Asset code
source
object
required
Source wallet (funds debited)
Wallet ID
Transaction ID (use with GET /wallet-transactions/:id for lookup)
destination
object
required
Destination wallet (funds credited)
Wallet ID
Transaction ID (use with GET /wallet-transactions/:id for lookup)
Timestamp when the transaction was created
{
"traceId": "string",
"message": "string",
"data": {
"parentTransactionId": "550e8400-e29b-41d4-a716-446655440000",
"type": "INTERNAL_TRANSFER",
"status": "COMPLETED",
"amount": "100.00",
"asset": "USD",
"source": {
"walletId": "123e4567-e89b-12d3-a456-426614174000",
"transactionId": "550e8400-e29b-41d4-a716-446655440000"
},
"destination": {
"walletId": "123e4567-e89b-12d3-a456-426614174000",
"transactionId": "550e8400-e29b-41d4-a716-446655440000"
},
"createdAt": "2026-01-15T10:00:00Z"
}
}
Invalid request payload. This can happen if required fields are missing or have invalid formats.
- application/json
- Schema
- Example (from schema)
Schema
{
"traceId": "string",
"message": "string"
}
The API key is invalid or the client does not have sufficient permissions.
- application/json
- Schema
- Example (from schema)
Schema
{
"traceId": "string",
"message": "string"
}
One of the specified resources was not found. Does not apply for empty result set.
- application/json
- Schema
- Example (from schema)
Schema
{
"traceId": "string",
"message": "string"
}