Retrieve a transfer

Retrieve full transfer details such as the amount, source, and destination. Payment rail-specific details are included in the source and destination. Read our transfers overview guide to learn more.

To use this endpoint from the browser, you’ll need to specify the /accounts/{yourAccountID}/transfers.read scope when generating a token. The accountID included must be your accountID. You can find your accountID on the Business details page.
GET
/transfers/{transferID}
cURL Go JavaScript
1
2
curl -X GET "https://api.moov.io/transfers/{transferID}" \
  -H "Authorization: Bearer {token}" \
1
2
3
4
5
mc, _ := moov.NewClient()

var transferID string

mc.GetTransfer(ctx, transferID)
1
2
3
const moov = new Moov(credentialsObject);

const transfer = await moov.transfers.get(transferID);
200 429
Details of a transfer.
{
  "amount": {
    "currency": "USD",
    "value": 1204
  },
  "createdOn": "2023-09-09T14:15:22Z",
  "description": "Pay Instructor for May 15 Class",
  "destination": {
    "account": {
      "accountID": "3dfff852-927d-47e8-822c-2fffc57ff6b9",
      "displayName": "Whole Body Fitness",
      "email": "amanda@classbooker.dev"
    },
    "paymentMethodID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
    "paymentMethodType": "moov-wallet",
    "wallet": {
      "walletID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43"
    }
  },
  "facilitatorFee": {
    "markup": 0,
    "markupDecimal": "0.001",
    "total": 0,
    "totalDecimal": "0.001"
  },
  "groupID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
  "metadata": {
    "property1": "string",
    "property2": "string"
  },
  "source": {
    "account": {
      "accountID": "3dfff852-927d-47e8-822c-2fffc57ff6b9",
      "displayName": "Whole Body Fitness",
      "email": "amanda@classbooker.dev"
    },
    "achDetails": {
      "companyEntryDescription": "Gym Dues",
      "debitHoldPeriod": "2-days",
      "initiatedOn": "2023-09-09T14:16:35Z",
      "originatingCompanyName": "Whole Body Fit",
      "secCode": "WEB",
      "status": "initiated",
      "traceNumber": "124782618117"
    },
    "bankAccount": {
      "bankAccountID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
      "bankAccountType": "checking",
      "bankName": "Chase Bank",
      "fingerprint": "9948962d92a1ce40c9f918cd9ece3a22bde62fb325a2f1fe2e833969de672ba3",
      "holderName": "Jules Jackson",
      "holderType": "individual",
      "lastFourAccountNumber": "7000",
      "routingNumber": "string",
      "status": "new"
    },
    "paymentMethodID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
    "paymentMethodType": "ach-debit-collect",
    "transferID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43"
  },
  "status": "pending",
  "transferID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43"
}
{
  "amount": {
    "currency": "USD",
    "value": 10000
  },
  "completedOn": "2023-09-10T18:23:56Z",
  "createdOn": "2023-09-09T14:15:22Z",
  "description": "Collect monthly gym membership dues",
  "destination": {
    "account": {
      "accountID": "3dfff852-927d-47e8-822c-2fffc57ff6b9",
      "displayName": "Whole Body Fitness",
      "email": "amanda@classbooker.dev"
    },
    "paymentMethodID": "1ae0833b-dd11-4737-9671-fefc7863a3b4",
    "paymentMethodType": "moov-wallet",
    "wallet": {
      "walletID": "81fa4538-8e10-4499-9efd-c455863dae3e"
    }
  },
  "facilitatorFee": {
    "markup": 25,
    "markupDecimal": "0.249",
    "total": 127,
    "totalDecimal": "1.265"
  },
  "groupID": "e17b4be0-6979-4764-b0dc-9487f8fb3ef4",
  "moovFee": 223,
  "moovFeeDecimal": "2.23",
  "moovFeeDetails": {
    "cardScheme": "20.1575",
    "discount": "2.10",
    "moovProcessing": ".0567"
  },
  "refundedAmount": {
    "currency": "USD",
    "value": 10000
  },
  "refunds": [
    {
      "amount": {
        "currency": "USD",
        "value": 10000
      },
      "cardDetails": {
        "completedOn": "2023-09-14T15:20:44Z",
        "confirmedOn": "2023-09-13T10:25:22Z",
        "initiatedOn": "2023-09-13T08:16:22Z",
        "settledOn": "2023-09-14T15:15:40Z",
        "status": "completed"
      },
      "createdOn": "2023-09-13T08:15:22Z",
      "refundID": "d4963079-5b35-4d17-981e-8f851753f786",
      "status": "completed",
      "updatedOn": "2023-09-14T15:20:44Z"
    }
  ],
  "source": {
    "account": {
      "accountID": "4ac701aa-1d5d-4d6c-9319-e9de8a44f17d",
      "displayName": "Natalie Sharp",
      "email": "natalie@example.com"
    },
    "card": {
      "billingAddress": {
        "addressLine1": "123 Main Street",
        "addressLine2": "Apt 302",
        "city": "Boulder",
        "country": "US",
        "postalCode": "80301",
        "stateOrProvince": "CO"
      },
      "brand": "American Express",
      "cardID": "4e73fb4c-dc75-4be3-bd5d-7d578db12007",
      "cardType": "debit",
      "cardVerification": {
        "addressLine1": "match",
        "cvv": "match",
        "postalCode": "match"
      },
      "expiration": {
        "month": "01",
        "year": "25"
      },
      "fingerprint": "9948962d92a1ce40c9f918cd9ece3a22bde62fb325a2f1fe2e833969de672ba3",
      "holderName": "Natalie Sharp",
      "issuer": "GRINGOTTS BANK",
      "issuerCountry": "US",
      "lastFourCardNumber": "1234"
    },
    "cardDetails": {
      "completedOn": "2023-10-30T13:20:45Z",
      "confirmedOn": "2023-10-30T09:13:52Z",
      "feeProgram": "Visa Signature and Visa Infinite (Spend not-qualified) Product 1",
      "initiatedOn": "2023-10-30T09:15:22Z",
      "settledOn": "2023-10-30T13:11:20Z",
      "status": "completed",
      "transactionSource": "recurring"
    },
    "paymentMethodID": "9555d9b8-d1cf-4b71-8f0d-006397e0ec46",
    "paymentMethodType": "card-payment"
  },
  "status": "completed",
  "transferID": "e72b3a0d-fcb4-417c-93c3-4a34f242ae52"
}
Request was refused due to rate limiting.

