Request Internal Transfer Approval
requestInternalTransfer
Submit a manager approval request to move funds between two spend accounts on the same Fluz account. When approved, Fluz executes the internal transfer.
This is different from account-to-account transfers. Use requestAccountTransfer when moving funds between Fluz accounts. See Request Account Transfer Approval.
Scopes
| Action | Scope |
|---|---|
| Create request | REQUEST_INTERNAL_TRANSFER |
| List requests | LIST_APPROVALS |
| Approve or decline | MANAGE_APPROVALS |
Webhook Identifiers
| Field | Value |
|---|---|
approvalType | PAYOUT |
approvalCode | 500402 |
Webhook events: APPROVAL_CREATE, APPROVAL_APPROVE, APPROVAL_DECLINE, and APPROVAL_HANDLER_ERROR on execution failure.
Internal transfers and account transfers share the same
approvalTypeandapprovalCode. Use the original request mutation or inspect the approval payload in your integration to distinguish them.
Create a Request
RequestInternalTransferInput
| Field | Type | Required | Description |
|---|---|---|---|
amount | Float | Yes | Amount to transfer. Must be greater than zero |
sourceUserCashBalanceId | UUID | Yes | Spend account to withdraw from |
destinationUserCashBalanceId | UUID | Yes | Spend account to deposit to |
Source and destination must be different spend accounts.
Sample Mutation
mutation {
requestInternalTransfer(
input: {
amount: 50.00
sourceUserCashBalanceId: "6d1b4b19-deef-42f5-80d7-ec34804ce090"
destinationUserCashBalanceId: "bb584e49-d030-4a6e-a5a9-1c34368cbaed"
}
) {
success
messageId
error {
code
message
}
}
}Sample Response
{
"data": {
"requestInternalTransfer": {
"success": true,
"messageId": "1234567890"
}
}
}Approve a Request
Call approveApprovalRequest with the approvalId. Requires MANAGE_APPROVALS.
mutation {
approveApprovalRequest(approvalId: "07df5653-43a8-4532-9881-3ab5857bbe12") {
success
approvalId
action
}
}On approval, Fluz transfers funds between the specified spend accounts.
Decline a Request
Call declineApprovalRequest with the approvalId. Requires MANAGE_APPROVALS.
mutation {
declineApprovalRequest(approvalId: "07df5653-43a8-4532-9881-3ab5857bbe12") {
success
approvalId
action
}
}No transfer is executed when a request is declined.
