---
title: "Create Disbursement Transfer"
method: POST
path: "/programs/{programCode}/accounts/{accountIdentifier}/disbursements/transfer/{transferIdentifier}"
tags: ["Disbursement"]
---

# Create Disbursement Transfer

`POST /programs/{programCode}/accounts/{accountIdentifier}/disbursements/transfer/{transferIdentifier}`

Performs a generic disbursement transfer for the specified account and program. Use for sending funds to a destination.

## Path parameters

- `programCode` string, required
- `accountIdentifier` string, required
- `transferIdentifier` string, required

## Headers

- `X-GD-RequestId` string, required

## Request body

- CreateTransferRequest — Create Transfer Request – Represents the data required to initiate a generic transfer. Used to request a transfer between source and destination URIs for a given account and transfer identifier.
  - `sourceUri` string, nullable — The URI of the source for the transfer.
  - `destinationUri` string, nullable — The URI of the destination for the transfer.
  - `currency` string, nullable — The currency code for the transfer (e.g., "USD").
  - `amount` string, nullable — The amount to transfer.
  - `description` string, nullable — The description of the transfer.
  - `transactionDate` string, nullable — The date of the transaction (format: yyyy-MM-dd).

## Response `201`

Created

- CreateTransferResponse — Create Transfer Response – Contains the result of a transfer creation operation. Used to confirm the creation and provide details of the transfer transaction.
  - `transaction` TransactionOutput — Transaction Output – Represents the details of a disbursement transaction. Used to provide transaction attributes such as identifiers, status, claim code, fees, allowed amount, funds availability, and description in transfer-related responses.
    - `transferIdentifier` string, nullable — The unique identifier of the transfer transaction.
    - `status` string, nullable — The current status of the transaction (e.g., "pending", "completed", "failed").
    - `claimCode` string, nullable — The claim code associated with the transaction, if applicable. Used for claimable disbursements such as cash pickup.
    - `claimExpirationDate` string, nullable — The expiration date of the claim code (format: yyyy-MM-dd), if applicable.
    - `fees` Fees[], nullable — The list of fees applied to the transaction. Each item contains the fee amount and fee type.
      - `feeamount` number, double — Fee Amount
      - `feetype` string — Fee Type
      - `requeststatuskey` integer — Request Status Key
    - `allowedAmount` string, nullable — The allowed amount for the transaction, as a string (e.g., "100.00").
    - `fundsAvailability` string, nullable — The funds availability status or date for the transaction.
    - `externalReferenceId` string, nullable — The external reference identifier associated with the transaction, if any.
    - `description` string, nullable — The description or memo for the transaction.
  - `responseDetails` ResponseDetail[], nullable — Required: A list of response details providing status codes, descriptions, and additional information about the result of the operation.
    - `code` integer — The primary status or error code for the response (e.g., 200 for success, 400 for validation error).
    - `subCode` integer, nullable — An optional subcode providing more granular detail about the response or error.
    - `description` string, nullable — A human-readable description of the response, error, or status.
    - `url` string, nullable — A URL linking to documentation or a web page with more information about the response code.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/greendot/apis/baas-apis.md) · [All operations](https://skmtc.net/greendot/apis/baas-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/greendot/baas-apis/versions/666553766b78/schema)