Retry-After

number

Path parameters

transferID

string <uuid> required
Identifier for the transfer.

Query parameters

accountID

string <uuid>
Identifier for a connected account. Must be provided when using a token and the value of {accountID} in the scopes is a connected account.

Response

application/json
Details about the transfer.

amount

object required
An integer value representing money in a specific currency.
right_key Show child attributes

currency

string <=3 characters Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64>
Quantity in the smallest unit of the specified currency. In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

createdOn

string<date-time> <=24 characters required

status

string<enum> required
Current status of a transfer.
Possible values: created, pending, completed, failed, reversed, queued, canceled

transferID

string<uuid> <=36 characters required
UUID v4

completedOn

string<date-time> <=24 characters

description

string <=128 characters
A description of the transfer.

destination

object
right_key Show child attributes

account

object required
right_key Show child attributes

accountID

string<uuid> <=36 characters required
ID of account.

displayName

string <=64 characters required

email

string<email> <=255 characters required Pattern
Email address.

paymentMethodID

string<uuid> <=36 characters required
UUID v4

paymentMethodType

string<enum> required
The payment method type that represents a payment rail and directionality
Possible values: moov-wallet, ach-debit-fund, ach-debit-collect, ach-credit-standard, ach-credit-same-day, rtp-credit, card-payment, apple-pay, push-to-card, pull-from-card

achDetails

object
ACH specific details about the transaction.
right_key Show child attributes

status

string<enum> required
Status of the ACH lifecycle.
Possible values: initiated, originated, corrected, returned, completed

traceNumber

string <=15 characters required

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

completedOn

string<date-time> <=24 characters

correctedOn

string<date-time> <=24 characters

correction

object
right_key Show child attributes

code

string

