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.
curl -X POST "https://api.moov.io/accounts/{accountID}/transfers" \
-H "Authorization: Bearer {token}" \
-H "X-Moov-Version: v2026.10.00" \
-d '{
"source": {
"paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2"
},
"destination": {
"paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf"
},
"amount": {
"currency": "USD",
"valueDecimal": "329.45"
},
"amountDetails": {
"tip": {
"currency": "USD",
"valueDecimal": "3.50"
},
"tax": {
"currency": "USD",
"valueDecimal": "8.25"
}
},
"description": "Transfer from card to wallet",
"metadata": {
"optional": "metadata"
}
}'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.",
})
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",
valueDecimal: "329.45",
},
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();declare(strict_types=1);
require 'vendor/autoload.php';
use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;
$sdk = MoovPhp\Moov::builder()
->setSecurity(
new Components\Security(
username: '',
password: '',
)
)
->build();
$createTransfer = new Components\CreateTransfer(
source: new Components\CreateTransferSource(
paymentMethodID: '9506dbf6-4208-44c3-ad8a-e4431660e1f2',
),
destination: new Components\CreateTransferDestination(
paymentMethodID: '3f9969cf-a1f3-4d83-8ddc-229a506651cf',
),
amount: new Components\AmountDecimal(
currency: 'USD',
valueDecimal: '329.45',
),
description: 'Transfer from card to wallet',
metadata: [
'optional' => 'metadata',
],
amountDetails: new Components\CreateTransferAmountDetails(
tip: new Components\AmountDecimal(
currency: 'USD',
valueDecimal: '3.50',
),
tax: new Components\AmountDecimal(
currency: 'USD',
valueDecimal: '8.25',
),
),
);
$response = $sdk->transfers->create(
xIdempotencyKey: 'd6903402-776f-48d6-8fba-0358959d34e5',
accountID: 'ea9f2225-403b-4e2c-93b0-0eda090ffa65',
createTransfer: $createTransfer
);
if ($response->createdTransfer !== null) {
// handle response
}package hello.world;
import io.moov.sdk.Moov;
import io.moov.sdk.models.components.*;
import io.moov.sdk.models.errors.*;
import io.moov.sdk.models.operations.CreateTransferResponse;
import java.lang.Exception;
import java.util.Map;
public class Application {
public static void main(String[] args) throws GenericError, Transfer, TransferValidationError, Exception {
Moov sdk = Moov.builder()
.security(Security.builder()
.username("")
.password("")
.build())
.build();
CreateTransferResponse res = sdk.transfers().create()
.xIdempotencyKey("d6903402-776f-48d6-8fba-0358959d34e5")
.accountID("ea9f2225-403b-4e2c-93b0-0eda090ffa65")
.createTransfer(CreateTransfer.builder()
.source(CreateTransferSource.builder()
.paymentMethodID("9506dbf6-4208-44c3-ad8a-e4431660e1f2")
.build())
.destination(CreateTransferDestination.builder()
.paymentMethodID("3f9969cf-a1f3-4d83-8ddc-229a506651cf")
.build())
.amount(AmountDecimal.builder()
.currency("USD")
.valueDecimal("329.45")
.build())
.description("Transfer from card to wallet")
.metadata(Map.ofEntries(
Map.entry("optional", "metadata")))
.amountDetails(CreateTransferAmountDetails.builder()
.tip(AmountDecimal.builder()
.currency("USD")
.valueDecimal("3.50")
.build())
.tax(AmountDecimal.builder()
.currency("USD")
.valueDecimal("8.25")
.build())
.build())
.build())
.call();
if (res.createdTransfer().isPresent()) {
System.out.println(res.createdTransfer().get());
}
}
}from moovio_sdk import Moov
from moovio_sdk.models import components
with Moov(
security=components.Security(
username="",
password="",
),
) as moov:
res = moov.transfers.create(x_idempotency_key="d6903402-776f-48d6-8fba-0358959d34e5", account_id="ea9f2225-403b-4e2c-93b0-0eda090ffa65", source={
"payment_method_id": "9506dbf6-4208-44c3-ad8a-e4431660e1f2",
}, destination={
"payment_method_id": "3f9969cf-a1f3-4d83-8ddc-229a506651cf",
}, amount={
"currency": "USD",
"value_decimal": "329.45",
}, facilitator_fee=components.CreateTransferFacilitatorFee(
total=components.AmountDecimal(
currency="USD",
value_decimal="12.987654321",
),
markup=components.AmountDecimal(
currency="USD",
value_decimal="12.987654321",
),
), description="Transfer from card to wallet", metadata={
"optional": "metadata",
}, line_items={
"items": [
{
"name": "<value>",
"base_price": {
"currency": "USD",
"value_decimal": "12.987654321",
},
"quantity": 666094,
"options": [
{
"name": "<value>",
"quantity": 611009,
"price_modifier": {
"currency": "USD",
"value_decimal": "12.987654321",
},
},
],
},
],
}, amount_details=components.CreateTransferAmountDetails(
tip=components.AmountDecimal(
currency="USD",
value_decimal="3.50",
),
tax=components.AmountDecimal(
currency="USD",
value_decimal="8.25",
),
))
# Handle response
print(res)require 'moov_ruby'
Models = ::Moov::Models
s = ::Moov::Client.new(
security: Models::Components::Security.new(
username: '',
password: ''
)
)
res = s.transfers.create(x_idempotency_key: 'd6903402-776f-48d6-8fba-0358959d34e5', account_id: 'ea9f2225-403b-4e2c-93b0-0eda090ffa65', create_transfer: Models::Components::CreateTransfer.new(
source: Models::Components::CreateTransferSource.new(
payment_method_id: '9506dbf6-4208-44c3-ad8a-e4431660e1f2'
),
destination: Models::Components::CreateTransferDestination.new(
payment_method_id: '3f9969cf-a1f3-4d83-8ddc-229a506651cf'
),
amount: Models::Components::AmountDecimal.new(
currency: 'USD',
value_decimal: '329.45'
),
description: 'Transfer from card to wallet',
metadata: {
'optional' => 'metadata',
},
amount_details: Models::Components::CreateTransferAmountDetails.new(
tip: Models::Components::AmountDecimal.new(
currency: 'USD',
value_decimal: '3.50'
),
tax: Models::Components::AmountDecimal.new(
currency: 'USD',
value_decimal: '8.25'
)
)
))
unless res.created_transfer.nil?
# handle response
endusing Moov.Sdk;
using Moov.Sdk.Models.Components;
using System.Collections.Generic;
var sdk = new MoovClient(security: new Security() {
Username = "",
Password = "",
});
var res = await sdk.Transfers.CreateAsync(
xIdempotencyKey: "d6903402-776f-48d6-8fba-0358959d34e5",
accountID: "ea9f2225-403b-4e2c-93b0-0eda090ffa65",
body: new CreateTransfer() {
Source = new CreateTransferSource() {
PaymentMethodID = "9506dbf6-4208-44c3-ad8a-e4431660e1f2",
},
Destination = new CreateTransferDestination() {
PaymentMethodID = "3f9969cf-a1f3-4d83-8ddc-229a506651cf",
},
Amount = new AmountDecimal() {
Currency = "USD",
ValueDecimal = "329.45",
},
Description = "Transfer from card to wallet",
Metadata = new Dictionary<string, string>() {
{ "optional", "metadata" },
},
AmountDetails = new CreateTransferAmountDetails() {
Tip = new AmountDecimal() {
Currency = "USD",
ValueDecimal = "3.50",
},
Tax = new AmountDecimal() {
Currency = "USD",
ValueDecimal = "8.25",
},
},
}
);
// handle response{
"createdOn": "2025-01-21T21:32:16Z",
"options": {},
"processingDetails": {},
"transferID": "d835gf30-4b19-4850-a9b2-c0624c41ecb3",
"transferType": "wallet"
}{
"createdOn": "2025-01-21T21:32:16Z",
"description": "Transfer from card to wallet",
"destination": {
"account": {
"accountID": "34233b72-780c-4a0d-8b08-cbbe23k878f8",
"displayName": "Whole Body Fitness",
"email": "john@wholebodyfitness.io"
},
"paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf",
"paymentMethodType": "moov-wallet",
"wallet": {
"partnerAccountID": "65b57f28-49e9-4afb-9bf6-7e4fb6444917",
"walletID": "744b2e78-8cc8-4a6a-af42-611e3b844503",
"walletType": "general"
}
},
"options": {
"cardPayment": {
"dynamicDescriptor": "WhlBdy *Yoga 11-12"
}
},
"processingDetails": {
"cardPayment": {
"status": "confirmed"
}
},
"source": {
"account": {
"accountID": "7e4b26c2-b399-49ef-8390-50e1ea44d550",
"displayName": "Jules Jackson",
"email": "jules@julesjackson.com"
},
"card": {
"billingAddress": {
"postalCode": "80301"
},
"bin": "400020",
"brand": "Visa",
"cardAccountUpdater": {},
"cardID": "aefd5563-93c6-413c-875e-1bd0ebfc116d",
"cardType": "credit",
"cardVerification": {
"accountName": {
"firstName": "unavailable",
"fullName": "unavailable",
"lastName": "unavailable",
"middleName": "unavailable"
},
"addressLine1": "unavailable",
"cvv": "unavailable",
"postalCode": "unavailable"
},
"domesticPullFromCard": "supported",
"domesticPushToCard": "standard",
"expiration": {
"month": "01",
"year": "28"
},
"fingerprint": "2f5d782ceef1c3bd31ed5...",
"holderName": "Jules Jackson",
"issuer": "Moov Visa Sandbox",
"issuerCountry": "US",
"lastFourCardNumber": "2000"
},
"paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2",
"paymentMethodType": "card-payment"
},
"status": "pending",
"transferID": "d835gf30-4b19-4850-a9b2-c0624c41ecb3",
"transferType": "card-payment"
}Response headers
x-request-id
string
required
{
"transferID": "string",
"createdOn": "2019-08-24T14:15:22Z"
}Response headers
x-request-id
string
required
{
"amount": {
"currency": "USD",
"valueDecimal": "329.45"
},
"amountDetails": {
"tax": {
"currency": "USD",
"valueDecimal": "8.25"
},
"tip": {
"currency": "USD",
"valueDecimal": "3.50"
}
},
"createdOn": "2025-01-21T21:32:16Z",
"description": "Transfer from card to wallet",
"destination": {
"account": {
"accountID": "34233b72-780c-4a0d-8b08-cbbe23k878f8",
"displayName": "Whole Body Fitness",
"email": "john@wholebodyfitness.io"
},
"paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf",
"paymentMethodType": "moov-wallet",
"wallet": {
"partnerAccountID": "65b57f28-49e9-4afb-9bf6-7e4fb6444917",
"walletID": "744b2e78-8cc8-4a6a-af42-611e3b844503",
"walletType": "general"
}
},
"moovFees": [
{
"accountID": "7e4b26c2-b399-49ef-8390-50e1ea44d550",
"feeIDs": [
"9d957d33-1a9a-47aa-9460-fe1a90f003dd"
],
"totalAmount": {
"currency": "USD",
"valueDecimal": "0.10"
},
"transferParty": "source"
}
],
"options": {
"cardPayment": {
"dynamicDescriptor": "WhlBdy *Yoga 11-12"
}
},
"processingDetails": {
"cardPayment": {
"authorizationCode": "A1B2C3",
"networkTransactionID": "123456789012345",
"status": "confirmed"
}
},
"source": {
"account": {
"accountID": "7e4b26c2-b399-49ef-8390-50e1ea44d550",
"displayName": "Jules Jackson",
"email": "jules@julesjackson.com"
},
"card": {
"billingAddress": {
"postalCode": "80301"
},
"bin": "400020",
"brand": "Visa",
"cardAccountUpdater": {},
"cardID": "aefd5563-93c6-413c-875e-1bd0ebfc116d",
"cardType": "credit",
"cardVerification": {
"accountName": {
"firstName": "unavailable",
"fullName": "unavailable",
"lastName": "unavailable",
"middleName": "unavailable"
},
"addressLine1": "unavailable",
"cvv": "unavailable",
"postalCode": "unavailable"
},
"domesticPullFromCard": "supported",
"domesticPushToCard": "standard",
"expiration": {
"month": "01",
"year": "28"
},
"fingerprint": "2f5d782ceef1c3bd31ed5...",
"holderName": "Jules Jackson",
"issuer": "Moov Visa Sandbox",
"issuerCountry": "US",
"lastFourCardNumber": "2000"
},
"paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2",
"paymentMethodType": "card-payment"
},
"status": "pending",
"transferID": "d835gf30-4b19-4850-a9b2-c0624c41ecb3",
"transferType": "card-payment"
}Response headers
x-request-id
string
required
{
"error": "string"
}Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
{
"amount": {
"currency": "USD",
"valueDecimal": "329.45"
},
"amountDetails": {
"tax": {
"currency": "USD",
"valueDecimal": "8.25"
},
"tip": {
"currency": "USD",
"valueDecimal": "3.50"
}
},
"createdOn": "2025-01-21T21:32:16Z",
"description": "Transfer from card to wallet",
"destination": {
"account": {
"accountID": "34233b72-780c-4a0d-8b08-cbbe23k878f8",
"displayName": "Whole Body Fitness",
"email": "john@wholebodyfitness.io"
},
"paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf",
"paymentMethodType": "moov-wallet",
"wallet": {
"partnerAccountID": "65b57f28-49e9-4afb-9bf6-7e4fb6444917",
"walletID": "744b2e78-8cc8-4a6a-af42-611e3b844503",
"walletType": "general"
}
},
"moovFees": [
{
"accountID": "7e4b26c2-b399-49ef-8390-50e1ea44d550",
"feeIDs": [
"9d957d33-1a9a-47aa-9460-fe1a90f003dd"
],
"totalAmount": {
"currency": "USD",
"valueDecimal": "0.10"
},
"transferParty": "source"
}
],
"options": {
"cardPayment": {
"dynamicDescriptor": "WhlBdy *Yoga 11-12"
}
},
"processingDetails": {
"cardPayment": {
"authorizationCode": "A1B2C3",
"networkTransactionID": "123456789012345",
"status": "confirmed"
}
},
"source": {
"account": {
"accountID": "7e4b26c2-b399-49ef-8390-50e1ea44d550",
"displayName": "Jules Jackson",
"email": "jules@julesjackson.com"
},
"card": {
"billingAddress": {
"postalCode": "80301"
},
"bin": "400020",
"brand": "Visa",
"cardAccountUpdater": {},
"cardID": "aefd5563-93c6-413c-875e-1bd0ebfc116d",
"cardType": "credit",
"cardVerification": {
"accountName": {
"firstName": "unavailable",
"fullName": "unavailable",
"lastName": "unavailable",
"middleName": "unavailable"
},
"addressLine1": "unavailable",
"cvv": "unavailable",
"postalCode": "unavailable"
},
"domesticPullFromCard": "supported",
"domesticPushToCard": "standard",
"expiration": {
"month": "01",
"year": "28"
},
"fingerprint": "2f5d782ceef1c3bd31ed5...",
"holderName": "Jules Jackson",
"issuer": "Moov Visa Sandbox",
"issuerCountry": "US",
"lastFourCardNumber": "2000"
},
"paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2",
"paymentMethodType": "card-payment"
},
"status": "pending",
"transferID": "d835gf30-4b19-4850-a9b2-c0624c41ecb3",
"transferType": "card-payment"
}Response headers
x-request-id
string
required
{
"amount": "string",
"source": "string",
"sourcePaymentMethodID": "string",
"destinationPaymentMethodID": "string",
"description": "string",
"FacilitatorFee.TotalDecimal": "string",
"FacilitatorFee.MarkupDecimal": "string",
"metadata": "string",
"foreignID": "string",
"lineItems": {
"items": {
"property1": {
"productID": "string",
"name": "string",
"basePrice": {
"currency": "string",
"valueDecimal": "string"
},
"options": {
"property1": {
"name": "string",
"group": "string",
"priceModifier": {
"currency": "string",
"valueDecimal": "string"
},
"quantity": "string",
"imageIDs": "string"
},
"property2": {
"name": "string",
"group": "string",
"priceModifier": {
"currency": "string",
"valueDecimal": "string"
},
"quantity": "string",
"imageIDs": "string"
}
},
"quantity": "string",
"imageIDs": "string"
},
"property2": {
"productID": "string",
"name": "string",
"basePrice": {
"currency": "string",
"valueDecimal": "string"
},
"options": {
"property1": {
"name": "string",
"group": "string",
"priceModifier": {
"currency": "string",
"valueDecimal": "string"
},
"quantity": "string",
"imageIDs": "string"
},
"property2": {
"name": "string",
"group": "string",
"priceModifier": {
"currency": "string",
"valueDecimal": "string"
},
"quantity": "string",
"imageIDs": "string"
}
},
"quantity": "string",
"imageIDs": "string"
}
}
},
"amountDetails": {
"tip": "string",
"tax": "string",
"surcharge": "string"
}
}Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Headers
X-Moov-Version
string
v2026.08.00 uses v2026.07.00.
A malformed value, such as 2022, returns a 404 response.
v2026.10.00
x-idempotency-key
string
required
x-wait-for
string
rail-response
Path parameters
accountID
string
required
Body
amount
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
destination
object
required
Show child attributes
paymentMethodID
string
required
achDetails
object
Show child attributes
addenda
array<object>
Show child attributes
record
string
<=80 characters
companyEntryDescription
string
[4 to 10] characters
originatingCompanyName
string
[4 to 16] characters
cardDetails
object
Show child attributes
dynamicDescriptor
string
[4 to 22] characters
payoutType
string
loyalty
scheduledDeliveryOn
string<date-time>
wireDetails
object
Show child attributes
beneficiaryReference
string
<=15 characters
source
object
required
paymentMethodID or a transferID.
Show child attributes
achDetails
object
Show child attributes
addenda
array<object>
Show child attributes
record
string
<=80 characters
companyEntryDescription
string
[4 to 10] characters
debitHoldPeriod
string<enum>
no-hold,
1-day,
2-days
originatingCompanyName
string
[4 to 16] characters
secCode
string<enum>
WEB,
PPD,
CCD,
TEL
cardDetails
object
Show child attributes
dynamicDescriptor
string
[4 to 22] characters
transactionSource
string<enum>
Specifies the nature and initiator of a transaction.
Crucial for recurring and merchant-initiated transactions as per card scheme rules. Omit for customer-initiated e-commerce transactions.
first-recurring,
recurring,
unscheduled
paymentMethodID
string
paymentToken
string
transferID
string
transferID is used to create a transfer group,
associating the new transfer with a parent transfer.
amountDetails
object
Show child attributes
surcharge
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
tax
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
tip
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
description
string
<=256 characters
facilitatorFee
object
Show child attributes
markup
object
total or markup can be set.
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
total
object
total or markup can be set.
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
feePaidBy
object
Show child attributes
payout
string
source.
source,
destination
foreignID
string
lineItems
object
Show child attributes
items
array<object>
required
Show child attributes
basePrice
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
imageIDs
array<string>
deprecated
name
string
[1 to 150] characters
options
array<object>
Show child attributes
group
string
<=100 characters
imageIDs
array<string>
deprecated
name
string
[1 to 150] characters
priceModifier
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
quantity
integer<int32>
productID
string
quantity
integer<int32>
metadata
object
Response
createdOn
string<date-time>
required
options
object
required
Show child attributes
achCredit
object
Show child attributes
addenda
array<object>
Show child attributes
isMasked
boolean
record
string
<=80 characters
companyEntryDescription
string
[4 to 10] characters
originatingCompanyName
string
[4 to 16] characters
achDebit
object
Show child attributes
addenda
array<object>
Show child attributes
isMasked
boolean
record
string
<=80 characters
companyEntryDescription
string
[4 to 10] characters
debitHoldPeriod
string<enum>
no-hold,
1-day,
2-days
originatingCompanyName
string
[4 to 16] characters
secCode
string<enum>
WEB,
PPD,
CCD,
TEL
cardPayment
object
Show child attributes
dynamicDescriptor
string
[4 to 22] characters
transactionSource
string<enum>
Specifies the nature and initiator of a transaction.
Crucial for recurring and merchant-initiated transactions as per card scheme rules. Omit for customer-initiated e-commerce transactions.
first-recurring,
recurring,
unscheduled
pullFromCard
object
Show child attributes
dynamicDescriptor
string
[4 to 22] characters
transactionSource
string<enum>
Specifies the nature and initiator of a transaction.
Crucial for recurring and merchant-initiated transactions as per card scheme rules. Omit for customer-initiated e-commerce transactions.
first-recurring,
recurring,
unscheduled
pushToCard
object
Show child attributes
dynamicDescriptor
string
[4 to 22] characters
wire
object
Show child attributes
beneficiaryReference
string
<=15 characters
processingDetails
object
required
Show child attributes
achCredit
object
Show child attributes
status
string<enum>
required
,
initiated,
originated,
corrected,
returned,
completed,
canceled
traceNumber
string
<=15 characters
required
correction
object
Show child attributes
code
string
description
string
reason
string
return
object
Show child attributes
code
string
description
string
reason
string
achDebit
object
Show child attributes
status
string<enum>
required
,
initiated,
originated,
corrected,
returned,
completed,
canceled
traceNumber
string
<=15 characters
required
correction
object
Show child attributes
code
string
description
string
reason
string
return
object
Show child attributes
code
string
description
string
reason
string
cardPayment
object
Show child attributes
authorizationCode
string
failureCode
string<enum>
call-issuer,
do-not-honor,
processing-error,
invalid-transaction,
invalid-amount,
no-such-issuer,
reenter-transaction,
cvv-mismatch,
lost-or-stolen,
insufficient-funds,
invalid-card-number,
invalid-merchant,
expired-card,
incorrect-pin,
transaction-not-allowed,
suspected-fraud,
amount-limit-exceeded,
velocity-limit-exceeded,
revocation-of-authorization,
card-not-activated,
issuer-not-available,
could-not-route,
cardholder-account-closed,
account-closed,
account-not-activated,
authentication-failed,
authentication-required,
cardholder-action-required,
format-error,
invalid-pin,
offline-approved,
offline-declined,
partial-approval,
payment-stopped,
pin-required,
record-not-found,
surcharge-not-permitted,
transaction-reversed,
verification-failed,
unknown-issue,
duplicate-transaction
networkTransactionID
string
retrievalReferenceNumber
string
status
string<enum>
initiated,
confirmed,
canceled,
settled,
failed,
completed
instantBankCredit
object
Show child attributes
network
string<enum>
required
fednow,
rtp
status
string<enum>
required
initiated,
completed,
failed,
accepted-without-posting
endToEndID
string
failureCode
string<enum>
processing-error,
invalid-account,
account-closed,
account-blocked,
invalid-field,
transaction-not-supported,
limit-exceeded,
invalid-amount,
customer-deceased,
participant-not-available,
other
networkResponseCode
string
pullFromCard
object
Show child attributes
status
string<enum>
required
initiated,
failed,
completed
authorizationCode
string
failureCode
string<enum>
call-issuer,
do-not-honor,
processing-error,
invalid-transaction,
invalid-amount,
no-such-issuer,
reenter-transaction,
cvv-mismatch,
lost-or-stolen,
insufficient-funds,
invalid-card-number,
invalid-merchant,
expired-card,
incorrect-pin,
transaction-not-allowed,
suspected-fraud,
amount-limit-exceeded,
velocity-limit-exceeded,
revocation-of-authorization,
card-not-activated,
issuer-not-available,
could-not-route,
cardholder-account-closed,
account-closed,
account-not-activated,
authentication-failed,
authentication-required,
cardholder-action-required,
format-error,
invalid-pin,
offline-approved,
offline-declined,
partial-approval,
payment-stopped,
pin-required,
record-not-found,
surcharge-not-permitted,
transaction-reversed,
verification-failed,
unknown-issue,
duplicate-transaction
networkResponseCode
string
networkTransactionID
string
pushToCard
object
Show child attributes
status
string<enum>
required
initiated,
deferred,
canceled,
failed,
completed
authorizationCode
string
failureCode
string<enum>
call-issuer,
do-not-honor,
processing-error,
invalid-transaction,
invalid-amount,
no-such-issuer,
reenter-transaction,
cvv-mismatch,
lost-or-stolen,
insufficient-funds,
invalid-card-number,
invalid-merchant,
expired-card,
incorrect-pin,
transaction-not-allowed,
suspected-fraud,
amount-limit-exceeded,
velocity-limit-exceeded,
revocation-of-authorization,
card-not-activated,
issuer-not-available,
could-not-route,
cardholder-account-closed,
account-closed,
account-not-activated,
authentication-failed,
authentication-required,
cardholder-action-required,
format-error,
invalid-pin,
offline-approved,
offline-declined,
partial-approval,
payment-stopped,
pin-required,
record-not-found,
surcharge-not-permitted,
transaction-reversed,
verification-failed,
unknown-issue,
duplicate-transaction
networkResponseCode
string
networkTransactionID
string
wire
object
Show child attributes
status
string<enum>
required
initiated,
completed,
failed,
returned
failureCode
string<enum>
processing-error,
invalid-account,
account-closed,
account-blocked,
invalid-field,
transaction-not-supported,
limit-exceeded,
invalid-amount,
other
networkResponseCode
string
transferID
string
required
transferType
string<enum>
required
card-payment,
push-to-card,
pull-from-card,
ach-debit,
ach-credit,
ach-debit-to-ach-credit,
instant-bank-credit,
wallet,
wire-credit
amount
object
card-payment transfer reports the approved authorization amount until a final capture is created.
For these transfers, when a final capture is created, this is updated to the cumulative captured amount.
For other transfer types, this is the transfer amount.
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
amountDetails
object
Show child attributes
surcharge
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
tax
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
tip
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
authorization
object
card-payment transfer.
card-payment transfer.
Show child attributes
authorizationID
string
required
authorizedAmount
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
capturableAmount
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
capturedAmount
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
expiresOn
string<date-time>
requestedAmount
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
completedOn
string<date-time>
description
string
<=128 characters
destination
object
Show child attributes
account
object
Show child attributes
accountID
string
required
displayName
string
required
string
required
applePay
object
Show child attributes
brand
string<enum>
required
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardDisplayName
string
required
User-friendly name of the tokenized card returned by Apple.
It usually contains the brand and the last four digits of the underlying card. There is no standard format.
cardType
string<enum>
required
debit,
credit,
prepaid,
unknown
dynamicLastFour
string
required
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
issuerCountry
string
bankAccount
object
Show child attributes
bankAccountID
string
required
bankAccountType
string<enum>
required
checking,
savings,
general-ledger,
loan
bankName
string
required
fingerprint
string
<=100 characters
required
Once the bank account is linked, we don't reveal the full bank account number.
The fingerprint acts as a way to identify whether two linked bank accounts are the same.
holderName
string
required
holderType
string<enum>
required
individual,
business,
guest
lastFourAccountNumber
string
required
routingNumber
string
required
status
string<enum>
required
new,
verified,
verificationFailed,
pending,
errored
updatedOn
string<date-time>
required
card
object
Show child attributes
billingAddress
object
required
Show child attributes
addressLine1
string
<=60 characters
addressLine2
string
<=32 characters
city
string
<=32 characters
country
string
<=2 characters
postalCode
string
<=10 characters
required
stateOrProvince
string
<=2 characters
bin
string
[6 to 8] characters
required
brand
string<enum>
required
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardID
string
required
cardType
string<enum>
required
debit,
credit,
prepaid,
unknown
cardVerification
object
required
Show child attributes
addressLine1
string
required
postalCode; the card network returns a single code covering both address fields.
noMatch,
match,
notChecked,
unavailable,
partialMatch
cvv
string
required
noMatch,
match,
notChecked,
unavailable,
partialMatch
postalCode
string
required
addressLine1; the card network returns a single code covering both address fields.
noMatch,
match,
notChecked,
unavailable,
partialMatch
accountName
object
Show child attributes
firstName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
fullName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
lastName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
middleName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
lastFourCardNumber
string
4 characters
required
cardAccountUpdater
object
Show child attributes
updateType
string<enum>
unspecified,
account-closed,
contact-cardholder,
expiration-update,
no-change,
no-match,
number-update
updatedOn
string<date-time>
cardOnFile
boolean
domesticPullFromCard
string<enum>
not-supported,
supported,
unknown
domesticPushToCard
string<enum>
not-supported,
standard,
fast-funds,
unknown
holderName
string
issuer
string
issuerCountry
string
merchantAccountID
string
googlePay
object
Show child attributes
brand
string<enum>
required
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardDisplayName
string
required
User-friendly name of the tokenized card returned by Google Pay.
It usually contains the last four digits of the underlying card. There is no standard format.
cardType
string<enum>
required
debit,
credit,
prepaid,
unknown
dynamicLastFour
string
4 characters
required
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
tokenID
string
required
authMethod
string<enum>
PAN_ONLY,
CRYPTOGRAM_3DS
issuerCountry
string
paymentMethodID
string
paymentMethodType
string<enum>
moov-wallet,
ach-debit-fund,
ach-debit-collect,
ach-credit-standard,
ach-credit-same-day,
rtp-credit,
card-payment,
push-to-card,
pull-from-card,
apple-pay,
card-present-payment,
instant-bank-credit,
push-to-apple-pay,
pull-from-apple-pay,
google-pay,
push-to-google-pay,
pull-from-google-pay,
wire-credit
wallet
object
Show child attributes
partnerAccountID
string<uuid>
required
walletID
string
required
walletType
string<enum>
required
Type of a wallet.
default: The system-generated wallet automatically created when an account is granted the wallet capability.general: An additional, user-defined wallet created via API or Dashboard.card-issuing: The system-generated wallet automatically created when an account is granted the card-issuing capability.
default,
general,
card-issuing
disputedAmount
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
facilitatorFee
object
Show child attributes
markup
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
total
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
failureReason
string<enum>
source-payment-error,
destination-payment-error,
wallet-insufficient-funds,
rejected-high-risk,
processing-error
foreignID
string
groupID
string
lineItems
object
Show child attributes
items
array<object>
required
Show child attributes
basePrice
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
images
array<object>
Show child attributes
altText
string
<=125 characters
imageID
string
link
string<uri>
publicID
string
Pattern
name
string
[1 to 150] characters
options
array<object>
Show child attributes
group
string
<=100 characters
images
array<object>
Show child attributes
altText
string
<=125 characters
imageID
string
link
string<uri>
publicID
string
Pattern
name
string
[1 to 150] characters
priceModifier
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
quantity
integer<int32>
productID
string
quantity
integer<int32>
metadata
object
moovFee
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
moovFeeDetails
object
Show child attributes
moovProcessing
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
cardScheme
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
discount
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
interchange
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
occurrenceID
string
paymentLinkCode
string
refundedAmount
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
scheduleID
string
source
object
Show child attributes
account
object
Show child attributes
accountID
string
required
displayName
string
required
string
required
applePay
object
Show child attributes
brand
string<enum>
required
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardDisplayName
string
required
User-friendly name of the tokenized card returned by Apple.
It usually contains the brand and the last four digits of the underlying card. There is no standard format.
cardType
string<enum>
required
debit,
credit,
prepaid,
unknown
dynamicLastFour
string
required
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
issuerCountry
string
bankAccount
object
Show child attributes
bankAccountID
string
required
bankAccountType
string<enum>
required
checking,
savings,
general-ledger,
loan
bankName
string
required
fingerprint
string
<=100 characters
required
Once the bank account is linked, we don't reveal the full bank account number.
The fingerprint acts as a way to identify whether two linked bank accounts are the same.
holderName
string
required
holderType
string<enum>
required
individual,
business,
guest
lastFourAccountNumber
string
required
routingNumber
string
required
status
string<enum>
required
new,
verified,
verificationFailed,
pending,
errored
updatedOn
string<date-time>
required
card
object
Show child attributes
billingAddress
object
required
Show child attributes
addressLine1
string
<=60 characters
addressLine2
string
<=32 characters
city
string
<=32 characters
country
string
<=2 characters
postalCode
string
<=10 characters
required
stateOrProvince
string
<=2 characters
bin
string
[6 to 8] characters
required
brand
string<enum>
required
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardID
string
required
cardType
string<enum>
required
debit,
credit,
prepaid,
unknown
cardVerification
object
required
Show child attributes
addressLine1
string
required
postalCode; the card network returns a single code covering both address fields.
noMatch,
match,
notChecked,
unavailable,
partialMatch
cvv
string
required
noMatch,
match,
notChecked,
unavailable,
partialMatch
postalCode
string
required
addressLine1; the card network returns a single code covering both address fields.
noMatch,
match,
notChecked,
unavailable,
partialMatch
accountName
object
Show child attributes
firstName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
fullName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
lastName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
middleName
string
noMatch,
match,
notChecked,
unavailable,
partialMatch
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
lastFourCardNumber
string
4 characters
required
cardAccountUpdater
object
Show child attributes
updateType
string<enum>
unspecified,
account-closed,
contact-cardholder,
expiration-update,
no-change,
no-match,
number-update
updatedOn
string<date-time>
cardOnFile
boolean
domesticPullFromCard
string<enum>
not-supported,
supported,
unknown
domesticPushToCard
string<enum>
not-supported,
standard,
fast-funds,
unknown
holderName
string
issuer
string
issuerCountry
string
merchantAccountID
string
googlePay
object
Show child attributes
brand
string<enum>
required
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardDisplayName
string
required
User-friendly name of the tokenized card returned by Google Pay.
It usually contains the last four digits of the underlying card. There is no standard format.
cardType
string<enum>
required
debit,
credit,
prepaid,
unknown
dynamicLastFour
string
4 characters
required
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
tokenID
string
required
authMethod
string<enum>
PAN_ONLY,
CRYPTOGRAM_3DS
issuerCountry
string
paymentMethodID
string
paymentMethodType
string<enum>
moov-wallet,
ach-debit-fund,
ach-debit-collect,
ach-credit-standard,
ach-credit-same-day,
rtp-credit,
card-payment,
push-to-card,
pull-from-card,
apple-pay,
card-present-payment,
instant-bank-credit,
push-to-apple-pay,
pull-from-apple-pay,
google-pay,
push-to-google-pay,
pull-from-google-pay,
wire-credit
terminalCard
object
Show child attributes
applicationID
string
applicationName
string
bin
string
[6 to 8] characters
brand
string<enum>
American Express,
Discover,
Mastercard,
Visa,
Unknown
cardType
string<enum>
debit,
credit,
prepaid,
unknown
entryMode
string<enum>
contactless
expiration
object
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
holderName
string
issuer
string
issuerCountry
string
lastFourCardNumber
string
4 characters
transferID
string
wallet
object
Show child attributes
partnerAccountID
string<uuid>
required
walletID
string
required
walletType
string<enum>
required
Type of a wallet.
default: The system-generated wallet automatically created when an account is granted the wallet capability.general: An additional, user-defined wallet created via API or Dashboard.card-issuing: The system-generated wallet automatically created when an account is granted the card-issuing capability.
default,
general,
card-issuing
status
string<enum>
created,
pending,
completed,
failed,
reversed,
queued,
awaiting-capture,
canceled
sweepID
string