Skip to main content
Use the payment sources endpoint to link an external payment source to an account on Marqeta’s credit platform. This enables account holders to use the linked payment source to make payments toward their account balance.

Create payment source

Action: POST
Endpoint: /credit/paymentsources
Create a payment source from which to make payments.

Request body

FieldsDescription
token

string

Optional
Unique identifier of the payment source.

Allowable Values:

36 char max
user_token

string

Optional
Unique identifier of the user making the payment.

Allowable Values:

36 char max

Existing user token
business_token

string

Optional
Unique identifier of the business making the payment.

Allowable Values:

36 char max

Existing business token
account_token

string

Required
Unique identifier of the credit account receiving the payment.

Allowable Values:

36 char max

Existing account token
source_type

string

Required
Type of payment source.

Allowable Values:

CHECKING, SAVINGS, SECURE_ACCOUNT_FUND, OTHER, EXTERNAL
name

string

Required
Name of the individual or business who owns the payment source.

Allowable Values:

255 char max
account_number

string

Required
Account number of the payment source.

Allowable Values:

255 char max
routing_number

string

Optional
Routing number of the payment source. This field is only optional when the value for source_type is SECURE_ACCOUNT_FUND.

Allowable Values:

255 char max
owner

string

Optional
Type of payment source owner.

Allowable Values:

INDIVIDUAL, BUSINESS
verification_override

boolean

Required
Whether to override the verification process.

Allowable Values:

true, false
verification_notes

string

Optional
Additional information on the verification.

Allowable Values:

255 char max
bank_name

string

Optional
Name of the bank associated with the routing number.

Allowable Values:

255 char max

Sample request body

JSON
{
  "token": "my_payment_source_token_6789",
  "account_token": "my_account_token_12",
  "user_token": "user5678",
  "source_type": "CHECKING",
  "name": "John Jacob",
  "owner": "INDIVIDUAL",
  "account_number": "4567_payment_source_account_number",
  "routing_number": "56789_payment_source_routing_number",
  "verification_override": true
}

Response body

FieldsDescription
token

string

Conditionally returned
Unique identifier of the payment source.

Allowable Values:

36 char max
account_token

string

Conditionally returned
Unique identifier of the credit account receiving the payment.

Allowable Values:

36 char max

Existing account token
user_token

string

Conditionally returned
Unique identifier of the user making the payment.

Allowable Values:

Existing user token
business_token

string

Conditionally returned
Unique identifier of the business making the payment.

Allowable Values:

Existing business token
created_time

datetime

Conditionally returned
Date and time when the payment source was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
last_modified_time

datetime

Conditionally returned
Date and time when the payment source was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
source_type

string

Conditionally returned
Type of payment source.

Allowable Values:

CHECKING, SAVINGS, SECURE_ACCOUNT_FUND, OTHER, EXTERNAL
name

string

Conditionally returned
Name of the individual or business who owns the payment source.

Allowable Values:

255 char max
owner

string

Conditionally returned
Type of payment source owner.

Allowable Values:

INDIVIDUAL, BUSINESS
verification_status

string

Conditionally returned
Status of the verification for the payment source.

Allowable Values:

ACH_VERIFIED, PENDING
verification_notes

string

Conditionally returned
Additional information on the verification (for example, an external verification identifier that’s outside Marqeta’s credit platform).

Allowable Values:

255 char max
account_suffix

string

Conditionally returned
Last four digits of the payment source account number.

Allowable Values:

4 char max
routing_number

string

Conditionally returned
Routing number of the payment source.

Allowable Values:

255 char max
bank_name

string

Conditionally returned
Name of the bank associated with the routing number.

Allowable Values:

255 char max
status

string

Conditionally returned
Current status of the payment source.

Allowable Values:

ACTIVE, PENDING, INACTIVE

Sample response body

JSON
{
  "token": "my_payment_source_token_6789",
  "account_token": "my_account_token_12",
  "user_token": "user5678",
  "created_time": "2025-05-19T19:19:24Z",
  "last_modified_time": "2025-05-19T19:19:24Z",
  "source_type": "CHECKING",
  "name": "John Jacob",
  "owner": "INDIVIDUAL",
  "verification_status": "ACH_VERIFIED",
  "account_suffix": "5678",
  "routing_number": "payment_source_routing_number",
  "status": "ACTIVE"
}

List payment sources

Action: GET
Endpoint: /credit/paymentsources
Retrieve an array of payment sources. This endpoint supports sorting and pagination.

URL query parameters

FieldsDescription
account_token

string

Optional
Unique identifier of the credit account associated with the payment source.

Allowable Values:

Existing account token
user_token

string

Optional
Unique identifier of the user associated with the payment source.