description

string

reason

string

debitHoldPeriod

string<enum><enum>
An optional override of your default ACH hold period in banking days. The hold period must be longer than or equal to your default setting.
Possible values: no-hold, 1-day, 2-days

initiatedOn

string<date-time> <=24 characters

originatedOn

string<date-time> <=24 characters

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

return

object
right_key Show child attributes

code

string

description

string

reason

string

returnedOn

string<date-time> <=24 characters

secCode

string<enum>
Code used to identify the ACH authorization method.
Possible values: WEB, PPD, CCD, TEL

applePay

object
Describes an Apple Pay token on a Moov account.
right_key Show child attributes

brand

string<enum>
The card brand.
Possible values: American Express, Discover, Mastercard, Visa

cardDisplayName

string
User-friendly name of the tokenized card returned by Apple. It usually contains the brand and the last four digits of the underlying card for example, “Visa 1256”. There is no standard format.

cardType

string<enum>
The type of the card.
Possible values: debit, credit, prepaid, unknown

dynamicLastFour

string
The last four digits of the Apple Pay token, which may differ from the tokenized card’s last four digits

expiration

object
The expiration date of the card or token.
right_key Show child attributes

month

string 2 characters

year

string 2 characters

fingerprint

string <=100 characters
Uniquely identifies a linked payment card or token. For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user’s device. This field can be used to identify specific payment methods across multiple accounts on your platform.

bankAccount

object
Describes a bank account on a Moov account.
right_key Show child attributes

bankAccountID

string<uuid> <=36 characters
UUID v4

bankAccountType

string<enum>
The bank account type.
Possible values: checking, savings, general-ledger, loan

bankName

string

exceptionDetails

object
Reason for, and details related to, an errored or verificationFailed bank account status.
right_key Show child attributes

achReturnCode

string<enum>

The return code of an ACH transaction that caused the bank account status to change.

Codes:

  • R02 - Account Closed
  • R03 - No Account/Unable to Locate Account
  • R04 - Invalid Account Number
  • R05 - Improper Debit to Consumer Account
  • R07 - Authorization Revoked by Customer
  • R08 - Payment Stopped
  • R10 - Customer Advises Originator is Not Known or Authorized to Receiver and
  • R11 - Customer Advises Entry Not in Accordance with the Terms of the Authorization
  • R12 - Branch Sold to Another DFI
  • R13 - RDFI not qualified to participate
  • R14 - Representative payee deceased or unable to continue in that capacity
  • R15 - Beneficiary or bank account holder
  • R16 - Bank account frozen
  • R17 - Entry with Invalid Account Number Initiated Under Questionable Circumstances
  • R20 - Non-payment bank account
  • R23 - Credit entry refused by receiver
  • R29 - Corporate customer advises not authorized
  • R34 - Limited participation RDFI
  • R38 - Stop Payment on Source Document (Adjustment Entry)
  • R39 - Improper Source Document
Possible values: R02, R03, R04, R05, R07, R08, R10, R11, R12, R13, R14, R15, R16, R17, R20, R23, R29, R34, R38, R39

description

string
Details related to an errored or verificationFailed bank account status.

rtpRejectionCode

string<enum>

The rejection code of an RTP transaction that caused the bank account status to change.

Codes:

  • AC03 - Account Invalid
  • AC04 - Account Closed
  • AC06 - Account Blocked
  • AC14 - Creditor Account Type Invalid
  • AG01 - Transactions Forbidden On Account
  • AG03 - Transaction Type Not Supported
  • MD07 - Customer Deceased
Possible values: AC03, AC04, AC06, AC14, AG01, AG03, MD07

fingerprint

string <=100 characters
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

holderType

string<enum>
The type of holder on a funding source.
Possible values: individual, business

lastFourAccountNumber

string

paymentMethods

array

Includes any payment methods generated for a newly created bank account, removing the need to call the List Payment Methods endpoint following a successful Create BankAccount request.

NOTE: This field is only populated for Create BankAccount requests made with the X-Wait-For header.

right_key Show child attributes

paymentMethodID

string<uuid> <=36 characters
UUID v4

paymentMethodType

