/
15 minute read
March 24, 2022

Program Funding Sources

Use the /fundingsources/program endpoint to create a program funding source.

A program funding source represents a bank account from which funds are drawn for Managed Just-in-Time (JIT) Funding transactions. For more information about JIT Funding, see About Just-in-Time Funding.

In a public or private sandbox environment, each program funding source you create simulates funds for use in test transactions. In production environments, program funding sources are created by Marqeta and draw funds from a bank account you set up in conjunction with Marqeta.

Note
Your program funding source must be approved by Marqeta and the issuing bank. If you are using a third-party service to collect user funds, Marqeta and the issuing bank require specific reporting to ensure compliance with applicable rules and regulations. Contact Marqeta for more information.

Create program source

Action: POST
Endpoint: /fundingsources/program

Create a program funding source.

Request body

Fields Description

active

boolean
Optional

Indicates whether the program funding source is active.

Allowable Values:

true, false

Default value:
false

name

string
Required

The name of the program funding source.

Allowable Values:

1–50 chars

token

string
Optional

The unique identifier of the funding source. If you do not include a token, the system will generate one automatically. As this token is necessary for use in other calls, we recommend that you define a simple and easy to remember string rather than letting the system generate a token for you. This value cannot be updated.

Allowable Values:

1–36 chars

Sample request body

JSON
Copied

Is this helpful?

Yes
No

Response body

Fields Description

account

string
Returned

The account identifier.

Allowable Values:

255 char max

active

boolean
Conditionally returned

Indicates whether the program funding source is active. This field is returned if it exists in the resource.

Allowable Values:

true, false

created_time

datetime
Returned

The date and time when the resource was created, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

last_modified_time

datetime
Returned

The date and time when the resource was last modified, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

name

string
Returned

The name of the program funding source.

Allowable Values:

1–50 chars

token

string
Returned

The unique identifier of the funding source.

Allowable Values:

1–36 chars

Sample response body

JSON
Copied

Is this helpful?

Yes
No

Create ACH program source

Action: POST
Endpoint: /fundingsources/program/ach

Create an ACH program funding source.

Request body

Fields Description

account_number

string
Required

The ACH account number.

Allowable Values:

36 char max

account_type

string
Required

The type of account.

Allowable Values:

checking, savings, corporate, loan

bank_name

string
Optional

The name of the bank holding the account.

Allowable Values:

255 char max

is_default_account

boolean
Optional

If there are multiple funding sources, this field specifies which source is used by default in funding calls. If there is only one funding source, the system ignores this field and always uses that source.

Allowable Values:

true, false

Default value:
false

name_on_account

string
Required

The name on the ACH account.

Allowable Values:

1–50 chars

routing_number

string
Required

The routing number for the ACH account.

Allowable Values:

9 digits

token

string
Optional

The unique identifier of the funding source. If you do not include a token, the system will generate one automatically. This token is necessary for use in other calls, so we recommend that rather than let the system generate one, you use a simple string that is easy to remember. This value cannot be updated.

Allowable Values:

1–36 chars

verification_notes

string
Optional

Free-form text field for holding notes about verification. This field is returned only if verification_override = true.

Allowable Values:

255 char max

verification_override

boolean
Optional

Allows the ACH funding source to be used, regardless of its verification status.

Note
Set this field to true if you can attest that you have verified the account on your own and that it will not be returned by the Federal Reserve.

Allowable Values:

true, false

Default value:
false

Sample request body

JSON
Copied

Is this helpful?

Yes
No

Response body

Fields Description

account_suffix

string
Returned

The ACH account identifier appended to the bank account number.

Allowable Values:

255 char max

account_type

string
Returned

The type of account.

Allowable Values:

checking, savings, corporate, loan

active

boolean
Returned

Specifies whether the account is active.

Allowable Values:

true, false

bank_name

string
Conditionally returned

The name of the bank holding the account. This field is returned if it exists in the resource.

Allowable Values:

255 char max

created_time

datetime
Returned

The date and time when the resource was created, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

date_sent_for_verification

datetime
Conditionally returned

The date and time when the account was sent for verification, in UTC. 2022-02-26T20:03:05Z, for example.

This field is returned if it exists in the resource.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

date_verified

datetime
Conditionally returned

The date and time when the account was verified, in UTC. 2022-02-26T20:03:05Z, for example.

This field is returned if it exists in the resource.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

is_default_account

boolean
Conditionally returned

If there are multiple funding sources, this field specifies which source is used by default in funding calls. If there is only one funding source, the system ignores this field and always uses that source.

Allowable Values:

true, false

last_modified_time

datetime
Returned

The date and time when the resource was last modified, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

name_on_account

string
Returned

The name on the ACH account.

Allowable Values:

1–50 chars

token

string
Returned

The unique identifier of the funding source.

Allowable Values:

Existing funding source token

verification_notes

string
Conditionally returned

Free-form text field for holding notes about verification. This field is returned only if verification_override = true.

Allowable Values:

255 char max

verification_override

boolean
Conditionally returned

Allows the ACH funding source to be used, regardless of its verification status. This field is returned if it exists in the resource.

Allowable Values:

true, false

verification_status