Allowable Values:

Existing user token
business_token

string

Optional
Unique identifier of the business associated with the payment source.

Allowable Values:

Existing business token
count

integer

Optional
Number of payment source resources to retrieve.

Allowable Values:

1–100
start_index

integer

Optional
Sort order index of the first resource in the returned array.

Allowable Values:

0 min
sort_by

string

Optional
Field on which to sort. Prefix the field name with a hyphen (-) to sort in descending order. Omit the hyphen to sort in ascending order.

NOTE: You must sort using system field names such as lastModifiedTime, and not by the field names appearing in response bodies such as last_modified_time.

Allowable Values:

lastModifiedTime, -lastModifiedTime
statuses

array of strings

Optional
Array of statuses to use for filtering payment sources.

Allowable Values:

ACTIVE, PENDING, INACTIVE

Response body

FieldsDescription
count

integer

Returned
Number of resources returned.

Allowable Values:

1-10
start_index

integer

Returned
Sort order index of the first resource in the returned array.

Allowable Values:

Any integer
end_index

integer

Returned
Sort order index of the last resource in the returned array.

Allowable Values:

Any integer
is_more

boolean

Returned
A value of true indicates that more unreturned resources exist.

Allowable Values:

true, false
data

array of objects

Returned
List of payment sources.

Allowable Values:

Valid array of one or more payment source objects
data[].token

string

Conditionally returned
Unique identifier of the payment source.

Allowable Values:

36 char max
data[].account_token

string

Conditionally returned
Unique identifier of the credit account receiving the payment.

Allowable Values:

36 char max

Existing account token
data[].user_token

string

Conditionally returned
Unique identifier of the user making the payment.

Allowable Values:

Existing user token
data[].business_token

string

Conditionally returned
Unique identifier of the business making the payment.

Allowable Values:

Existing business token
data[].created_time

datetime

Conditionally returned
Date and time when the payment source was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
data[].last_modified_time

datetime

Conditionally returned
Date and time when the payment source was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
data[].source_type

string

Conditionally returned
Type of payment source.

Allowable Values:

CHECKING, SAVINGS, SECURE_ACCOUNT_FUND, OTHER, EXTERNAL
data[].name

string

Conditionally returned
Name of the individual or business who owns the payment source.

Allowable Values:

255 char max
data[].owner

string

Conditionally returned
Type of payment source owner.

Allowable Values:

INDIVIDUAL, BUSINESS
data[].verification_status

string

Conditionally returned
Status of the verification for the payment source.

Allowable Values:

ACH_VERIFIED, PENDING
data[].verification_notes

string

Conditionally returned
Additional information on the verification (for example, an external verification identifier that’s outside Marqeta’s credit platform).

Allowable Values:

255 char max
data[].account_suffix

string

Conditionally returned
Last four digits of the payment source account number.

Allowable Values:

4 char max
data[].routing_number

string

Conditionally returned
Routing number of the payment source.

Allowable Values:

255 char max
data[].bank_name

string

Conditionally returned
Name of the bank associated with the routing number.

Allowable Values:

255 char max
data[].status

string

Conditionally returned
Current status of the payment source.

Allowable Values:

ACTIVE, PENDING, INACTIVE

Sample response body

JSON
{
  "count": 1,
  "start_index": 0,
  "end_index": 0,
  "is_more": true,
  "data": [
    {
      "token": "my_payment_source_token_6789",
      "account_token": "my_account_token_12",
      "user_token": "user5678",
      "created_time": "2025-05-19T19:19:24Z",
      "last_modified_time": "2025-05-19T19:19:24Z",
      "source_type": "CHECKING",
      "name": "John Jacob",
      "owner": "INDIVIDUAL",
      "verification_status": "ACH_VERIFIED",
      "account_suffix": "5678",
      "routing_number": "payment_source_routing_number",
      "status": "ACTIVE"
    }
  ]
}

Retrieve payment source

Action: GET
Endpoint: /credit/paymentsources/{token}
Retrieve a payment source.

URL path parameters

FieldsDescription
token

string

Required
Unique identifier of the payment source to retrieve.

Send a GET request to /credit/paymentsources to retrieve existing payment source tokens.

Allowable Values:

Existing payment source token

Response body

FieldsDescription
token

string

Conditionally returned
Unique identifier of the payment source.

Allowable Values:

36 char max
account_token

string

Conditionally returned
Unique identifier of the credit account receiving the payment.

Allowable Values:

36 char max

Existing account token
user_token

string

Conditionally returned
Unique identifier of the user making the payment.

Allowable Values:

Existing user token
business_token

string

Conditionally returned
Unique identifier of the business making the payment.

Allowable Values:

Existing business token
created_time