string<enum>
The payment method type that represents a payment rail and directionality
Possible values: moov-wallet, ach-debit-fund, ach-debit-collect, ach-credit-standard, ach-credit-same-day, rtp-credit, card-payment, apple-pay, push-to-card, pull-from-card

routingNumber

string

status

string<enum>
The bank account status.
Possible values: new, verified, verificationFailed, pending, errored

statusReason

string<enum>
The reason the bank account status changed to the current value.
Possible values: bank-account-created, verification-initiated, micro-deposit-attempts-exceeded, micro-deposit-expired, max-verification-failures, verification-attempts-exceeded, verification-expired, verification-successful, ach-debit-return, ach-credit-return, rtp-credit-failure, micro-deposit-return, admin-action, other

updatedOn

string<date-time> <=24 characters

card

object
Describes a card on a Moov account.
right_key Show child attributes

billingAddress

object
right_key Show child attributes

addressLine1

string <=60 characters required

city

string <=24 characters required

country

string <=2 characters required

postalCode

string <=5 characters required

stateOrProvince

string <=2 characters required

addressLine2

string <=32 characters

bin

string
The first six to eight digits of the card number, which identifies the financial institution that issued the card.

brand

string
The card brand.
Possible values: American Express, Discover, Mastercard, Visa

cardAccountUpdater

object
The results of the most recent card update request.
right_key Show child attributes

updateType

string<enum>
The results of the card update request.
Possible values: unspecified, account-closed, contact-cardholder, expiration-update, no-change, no-match, number-update

updatedOn

string<date-time> <=24 characters

cardCategory

string
The category or level of the card defined by the issuer. Examples include, but not limited to “REWARDS”, “TRADITIONAL REWARDS”, “CLASSIC”, and “CORPORATE PURCHASING”.

cardID

string<uuid> <=36 characters
UUID v4

cardOnFile

boolean
Indicates cardholder has authorized card to be stored for future payments.

cardType

string<enum>
The type of the card.
Possible values: debit, credit, prepaid, unknown

cardVerification

object
The results of submitting cardholder data to a card network for verification.
right_key Show child attributes

accountName

object
The results of submitting cardholder name to a card network for verification.
right_key Show child attributes

firstName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

fullName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

lastName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

middleName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

addressLine1

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

cvv

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

postalCode

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

commercial

boolean
If true, the card is for commercial use, or associated with a business. If false, the card is associated with a general consumer.

domesticPullFromCard

string
Indicates if the card supports domestic pull-from-card transfer.
Possible values: not-supported, supported, unknown

domesticPushToCard

string
Indicates which level of domestic push-to-card transfer is supported by the card, if any.
Possible values: not-supported, standard, fast-funds, unknown

expiration

object
The expiration date of the card or token.
right_key Show child attributes

month

string 2 characters

year

string 2 characters

fingerprint

string <=100 characters
Uniquely identifies a linked payment card or token. For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user’s device. This field can be used to identify specific payment methods across multiple accounts on your platform.

holderName

string
The name of the cardholder as it appears on the card.

issuer

string
Financial institution that issued the card.

issuerCountry

string
Country where the card was issued.

issuerPhone

string
Phone number of the issuer.

issuerURL

string
URL of the issuer.

lastFourCardNumber

string
Last four digits of the card number

merchantAccountID

string<uuid>
ID of the Moov account acting as a merchant or other entity authorized to store the card. Defaults to your platform account ID if cardOnFile is set to true and no other account is provided.

paymentMethods

array

Includes any payment methods generated for a newly linked card, removing the need to call the List Payment Methods endpoint following a successful Link Card request.

NOTE: This field is only populated for Link Card requests made with the X-Wait-For header.

right_key Show child attributes

paymentMethodID

string<uuid> <=36 characters
UUID v4

paymentMethodType

string<enum>
The payment method type that represents a payment rail and directionality
Possible values: moov-wallet, ach-debit-fund, ach-debit-collect, ach-credit-standard, ach-credit-same-day, rtp-credit, card-payment, apple-pay, push-to-card, pull-from-card

regulated

