Create a transfer | Moov Documentation

Create a transfer

Move money by providing the source, destination, and amount in the request body.

Read our transfers overview guide to learn more.

To access this endpoint using an access token you'll need to specify the /accounts/{accountID}/transfers.write scope.

POST

/accounts/{accountID}/transfers

Ask

curl -X POST "https://api.moov.io/accounts/{accountID}/transfers" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.07.00" \
  -d '{
  "source": {
    "paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2"
  },
  "destination": {
    "paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf"
  },
  "amount": {
    "currency": "USD",
    "value": 32945
  },
  "amountDetails": {
    "tip": {
      "currency": "USD",
      "valueDecimal": "3.50"
    },
    "tax": {
      "currency": "USD",
      "valueDecimal": "8.25"
    }
  },
  "description": "Transfer from card to wallet",
  "metadata": {
    "optional": "metadata"
  }
}'

Ask

mc, _ := moov.NewClient()

var accountID string // Partner account

mc.CreateTransfer(ctx, accountID, moov.CreateTransfer{
  Amount: moov.Amount{
    Currency: "USD",
    Value:    100, // $1.00
  },
  Destination: moov.CreateTransfer_Destination{
    PaymentMethodID: "string",
  },
  Source: moov.CreateTransfer_Source{
    PaymentMethodID: "string",
  },
  Description: "Optional transaction description.",
})

Ask

import { Moov } from "@moovio/sdk";

const moov = new Moov({
  security: {
    username: "",
    password: "",
  },
});

async function run() {
  const result = await moov.transfers.create({
    xIdempotencyKey: "d6903402-776f-48d6-8fba-0358959d34e5",
    accountID: "ea9f2225-403b-4e2c-93b0-0eda090ffa65",
    createTransfer: {
      source: {
        paymentMethodID: "9506dbf6-4208-44c3-ad8a-e4431660e1f2",
      },
      destination: {
        paymentMethodID: "3f9969cf-a1f3-4d83-8ddc-229a506651cf",
      },
      amount: {
        currency: "USD",
        value: 32945,
      },
      description: "Transfer from card to wallet",
      metadata: {
        "optional": "metadata",
      },
      amountDetails: {
        tip: {
          currency: "USD",
          valueDecimal: "3.50",
        },
        tax: {
          currency: "USD",
          valueDecimal: "8.25",
        },
      },
    },
  });

console.log(result);
}

run();

Ask

declare(strict_types=1);

require 'vendor/autoload.php';

use Moov\