> ## Documentation Index
> Fetch the complete documentation index at: https://www.marqeta.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List program transfers

> Use this endpoint to list all program transfers.

GET/programtransfers

Use this endpoint to list all program transfers.

To narrow your result set to program transfers of a particular type or that are associated with a particular account holder, include the appropriate parameters from the following URL Query Parameters table. This endpoint also supports [field filtering](https://www.marqeta.com/docs/core-api/field-filtering.md), [pagination](https://www.marqeta.com/docs/core-api/sorting-and-pagination.md), and [sorting](https://www.marqeta.com/docs/core-api/sorting-and-pagination.md).

## URL query parameters

| Fields | Description |
| - | - |
| count integer  Optional | Number of program transfers to retrieve. **Allowable Values:**  1-10 **Default value:** 5 |
| start\_index integer  Optional | Sort order index of the first resource in the returned array. **Allowable Values:**  Any integer **Default value:** 0 |
| fields string  Optional | Comma-delimited list of fields to return (`field_1,field_2`, and so on). Leave blank to return all fields. **Allowable Values:**  Comma-delimited list of fields, or blank |
| sort\_by string  Optional | Field on which to sort. Use any field in the resource model, or one of the system fields `lastModifiedTime` or `createdTime`. Prefix the field name with a hyphen (`-`) to sort in descending order. Omit the hyphen to sort in ascending order. **Allowable Values:**  `createdTime`, `lastModifiedTime`, or any field in the resource model **Default value:** `-lastModifiedTime` |
| user\_token string  Optional | Unique identifier of the user account holder whose program transfers you want to retrieve. Send a `GET` request to `/users` to retrieve user tokens. **Allowable Values:**  Existing user resource token |
| business\_token string  Optional | Unique identifier of the business account holder whose program transfers you want to retrieve. Send a `GET` request to `/businesses` to retrieve business tokens. **Allowable Values:**  Existing business resource token |
| type\_token string  Optional | Unique identifier of the program transfer type to retrieve. **Allowable Values:**  Existing program transfer type token |

## Response body

| Fields | Description |
| - | - |
| count integer  Conditionally returned | Number of program transfer resources to retrieve. This field is returned if there are resources in your returned array. **Allowable Values:**  1-10 |
| data array of objects  Conditionally returned | Array of program transfer objects. Objects are returned as appropriate to your query. **Allowable Values:**  Valid array of one or more program transfer objects |
| data\[].**amount** decimal  Returned | Amount of program transfer. **Allowable Values:**  decimal **Format:** 0.00 |
| data\[].**business\_token** string  Conditionally returned | Unique identifier of the business account holder. Returned if `user_token` is not specified. **Allowable Values:**  1–36 chars |
| data\[].**created\_time** datetime  Conditionally returned | Date and time when the program transfer object was created, in UTC. **Allowable Values:**  datetime **Format:** yyyy-MM-ddThh:mm:ssZ |
| data\[].**currency\_code** string  Returned | Three-digit ISO 4217 currency code. **Allowable Values:**  Valid three-digit [ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html) |
| data\[].**fees** array of objects  Conditionally returned | Contains attributes that define characteristics of one or more fees. **Allowable Values:**  Valid array of one or more `fees` objects |
| data\[].fees\[].**fee** object  Returned | Contains details about the fee. **Allowable Values:**  `amount`, `created_time`, `currency_code`, `last_modified_time`, `name`, `tags`, `token` |
| data\[].fees\[].fee.**amount** decimal  Returned | Amount of the fee. **Allowable Values:**  decimal **Format:** 0.00 |
| data\[].fees\[].fee.**created\_time** datetime  Returned | Date and time when the `fees` object was created, in UTC. **Allowable Values:**  datetime **Format:** yyyy-MM-ddThh:mm:ssZ |
| data\[].fees\[].fee.**currency\_code** string  Returned | Three-digit ISO 4217 currency code. **Allowable Values:**  Valid three-digit [ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html) |
| data\[].fees\[].fee.**last\_modified\_time** datetime  Returned | Date and time when the `fees` object was last modified, in UTC. **Allowable Values:**  datetime **Format:** yyyy-MM-ddThh:mm:ssZ |
| data\[].fees\[].fee.**name** string  Returned | Name of the fee. **Allowable Values:**  50 char max |
| data\[].fees\[].fee.**tags** string  Conditionally returned | Descriptive metadata about the fee. **Allowable Values:**  255 char max |
| data\[].fees\[].fee.**token** string  Returned | Unique identifier of the `fees` object. **Allowable Values:**  Existing `fees` object token |
| data\[].fees\[].**memo** string  Conditionally returned | Additional text describing the fee. **Allowable Values:**  1–255 chars |
| data\[].fees\[].**overrideAmount** decimal  Conditionally returned | Dynamic fee amount that overrides the `fee.amount` field value. **Allowable Values:**  decimal **Format:** 0.00 |
| data\[].fees\[].**tags** string  Conditionally returned | Descriptive metadata about the fee. **Allowable Values:**  255 char max |
| data\[].fees\[].**token** string  Returned | Unique identifier of the fee. **Allowable Values:**  1–36 chars |
| data\[].fees\[].**transaction\_token** string  Returned | Unique identifier of the fee transaction. **Allowable Values:**  36 char max |
| data\[].**jit\_funding** object  Conditionally returned | Contains information about the JIT Funding load event, in which funds are loaded into an account. This object is returned if your program uses JIT Funding. **Allowable Values:**  `acting_user_token`, `address_verification`, `amount`, `balances`, `business_token`, `decline_reason`, `incremental_authorization_jit_funding_tokens`, `memo`, `method`, `original_jit_funding_token`, `tags`, `token`, `user_token` |
| data\[].jit\_funding.**acting\_user\_token** string  Conditionally returned | User who conducted the transaction. Can be a child user configured to share its parent's account balance. **Allowable Values:**  36 char max |
| data\[].jit\_funding.**address\_verification** object  Conditionally returned | Contains address verification data used to make JIT Funding decisions. **Allowable Values:**  `gateway`, `issuer`, `request` |
| data\[].jit\_funding.address\_verification.**gateway** object  Conditionally returned | Contains address verification data consisting of address data entered by the cardholder, address data held by the Marqeta platform, and an assertion by the Marqeta platform as to whether the two sets of data match. **Allowable Values:**  `on_file`, `response` |
| data\[].jit\_funding.address\_verification.gateway.**on\_file** object  Conditionally returned | Contains address verification information. **Allowable Values:**  `postal_code`, `street_address`, `zip` |
| data\[].jit\_funding.address\_verification.gateway.on\_file.**postal\_code** string  Conditionally returned | Postal code of the address. **Allowable Values:**  10 char max |
| data\[].jit\_funding.address\_verification.gateway.on\_file.**street\_address** string  Conditionally returned | Street name and number of the address. **Allowable Values:**  40 char max |
| data\[].jit\_funding.address\_verification.gateway.on\_file.**zip** string  Conditionally returned | United States ZIP code of the address. **Allowable Values:**  10 char max |
| data\[].jit\_funding.address\_verification.gateway.**response** object  Conditionally returned | Response codes and memos for account name verification, address verification, card security verification, and transactions. **Allowable Values:**  `additional_information`, `code`, `memo` |
| data\[].jit\_funding.address\_verification.gateway.response.**additional\_information** string  Conditionally returned | Additional information about the transaction, such as velocity control details. This field is returned in transaction response objects only. It is not returned in address verification or card security verification response objects. **Allowable Values:**  255 char max |
| data\[].jit\_funding.address\_verification.gateway.response.**code** string  Returned | Four-digit response code for address verification, card security code verification, or transactions. For account name verification, the four digits correspond with assertions that the first, middle, last, and full name of the cardholder on the Marqeta platform match the data provided by the cardholder. - `0` indicates no validation was performed - `1` indicates the match was unsuccessful (not matched) - `2` indicates the match was partial - `3` indicates the match was exact For example: Code / First Name / Middle Name / Last Name / Full Name `0000` / Not validated / Not validated / Not validated / Not validated `1111` / Not matched / Not matched / Not matched / Not matched `3333` / Exact match / Exact match / Exact match / Exact match `1232` / Not matched / Partial match / Exact match / Partial match For address verification responses, the code is an assertion by the Marqeta platform as to whether its address verification data matches that provided by the cardholder: Code / Address / Postal Code `0000` / Match / Match `0001` / Match / Not matched `0100` / Not matched / Match `0101` / Not matched / Not matched `0200` / Data not present / Match `0201` / Data not present / Not matched `0002` / Match / Data not present `0102` / Not matched / Data not present `0303` / Not validated / Not validated For card security verification, the code indicates whether the verification check passed and can have these possible values: - `0000` – Passed - `0001` – Did not pass For a transaction, the code describes the outcome of the attempted transaction. For the full list of transaction codes, see [Transaction response codes](https://www.marqeta.com/docs/developer-guides/about-transactions.md#_transaction_response_codes). **Allowable Values:**  Four-digit code |
| data\[].jit\_funding.address\_verification.gateway.response.**memo** string  Returned | Additional text that describes the response. **Allowable Values:**  255 char max |
| data\[].jit\_funding.address\_verification.**issuer** object  Conditionally returned | Contains address verification data consisting of address data entered by the cardholder, address data held by the Marqeta platform, and an assertion by the Marqeta platform as to whether the two sets of data match. **Allowable Values:**  `on_file`, `response` |
| data\[].jit\_funding.address\_verification.issuer.**on\_file** object  Conditionally returned | Contains address verification information. **Allowable Values:**  `postal_code`, `street_address`, `zip` |
| data\[].jit\_funding.address\_verification.issuer.on\_file.**postal\_code** string  Conditionally returned | Postal code of the address. **Allowable Values:**  10 char max |
| data\[].jit\_funding.address\_verification.issuer.on\_file.**street\_address** string  Conditionally returned | Street name and number of the address. **Allowable Values:**  40 char max |
| data\[].jit\_funding.address\_verification.issuer.on\_file.**zip** string  Conditionally returned | United States ZIP code of the address. **Allowable Values:**  10 char max |
| data\[].jit\_funding.address\_verification.issuer.**response** object  Conditionally returned | Response codes and memos for account name verification, address verification, card security verification, and transactions. **Allowable Values:**  `additional_information`, `code`, `memo` |
| data\[].jit\_funding.address\_verification.issuer.response.**additional\_information** string  Conditionally returned | Additional information about the transaction, such as velocity control details. This field is returned in transaction response objects only. It is not returned in address verification or card security verification response objects. **Allowable Values:**  255 char max |
| data\[].jit\_funding.address\_verification.issuer.response.**code** string  Returned | Four-digit response code for address verification, card security code verification, or transactions. For account name verification, the four digits correspond with assertions that the first, middle, last, and full name of the cardholder on the Marqeta platform match the data provided by the cardholder. - `0` indicates no validation was performed - `1` indicates the match was unsuccessful (not matched) - `2` indicates the match was partial - `3` indicates the match was exact For example: Code / First Name / Middle Name / Last Name / Full Name `0000` / Not validated / Not validated / Not validated / Not validated `1111` / Not matched / Not matched / Not matched / Not matched `3333` / Exact match / Exact match / Exact match / Exact match `1232` / Not matched / Partial match / Exact match / Partial match For address verification responses, the code is an assertion by the Marqeta platform as to whether its address verification data matches that provided by the cardholder: Code / Address / Postal Code `0000` / Match / Match `0001` / Match / Not matched `0100` / Not matched / Match `0101` / Not matched / Not matched `0200` / Data not present / Match `0201` / Data not present / Not matched `0002` / Match / Data not present `0102` / Not matched / Data not present `0303` / Not validated / Not validated For card security verification, the code indicates whether the verification check passed and can have these possible values: - `0000` – Passed - `0001` – Did not pass For a transaction, the code describes the outcome of the attempted transaction. For the full list of transaction codes, see [Transaction response codes](https://www.marqeta.com/docs/developer-guides/about-transactions.md#_transaction_response_codes). **Allowable Values:**  Four-digit code |
| data\[].jit\_funding.address\_verification.issuer.response.**memo** string  Returned | Additional text that describes the response. **Allowable Values:**  255 char max |
| data\[].jit\_funding.address\_verification.**request** object  Conditionally returned | Contains address verification information. **Allowable Values:**  `postal_code`, `street_address`, `zip` |
| data\[].jit\_funding.address\_verification.request.**postal\_code** string  Conditionally returned | Postal code of the address. **Allowable Values:**  10 char max |
| data\[].jit\_funding.address\_verification.request.**street\_address** string  Conditionally returned | Street name and number of the address. **Allowable Values:**  40 char max |
| data\[].jit\_funding.address\_verification.request.**zip** string  Conditionally returned | United States ZIP code of the address. **Allowable Values:**  10 char max |
| data\[].jit\_funding.**jit\_account\_name\_verification** object  Conditionally returned | Contains account name verification data used to make JIT Funding decisions from one of the following objects: - The `gateway` object, which contains account name verification data from your JIT Funding gateway. - The `issuer` object, which contains account name verification data from the Marqeta platform. - The `request` object, which contains account name verification data as it appears in a JIT Funding request. **Allowable Values:**  `gateway`, `issuer`, `request` |
| data\[].jit\_funding.jit\_account\_name\_verification.**gateway** object  Conditionally returned | Contains account name verification data used to make JIT Funding decisions. **Allowable Values:**  `first_name`, `last_name`, `middle_name` |
| data\[].jit\_funding.jit\_account\_name\_verification.**issuer** object  Conditionally returned | Contains account name verification data used to make JIT Funding decisions. **Allowable Values:**  `first_name`, `last_name`, `middle_name` |
| data\[].jit\_funding.jit\_account\_name\_verification.**request** object  Conditionally returned | Contains account name verification data used to make JIT Funding decisions. **Allowable Values:**  `first_name`, `last_name`, `middle_name` |
| data\[].jit\_funding.**amount** decimal  Returned | Requested amount of funding. **Allowable Values:**  0 min **Format:** 0.00 |
| data\[].jit\_funding.**balances** object  Conditionally returned | Contains the GPA's balance details. **Allowable Values:**  `available_balance`, `balances`, `cached_balance`, `credit_balance`, `currency_code`, `impacted_amount`, `last_updated_time`, `ledger_balance`, `pending_credits` |
| data\[].jit\_funding.**business\_token** string  Conditionally returned | Holder of the business account that was funded. **Allowable Values:**  36 char max |
| data\[].jit\_funding.**decline\_reason** string  Conditionally returned | Reason why the transaction was declined. **Allowable Values:**  `AMOUNT_LIMIT_EXCEEDED`, `BLOCKED_BY_CARDHOLDER`, `BLOCKED_BY_ISSUER`, `BLOCKED_MERCHANT_BY_CARDHOLDER`, `CARD_NOT_ACTIVE`, `CARDHOLDER_NOT_ACTIVE`, `CLOSED_ACCOUNT`, `DUPLICATE_TRANSACTION`, `EXPIRED_CARD`, `INSUFFICIENT_FUNDS`, `INVALID_AMOUNT`, `INVALID_CARD`, `INVALID_MERCHANT`, `NO_CHECKING_ACCOUNT`, `NO_CREDIT_ACCOUNT`, `NO_SAVINGS_ACCOUNT`, `REVOCATION_ALL_AUTHORIZATION_ORDER`, `REVOCATION_AUTHORIZATION_ORDER`, `SOFT_DECLINE_AUTHENTICATION_REQUIRED`, `SOFT_DECLINE_PIN_REQUIRED`, `STOP_PAYMENT`, `SUSPECTED_FRAUD`, `TRANSACTION_COUNT_LIMIT_EXCEEDED`, `TRANSACTION_NOT_PERMITTED` |
| data\[].jit\_funding.**incremental\_authorization\_jit\_funding\_tokens** array of strings  Conditionally returned | Array of tokens referencing the JIT Funding tokens of all previous associated incremental authorization JIT Funding requests. Useful for ascertaining the final transaction amount when the original amount was incremented. **Allowable Values:**  Existing incremental authorization JIT Funding tokens |
| data\[].jit\_funding.**memo** string  Conditionally returned | Additional information that describes the JIT Funding transaction. **Allowable Values:**  99 char max |
| data\[].jit\_funding.**method** string  Returned | JIT Funding response type. See [The jit\_funding object](https://www.marqeta.com/docs/core-api/gateway-jit-funding-messages.md#_the_jit_funding_object) for the purpose, funding event type, and description of each method. **Allowable Values:**  `pgfs.adjustment.credit`, `pgfs.adjustment.debit`, `pgfs.authorization`, `pgfs.authorization.account_verification`, `pgfs.authorization.capture`, `pgfs.authorization.capture.chargeback`, `pgfs.authorization.capture.chargeback.reversal`, `pgfs.authorization.incremental`, `pgfs.authorization.reversal`, `pgfs.authorization.standin`, `pgfs.auth_plus_capture`, `pgfs.auth_plus_capture.standin`, `pgfs.balanceinquiry`, `pgfs.billpayment`, `pgfs.billpayment.capture`, `pgfs.billpayment.reversal`, `pgfs.directdeposit.credit`, `pgfs.directdeposit.credit.reversal`, `pgfs.directdeposit.debit`, `pgfs.directdeposit.debit.reversal`, `pgfs.dispute.credit`, `pgfs.dispute.debit`, `pgfs.force_capture`, `pgfs.network.load`, `pgfs.original.credit.authorization`, `pgfs.original.credit.auth_plus_capture`, `pgfs.pindebit.chargeback`, `pgfs.pindebit.chargeback.reversal`, `pgfs.product.inquiry`, `pgfs.refund`, `pgfs.refund.authorization`, `pgfs.refund.authorization.reversal` |
| data\[].jit\_funding.**original\_jit\_funding\_token** string  Conditionally returned | Unique identifier of the first associated JIT Funding message. Useful for correlating related JIT Funding messages (that is, those associated with the same GPA order). Not included in the first of any set of related messages. **Allowable Values:**  36 char max |
| data\[].jit\_funding.**tags** string  Conditionally returned | Customer-defined tags related to the JIT Funding transaction. **Allowable Values:**  255 char max |
| data\[].jit\_funding.**token** string  Returned | Existing JIT Funding token matching the `funding.gateway_log.transaction_id` field of the associated GPA order. **NOTE:** The `transaction_id` field updates if a subsequent JIT Funding message associated with that GPA order is sent. If multiple JIT Funding messages are associated with the same GPA order, the `transaction_id` field matches the token of the most recent message. **Allowable Values:**  36 char max |
| data\[].jit\_funding.**user\_token** string  Returned | Holder of the user account that was funded. **Allowable Values:**  36 char max |
| data\[].**memo** string  Conditionally returned | Additional description of the program transfer. **Allowable Values:**  1–99 chars |
| data\[].**tags** string  Conditionally returned | Comma-delimited list of tags describing the program transfer. **Allowable Values:**  1–255 chars |
| data\[].**token** string  Conditionally returned | Unique identifier of the program transfer. **Allowable Values:**  1–36 chars |
| data\[].**transaction\_token** string  Returned | Unique identifier of the transaction. **Allowable Values:**  Existing transaction token |
| data\[].**type\_token** string  Returned | Unique identifier of the program transfer type. **Allowable Values:**  1–36 chars |
| data\[].**user\_token** string  Conditionally returned | Unique identifier of the user account holder. Returned if `business_token` is not specified. **Allowable Values:**  1–36 chars |
| end\_index integer  Conditionally returned | Sort order index of the last resource in the returned array. This field is returned if there are resources in your returned array. **Allowable Values:**  Any integer |
| is\_more boolean  Conditionally returned | A value of `true` indicates that more unreturned resources exist. A value of `false` indicates that no more unreturned resources exist. This field is returned if there are resources in your returned array. **Allowable Values:**  `true`, `false` |
| start\_index integer  Conditionally returned | Sort order index of the first resource in the returned array. This field is returned if there are resources in your returned array. **Allowable Values:**  Any integer |

## Sample response body

```json JSON lines wrap theme={null}
{
  "count": 2,
  "start_index": 0,
  "end_index": 1,
  "is_more": false,
  "data[]": {
    "token": "my_program_transfer_02",
    "type_token": "my_program_transfer_type_01",
    "user_token": "my_user_01",
    "transaction_token": "170",
    "currency_code": "USD",
    "amount": 1,
    "memo": "This is my program transfer",
    "tags": "tag1, tag2, tag3",
    "created_time": "2023-03-11T21:02:45Z"
  }
}
```


## Related topics

- [List program transfer types](https://www.marqeta.com/docs/core-api/program-transfers/program-transfer-types/list-types.md)
- [Program Transfers Overview](https://www.marqeta.com/docs/core-api/program-transfers.md)
- [Program Transfer Types Overview](https://www.marqeta.com/docs/core-api/program-transfers/program-transfer-types.md)
- [List ACH transfers](https://www.marqeta.com/docs/core-api/funding-via-ach/list-transfers.md)
- [Create program transfer type](https://www.marqeta.com/docs/core-api/program-transfers/program-transfer-types/create-type.md)