boolean
If true, the card issuing bank is regulated, and the scheme fees for debit transactions will be limited based on the Durbin Amendment. If false, the card issuing bank is not regulated, and the scheme fees will not be limited.

cardDetails

object
Card-specific details about the transaction.
right_key Show child attributes

status

string<enum> required
Status for card payment lifecycle.
Possible values: initiated, confirmed, canceled, settled, failed, completed

canceledOn

string<date-time> <=24 characters

completedOn

string<date-time> <=24 characters

confirmedOn

string<date-time> <=24 characters

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

failedOn

string<date-time> <=24 characters

failureCode

string<enum>
Possible values: 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, unknown-issue, duplicate-transaction

feeProgram

string
The program assigned by the card network that determines the interchange rate for the transfer.

initiatedOn

string<date-time> <=24 characters

interchangeQualification

string deprecated
DEPRECATED - The program assigned by the card network that determines the interchange rate for the transfer.

settledOn

string<date-time> <=24 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: Initial transaction in a recurring series or saving a card for future merchant-initiated charges
  • recurring: Regular, merchant-initiated scheduled transactions
  • unscheduled: Non-regular, merchant-initiated transactions like account top-ups
Possible values: first-recurring, recurring, unscheduled

rtpDetails

object
RTP specific details about the transaction.
right_key Show child attributes

status

string<enum> required
Status of the RTP lifecycle.
Possible values: initiated, completed, failed, accepted-without-posting

acceptedWithoutPostingOn

string<date-time> <=24 characters

completedOn

string<date-time> <=24 characters

failedOn

string<date-time> <=24 characters

failureCode

string<enum>
Status codes for RTP failures.
Possible values: processing-error, invalid-account, account-closed, account-blocked, invalid-field, transaction-not-supported, limit-exceeded, invalid-amount, customer-deceased, other

initiatedOn

string<date-time> <=24 characters

networkResponseCode

string
Code returned by rail network on failure.

wallet

object
A Moov wallet to store funds for transfers.
right_key Show child attributes

walletID

string<uuid> <=36 characters
UUID v4

disputedAmount

object
The total disputed amount for a card transfer.
An integer value representing money in a specific currency.
right_key Show child attributes

currency

string <=3 characters Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64>
Quantity in the smallest unit of the specified currency. In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

disputes

array
A list of disputes for a card transfer.
right_key Show child attributes

amount

object
An integer value representing money in a specific currency.
right_key Show child attributes

currency

string <=3 characters Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64>
Quantity in the smallest unit of the specified currency. In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

createdOn

string<date-time> <=24 characters

disputeID

string<uuid> <=36 characters
UUID v4

facilitatorFee

object
Fee you charged your customer for the transfer.
right_key Show child attributes

total

integer<int64> required
Total facilitator fee in cents.

totalDecimal

string required
Same as total, but a decimal-formatted numerical string that represents up to 9 decimal place precision.
A decimal-formatted numerical string that represents up to 9 decimal place precision.

markup

integer<int64>
Markup facilitator fee in cents.

markupDecimal

string
Same as markup, but a decimal-formatted numerical string that represents up to 9 decimal place precision.
A decimal-formatted numerical string that represents up to 9 decimal place precision.

failureReason

string<enum>
Reason for a transfer’s failure.
Possible values: source-payment-error, destination-payment-error, wallet-insufficient-funds, rejected-high-risk, processing-error

groupID

string<uuid> <=36 characters
UUID v4

metadata

object
Free-form key-value pair list. Useful for storing information that is not captured elsewhere.

moovFee

integer<int64>
Fees charged to your platform account for transfers.

moovFeeDecimal

string
Same as moovFee, but a decimal-formatted numerical string that represents up to 9 decimal place precision.

moovFeeDetails

object
Processing and pass-through costs that add up to the moovFee.
right_key Show child attributes

moovProcessing

string required
Moov processing fee. String type represents dollars with up to 9 decimal place precision.

cardScheme

string
Card scheme fees accrued during authorization and settlement. String type represents dollars with up to 9 decimal place precision.

discount

string
Network discount fee for American Express. String type represents dollars with up to 9 decimal place precision.

interchange