string
Conditionally returned

The account verification status. This field is returned if it exists in the resource.

Allowable Values:

255 char max

Sample response body

JSON
Copied

Is this helpful?

Yes
No

List ACH program sources

Action: GET
Endpoint: /fundingsources/program/ach

List ACH program funding sources.

URL query parameters

Fields Description

count

integer
Optional

The number of resources to retrieve.

Allowable Values:

1-10

start_index

integer
Optional

The sort order index of the first resource in the returned array.

Allowable Values:

Any integer

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:

lastModifiedTime, createdTime, or any field in the resource model

Response body

Fields Description

count

integer
Conditionally returned

The number of resources to retrieve.

Allowable Values:

1-10

data

array of objects
Conditionally returned

An array of ach_response_model objects.

Allowable Values:

Valid ach_response_model array

data[].account_suffix

string
Returned

The ACH account identifier appended to the bank account number.

Allowable Values:

255 char max

data[].account_type

string
Returned

The type of account.

Allowable Values:

checking, savings, corporate, loan

data[].active

boolean
Returned

Specifies whether the account is active.

Allowable Values:

true, false

data[].bank_name

string
Conditionally returned

The name of the bank holding the account. This field is returned if it exists in the resource.

Allowable Values:

255 char max

data[].created_time

datetime
Returned

The date and time when the resource was created, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].date_sent_for_verification

datetime
Conditionally returned

The date and time when the account was sent for verification, in UTC. 2022-02-26T20:03:05Z, for example.

This field is returned if it exists in the resource.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].date_verified

datetime
Conditionally returned

The date and time when the account was verified, in UTC. 2022-02-26T20:03:05Z, for example.

This field is returned if it exists in the resource.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].is_default_account

boolean
Conditionally returned

If there are multiple funding sources, this field specifies which source is used by default in funding calls. If there is only one funding source, the system ignores this field and always uses that source.

Allowable Values:

true, false

data[].last_modified_time

datetime
Returned

The date and time when the resource was last modified, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].name_on_account

string
Returned

The name on the ACH account.

Allowable Values:

1–50 chars

data[].token

string
Returned

The unique identifier of the funding source.

Allowable Values:

Existing funding source token

data[].verification_notes

string
Conditionally returned

Free-form text field for holding notes about verification. This field is returned only if verification_override = true.

Allowable Values:

255 char max

data[].verification_override

boolean
Conditionally returned

Allows the ACH funding source to be used, regardless of its verification status. This field is returned if it exists in the resource.

Allowable Values:

true, false

data[].verification_status

string
Conditionally returned

The account verification status. This field is returned if it exists in the resource.

Allowable Values:

255 char max

end_index

integer
Conditionally returned

The sort order index of the last resource in the returned array.

Allowable Values:

Any integer

is_more

boolean
Conditionally returned

A value of true indicates that more unreturned resources exist.

Allowable Values:

true, false

start_index

integer
Conditionally returned

The sort order index of the first resource in the returned array.

Allowable Values:

Any integer

Retrieve program source

Action: GET
Endpoint: /fundingsources/program/{token}

Retrieve a specific program funding source, whether active or inactive.

URL path parameters

Fields Description

token

string
Required

The unique identifier of the program funding source.

Allowable Values:

Existing program funding source token

Response body

Fields Description

account

string
Returned

The account identifier.

Allowable Values:

255 char max

active

boolean
Conditionally returned

Indicates whether the program funding source is active. This field is returned if it exists in the resource.

Allowable Values:

true, false

created_time

datetime
Returned

The date and time when the resource was created, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

last_modified_time

datetime
Returned

The date and time when the resource was last modified, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

name

string
Returned

The name of the program funding source.

Allowable Values:

1–50 chars

token

string
Returned

The unique identifier of the funding source.

Allowable Values:

1–36 chars

Sample response body

JSON
Copied

Is this helpful?

Yes
No

Update program source

Action: PUT
Endpoint: /fundingsources/program/{token}

Update a program funding source. Only the values of parameters specified in the request are modified; all others are left unchanged.

URL path parameters

Fields Description

token

string
Required

The unique identifier of the program funding source.

Allowable Values:

Existing program funding source token

Request body

Fields Description

active

boolean
Optional

Indicates whether the program funding source is active.

Allowable Values:

true, false

Default value:
false

name

string
Optional

The name of the program funding source.

Allowable Values:

1–50 chars

Sample request body

JSON
Copied

Is this helpful?

Yes
No

Response body

Fields Description

account

string
Returned

The account identifier.

Allowable Values:

255 char max

active

boolean
Conditionally returned

Indicates whether the program funding source is active. This field is returned if it exists in the resource.

Allowable Values:

true, false

created_time

datetime
Returned

The date and time when the resource was created, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

last_modified_time

datetime
Returned

The date and time when the resource was last modified, in UTC. 2022-02-26T20:03:05Z, for example.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

name

string
Returned

The name of the program funding source.

Allowable Values:

1–50 chars

token

string
Returned

The unique identifier of the funding source.

Allowable Values:

1–36 chars

Sample response body

JSON
Copied

Is this helpful?

Yes
No

Subscribe to our developer newsletter