datetime

Conditionally returned
Date and time when the payment source was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
last_modified_time

datetime

Conditionally returned
Date and time when the payment source was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
source_type

string

Conditionally returned
Type of payment source.

Allowable Values:

CHECKING, SAVINGS, SECURE_ACCOUNT_FUND, OTHER, EXTERNAL
name

string

Conditionally returned
Name of the individual or business who owns the payment source.

Allowable Values:

255 char max
owner

string

Conditionally returned
Type of payment source owner.

Allowable Values:

INDIVIDUAL, BUSINESS
verification_status

string

Conditionally returned
Status of the verification for the payment source.

Allowable Values:

ACH_VERIFIED, PENDING
verification_notes

string

Conditionally returned
Additional information on the verification (for example, an external verification identifier that’s outside Marqeta’s credit platform).

Allowable Values:

255 char max
account_suffix

string

Conditionally returned
Last four digits of the payment source account number.

Allowable Values:

4 char max
routing_number

string

Conditionally returned
Routing number of the payment source.

Allowable Values:

255 char max
bank_name

string

Conditionally returned
Name of the bank associated with the routing number.

Allowable Values:

255 char max
status

string

Conditionally returned
Current status of the payment source.

Allowable Values:

ACTIVE, PENDING, INACTIVE

Sample response body

JSON
{
  "token": "my_payment_source_token_6789",
  "account_token": "my_account_token_12",
  "user_token": "user5678",
  "created_time": "2025-05-19T19:19:24Z",
  "last_modified_time": "2025-05-19T19:19:24Z",
  "source_type": "CHECKING",
  "name": "John Jacob",
  "owner": "INDIVIDUAL",
  "verification_status": "ACH_VERIFIED",
  "account_suffix": "5678",
  "routing_number": "payment_source_routing_number",
  "status": "ACTIVE"
}

Update payment source

Action: PUT
Endpoint: /credit/paymentsources/{token}
Update details of a payment source.

URL path parameters

FieldsDescription
token

string

Required
Unique identifier of the payment source to retrieve.

Send a GET request to /credit/paymentsources to retrieve existing payment source tokens.

Allowable Values:

Existing payment source token

Request body

FieldsDescription
status

string

Required
Current status of the payment source.

Allowable Values:

ACTIVE, PENDING, INACTIVE

Sample request body

JSON
{
  "status": "ACTIVE"
}

Response body

FieldsDescription
token

string

Conditionally returned
Unique identifier of the payment source.

Allowable Values:

36 char max
account_token

string

Conditionally returned
Unique identifier of the credit account receiving the payment.

Allowable Values:

36 char max

Existing account token
user_token

string

Conditionally returned
Unique identifier of the user making the payment.

Allowable Values:

Existing user token
business_token

string

Conditionally returned
Unique identifier of the business making the payment.

Allowable Values:

Existing business token
created_time

datetime

Conditionally returned
Date and time when the payment source was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
last_modified_time

datetime

Conditionally returned
Date and time when the payment source was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
source_type

string

Conditionally returned
Type of payment source.

Allowable Values:

CHECKING, SAVINGS, SECURE_ACCOUNT_FUND, OTHER, EXTERNAL
name

string

Conditionally returned
Name of the individual or business who owns the payment source.

Allowable Values:

255 char max
owner

string

Conditionally returned
Type of payment source owner.

Allowable Values:

INDIVIDUAL, BUSINESS
verification_status

string

Conditionally returned
Status of the verification for the payment source.

Allowable Values:

ACH_VERIFIED, PENDING
verification_notes

string

Conditionally returned
Additional information on the verification (for example, an external verification identifier that’s outside Marqeta’s credit platform).

Allowable Values:

255 char max
account_suffix

string

Conditionally returned
Last four digits of the payment source account number.

Allowable Values:

4 char max
routing_number

string

Conditionally returned
Routing number of the payment source.

Allowable Values:

255 char max
bank_name

string

Conditionally returned
Name of the bank associated with the routing number.

Allowable Values:

255 char max
status

string

Conditionally returned
Current status of the payment source.

Allowable Values:

ACTIVE, PENDING, INACTIVE

Sample response body

JSON
{
  "token": "my_payment_source_token_6789",
  "account_token": "my_account_token_12",
  "user_token": "user5678",
  "created_time": "2025-05-19T19:19:24Z",
  "last_modified_time": "2025-05-19T19:19:24Z",
  "source_type": "CHECKING",
  "name": "John Jacob",
  "owner": "INDIVIDUAL",
  "verification_status": "ACH_VERIFIED",
  "account_suffix": "5678",
  "routing_number": "payment_source_routing_number",
  "status": "ACTIVE"
}