string
Network interchange fee for Visa, Mastercard, or Discover. String type represents dollars with up to 9 decimal place precision.

occurrenceID

string<uuid> <=36 characters
UUID v4

refundedAmount

object
The total refunded amount for a card transfer, representing one refunded amount, or multiple partial refunded amounts. Contains an integer value and its currency. See the refunds array for additional details.
An integer value representing money in a specific currency.
right_key Show child attributes

currency

string <=3 characters Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64>
Quantity in the smallest unit of the specified currency. In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

refunds

array
A list of refunds for a card transfer.
right_key Show child attributes

amount

object
An integer value representing money in a specific currency.
right_key Show child attributes

currency

string <=3 characters Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64>
Quantity in the smallest unit of the specified currency. In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

cardDetails

object
right_key Show child attributes

status

string<enum> required
Status of the refund.
Possible values: initiated, confirmed, settled, failed, completed

completedOn

string<date-time> <=24 characters

confirmedOn

string<date-time> <=24 characters

failedOn

string<date-time> <=24 characters

failureCode

string<enum>
Possible values: 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, unknown-issue, duplicate-transaction

initiatedOn

string<date-time> <=24 characters

settledOn

string<date-time> <=24 characters

createdOn

string<date-time> <=24 characters

refundID

string<uuid> <=36 characters
UUID v4

status

string<enum>
Possible values: created, pending, completed, failed

updatedOn

string<date-time> <=24 characters

scheduleID

string<uuid> <=36 characters
UUID v4

source

object
right_key Show child attributes

account

object required
right_key Show child attributes

accountID

string<uuid> <=36 characters required
ID of account.

displayName

string <=64 characters required

email

string<email> <=255 characters required Pattern
Email address.

paymentMethodID

string<uuid> <=36 characters required
UUID v4

paymentMethodType

string<enum> required
The payment method type that represents a payment rail and directionality
Possible values: moov-wallet, ach-debit-fund, ach-debit-collect, ach-credit-standard, ach-credit-same-day, rtp-credit, card-payment, apple-pay, push-to-card, pull-from-card

achDetails

object
ACH specific details about the transaction.
right_key Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

completedOn

string<date-time> <=24 characters

correctedOn

string<date-time> <=24 characters

correction

object
right_key Show child attributes

code

string

description

string

reason

string

debitHoldPeriod

string<enum><enum>
An optional override of your default ACH hold period in banking days. The hold period must be longer than or equal to your default setting.
Possible values: no-hold, 1-day, 2-days

initiatedOn

string<date-time> <=24 characters

originatedOn

string<date-time> <=24 characters

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

return

object
right_key Show child attributes

code

string

description

string

reason

string

returnedOn

string<date-time> <=24 characters

secCode

string<enum>
Code used to identify the ACH authorization method.
Possible values: WEB, PPD, CCD, TEL

status

string<enum> required
Status of the ACH lifecycle.
Possible values: initiated, originated, corrected, returned, completed

traceNumber

string <=15 characters required

debitHoldPeriod

string<enum><enum>
An optional override of your default ACH hold period in banking days. The hold period must be longer than or equal to your default setting.
Possible values: no-hold, 1-day, 2-days

applePay

object
Describes an Apple Pay token on a Moov account.
right_key Show child attributes

brand

string<enum>
The card brand.
Possible values: American Express, Discover, Mastercard, Visa

cardDisplayName

string
User-friendly name of the tokenized card returned by Apple. It usually contains the brand and the last four digits of the underlying card for example, “Visa 1256”. There is no standard format.

cardType

string<enum>
The type of the card.
Possible values: debit, credit, prepaid, unknown

dynamicLastFour

string
The last four digits of the Apple Pay token, which may differ from the tokenized card’s last four digits

expiration

object
The expiration date of the card or token.
right_key Show child attributes

month

string 2 characters

year

string 2 characters

fingerprint

string <=100 characters
Uniquely identifies a linked payment card or token. For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user’s device. This field can be used to identify specific payment methods across multiple accounts on your platform.

bankAccount

object
Describes a bank account on a Moov account.
right_key Show child attributes

bankAccountID

string<uuid> <=36 characters
UUID v4

bankAccountType

string<enum>
The bank account type.
Possible values: checking, savings, general-ledger, loan

bankName

string

exceptionDetails

object
Reason for, and details related to, an errored or verificationFailed bank account status.
right_key Show child attributes

achReturnCode

string<enum>

The return code of an ACH transaction that caused the bank account status to change.

Codes:

  • R02 - Account Closed
  • R03 - No Account/Unable to Locate Account
  • R04 - Invalid Account Number
  • R05 - Improper Debit to Consumer Account
  • R07 - Authorization Revoked by Customer
  • R08 - Payment Stopped
  • R10 - Customer Advises Originator is Not Known or Authorized to Receiver and
  • R11 - Customer Advises Entry Not in Accordance with the Terms of the Authorization
  • R12 - Branch Sold to Another DFI
  • R13 - RDFI not qualified to participate
  • R14 - Representative payee deceased or unable to continue in that capacity
  • R15 - Beneficiary or bank account holder
  • R16 - Bank account frozen
  • R17 - Entry with Invalid Account Number Initiated Under Questionable Circumstances
  • R20 - Non-payment bank account
  • R23 - Credit entry refused by receiver
  • R29 - Corporate customer advises not authorized
  • R34 - Limited participation RDFI
  • R38 - Stop Payment on Source Document (Adjustment Entry)
  • R39 - Improper Source Document
Possible values: R02, R03, R04, R05, R07, R08, R10, R11, R12, R13, R14, R15, R16, R17, R20, R23, R29, R34, R38, R39

description

string
Details related to an errored or verificationFailed bank account status.

rtpRejectionCode

string<enum>

The rejection code of an RTP transaction that caused the bank account status to change.

Codes:

  • AC03 - Account Invalid
  • AC04 - Account Closed
  • AC06 - Account Blocked
  • AC14 - Creditor Account Type Invalid
  • AG01 - Transactions Forbidden On Account
  • AG03 - Transaction Type Not Supported
  • MD07 - Customer Deceased
Possible values: AC03, AC04, AC06, AC14, AG01, AG03, MD07

fingerprint

string <=100 characters
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

holderType

string<enum>
The type of holder on a funding source.
Possible values: individual, business

lastFourAccountNumber

string

paymentMethods

array

Includes any payment methods generated for a newly created bank account, removing the need to call the List Payment Methods endpoint following a successful Create BankAccount request.

NOTE: This field is only populated for Create BankAccount requests made with the X-Wait-For header.

right_key Show child attributes

paymentMethodID

string<uuid> <=36 characters
UUID v4

paymentMethodType

string<enum>
The payment method type that represents a payment rail and directionality
Possible values: moov-wallet, ach-debit-fund, ach-debit-collect, ach-credit-standard, ach-credit-same-day, rtp-credit, card-payment, apple-pay, push-to-card, pull-from-card

routingNumber

string

status

string<enum>
The bank account status.
Possible values: new, verified, verificationFailed, pending, errored

statusReason

string<enum>
The reason the bank account status changed to the current value.
Possible values: bank-account-created, verification-initiated, micro-deposit-attempts-exceeded, micro-deposit-expired, max-verification-failures, verification-attempts-exceeded, verification-expired, verification-successful, ach-debit-return, ach-credit-return, rtp-credit-failure, micro-deposit-return, admin-action, other

updatedOn

string<date-time> <=24 characters

card

object
Describes a card on a Moov account.
right_key Show child attributes

billingAddress

object
right_key Show child attributes

addressLine1

string <=60 characters required

city

string <=24 characters required

country

string <=2 characters required

postalCode

string <=5 characters required

stateOrProvince

string <=2 characters required

addressLine2

string <=32 characters

bin

string
The first six to eight digits of the card number, which identifies the financial institution that issued the card.

brand

string
The card brand.
Possible values: American Express, Discover, Mastercard, Visa

cardAccountUpdater

object
The results of the most recent card update request.
right_key Show child attributes

updateType

string<enum>
The results of the card update request.
Possible values: unspecified, account-closed, contact-cardholder, expiration-update, no-change, no-match, number-update

updatedOn

string<date-time> <=24 characters

cardCategory

string
The category or level of the card defined by the issuer. Examples include, but not limited to “REWARDS”, “TRADITIONAL REWARDS”, “CLASSIC”, and “CORPORATE PURCHASING”.

cardID

string<uuid> <=36 characters
UUID v4

cardOnFile

boolean
Indicates cardholder has authorized card to be stored for future payments.

cardType

string<enum>
The type of the card.
Possible values: debit, credit, prepaid, unknown

cardVerification

object
The results of submitting cardholder data to a card network for verification.
right_key Show child attributes

accountName

object
The results of submitting cardholder name to a card network for verification.
right_key Show child attributes

firstName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

fullName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

lastName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

middleName

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

addressLine1

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

cvv

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

postalCode

string
Possible values: noMatch, match, notChecked, unavailable, partialMatch

commercial

boolean
If true, the card is for commercial use, or associated with a business. If false, the card is associated with a general consumer.

domesticPullFromCard

string
Indicates if the card supports domestic pull-from-card transfer.
Possible values: not-supported, supported, unknown

domesticPushToCard

string
Indicates which level of domestic push-to-card transfer is supported by the card, if any.
Possible values: not-supported, standard, fast-funds, unknown

expiration

object
The expiration date of the card or token.
right_key Show child attributes

month

string 2 characters

year

string 2 characters

fingerprint

string <=100 characters
Uniquely identifies a linked payment card or token. For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user’s device. This field can be used to identify specific payment methods across multiple accounts on your platform.

holderName

string
The name of the cardholder as it appears on the card.

issuer

string
Financial institution that issued the card.

issuerCountry

string
Country where the card was issued.

issuerPhone

string
Phone number of the issuer.

issuerURL

string
URL of the issuer.

lastFourCardNumber

string
Last four digits of the card number

merchantAccountID

string<uuid>
ID of the Moov account acting as a merchant or other entity authorized to store the card. Defaults to your platform account ID if cardOnFile is set to true and no other account is provided.

paymentMethods

array

Includes any payment methods generated for a newly linked card, removing the need to call the List Payment Methods endpoint following a successful Link Card request.

NOTE: This field is only populated for Link Card requests made with the X-Wait-For header.

right_key Show child attributes

paymentMethodID

string<uuid> <=36 characters
UUID v4

paymentMethodType

string<enum>
The payment method type that represents a payment rail and directionality
Possible values: moov-wallet, ach-debit-fund, ach-debit-collect, ach-credit-standard, ach-credit-same-day, rtp-credit, card-payment, apple-pay, push-to-card, pull-from-card

regulated

boolean
If true, the card issuing bank is regulated, and the scheme fees for debit transactions will be limited based on the Durbin Amendment. If false, the card issuing bank is not regulated, and the scheme fees will not be limited.

cardDetails

object
Card-specific details about the transaction.
right_key Show child attributes

status

string<enum> required
Status for card payment lifecycle.
Possible values: initiated, confirmed, canceled, settled, failed, completed

canceledOn

string<date-time> <=24 characters

completedOn

string<date-time> <=24 characters

confirmedOn

string<date-time> <=24 characters

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

failedOn

string<date-time> <=24 characters

failureCode

string<enum>
Possible values: 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, unknown-issue, duplicate-transaction

feeProgram

string
The program assigned by the card network that determines the interchange rate for the transfer.

initiatedOn

string<date-time> <=24 characters

interchangeQualification

string deprecated
DEPRECATED - The program assigned by the card network that determines the interchange rate for the transfer.

settledOn

string<date-time> <=24 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: Initial transaction in a recurring series or saving a card for future merchant-initiated charges
  • recurring: Regular, merchant-initiated scheduled transactions
  • unscheduled: Non-regular, merchant-initiated transactions like account top-ups
Possible values: first-recurring, recurring, unscheduled

transferID

string<uuid> <=36 characters
UUID v4

wallet

object
A Moov wallet to store funds for transfers.
right_key Show child attributes

walletID

string<uuid> <=36 characters
UUID v4

sweepID

string<uuid> <=36 characters
UUID v4