/
25 minute read
April 11, 2023

Journal Entries

Use the journal entries endpoints to retrieve journal entries made on an account on Marqeta’s credit platform.

A journal entry is a record of an entry made on an account journal, such as a purchase transaction, fee, adjustment, and more. For more on the different types of journal entries, see About Credit Account Journal Entries.

Journal entries originate when a journal entry event occurs, such as a cardholder making a purchase or an account holder making a payment. To receive webhook notifications when journal entry events occur, see Credit journal entry events in Event Types.

List account journal entries

Action: GET
Endpoint: /credit/accounts/{account_token}/journalentries

Retrieve an array of journal entries on a credit account.

This endpoint supports sorting and pagination and object expansion.

URL path parameters

Fields Description

account_token

string
Required

The unique identifier of the credit account for which you want to retrieve journal entries.

Send a GET request to /credit/accounts to retrieve existing credit account tokens.

Allowable Values:

Existing account token

URL query parameters

Fields Description

count

integer
Optional

The number of 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

start_date

string
Optional

The starting date of the date range from which to return journal entries.

Allowable Values:

Format: yyyy-MM-dd or yyyy-MM-ddThh:mm:ssZ

end_date

string
Optional

The ending date of the date range from which to return journal entries.

Allowable Values:

Format: yyyy-MM-dd or yyyy-MM-ddThh:mm:ssZ

statuses

array of strings
Optional

An array of statuses by which to filter journal entries.

Allowable Values:

POSTED, PENDING

groups

array of strings
Optional

An array of groups by which to filter journal entries.

To return all journal entry groups, do not include this query parameter.

Allowable Values:

PURCHASE, ORIGINAL_CREDIT, FEE, BALANCE_REFUND, PAYMENT, INTEREST, DISPUTE, REFUND, ADJUSTMENT, REWARD

expand

string
Optional

Embeds the specified object into the response.

Allowable Values:

detailObject

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 createdTime, and not by the field names appearing in response bodies such as created_time.

Allowable Values:

createdTime, -createdTime, impactTime, -impactTime

card_tokens

array of strings
Optional

An array of card tokens by which to filter journal entries. Returns journal entries associated with the specified card tokens.

Send a GET request to /credit/accounts/{account_token}/cards/ to retrieve existing card tokens.

Allowable Values:

Existing card token

user_tokens

array of strings
Optional

An array of user tokens by which to filter journal entries. Returns journal entries associated with the specified user tokens.

Send a GET request to /users to retrieve existing user tokens.

Allowable Values:

Existing user token

types

array of strings
Optional

An array of event types by which to filter journal entries.

To return all event types, do not include this query parameter.

Allowable Values:

authorization, authorization.advice, authorization.incremental, authorization.reversal, authorization.reversal.issuerexpiration, authorization.clearing, refund, refund.authorization, refund.authorization.advice, refund.authorization.reversal, refund.authorization.clearing, refund.authorization.reversal.issuerexpiration, originalcredit.authorization, originalcredit.authorization.clearing, originalcredit.authorization.reversal, originalcredit.authpluscapture, originalcredit.authpluscapture.reversal, originalcredit.authorization.reversal.issuerexpiration, account.balancerefund, account.reward.cashback, account.reward.auto.cashback, account.reward.auto.cashback.reversal, account.payment, account.payment.completed, account.payment.returned, account.payment.canceled, account.payment.refunded, account.payment.completed.hold.released, account.payment.completed.hold, account.interest, account.fee.payment.late, account.fee.payment.returned, account.fee.interest.minimum, account.dispute, account.dispute.reversal, account.dispute.won, account.dispute.lost, account.dispute.lost.graceperiod, account.adjustment, account.adjustment.purchase, account.adjustment.fee, account.adjustment.interest, account.adjustment.reward, pindebit, pindebit.authorization.clearing, pindebit.refund

Response body

Fields Description

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

Contains one or more journal entries on a credit account.

Allowable Values:

One or more journal entry objects

data[].token

string
Returned

Unique identifier of the journal entry.

Allowable Values:

36 char max

data[].related_token

string
Conditionally returned

Unique identifier of the original journal entry. If the current journal entry is the original, this field is returned empty.

Allowable Values:

Existing journal entry token

data[].root_token

string
Conditionally returned

Unique identifier of the root journal entry. If the current journal entry is the root, this field is returned empty.

Allowable Values:

Existing journal entry token

data[].account_token

string
Returned

Unique identifier of the credit account associated with the credit card used to make the journal entry.

Allowable Values:

Existing account token

data[].card_token

string
Returned

Unique identifier of the credit card used to make the journal entry.

Allowable Values:

8–36 chars

Existing credit card token

data[].user_token

string
Returned

Unique identifier of the credit user.

Allowable Values:

Existing user token

data[].status

string
Returned

Status of the journal entry when it was initially recorded and had an impact on the balance, either PENDING or POSTED. This field is immutable and may not represent the current status.

To view the current status of purchases, refunds, OCTs, and payments, see the detail_object.state field. These journal entries start in PENDING and can transition to CLEARED, DECLINED, or ERROR. This transition of status is only sent through webhook event notifications.

Journal entries that are final transactions, such as clearings, start and remain in a POSTED state.

NOTE: CLEARED, DECLINED, and ERROR are special statuses that do not have an impact on the account balance, and are not recorded in the journal. For these special statuses, impact_time, request_time, created_time, token, and id are returned blank.

Allowable Values:

PENDING, POSTED, DECLINED, ERROR, CLEARED

data[].group

string
Returned

Group to which the journal entry belongs.

Allowable Values:

PURCHASE, REFUND, DISPUTE, ORIGINAL_CREDIT, FEE, REWARD, INTEREST, PAYMENT, ADJUSTMENT, BALANCE_TRANSFER, CASH_ADVANCE, BALANCE_REFUND

data[].type

string
Returned

The journal entry event type.

Allowable Values:

Example: authorization.clearing

data[].id

string
Returned

Eight-digit numeric identifier of the journal entry, an alternate identifier to the UUID that is useful for remembering and referencing.

Allowable Values:

8 chars

data[].amount

decimal
Returned

Amount of the journal entry.

Allowable Values:

Format: 0.00

data[].currency_code

string
Returned

A valid three-digit ISO 4217 currency code

Allowable Values:

USD

data[].memo

string
Returned

Merchant name or description for the journal entry.

Allowable Values:

Example: Whole Foods Market

data[].request_time

datetime
Returned

For purchases, the date and time of the authorization, which is when the user initiates the journal entry.

For other journal entry groups, equivalent to impact_time.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].impact_time

datetime
Returned

Date and time when the journal entry impacts the account balance.

For purchases, this is the time of the authorization.

For purchase authorization clearings, this is the time when the transaction is settled.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].created_time

datetime
Returned

Date and time when the journal entry was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].dispute_token

string
Conditionally returned

Unique identifier of the dispute, if the journal entry is disputed.

Allowable Values:

Existing dispute token

data[].detail_token

string
Returned

Unique identifier of the journal entry’s full details.

Allowable Values:

36 char max

data[].detail_object

object
Conditionally returned

Contains the journal entry’s full details. The fields returned in this object vary based on the journal entry group.

The following lists each journal entry group and the specific fields returned for each group.

Allowable Values:

Existing detail object

data[].detail_object.token

string
Conditionally returned

Unique identifier of the interest charge or fee.

If in the detail_object, unique identifier of the detail object.

Returned for interest or fees.

Allowable Values:

36 char max

data[].detail_object.account_token

string
Conditionally returned

Unique identifier of the credit account on which the interest or fee was charged.

Returned for interest or fees.

Allowable Values:

36 char max

Existing account token

data[].detail_object.type

string
Conditionally returned

Type of fee.

Returned for fees.

Allowable Values:

FOREIGN_TRANSACTION_FEE, OVER_LIMIT_FEE, LATE_PAYMENT_FEE, RETURNED_PAYMENT_FEE, CARD_REPLACEMENT_FEE, MINIMUM_INTEREST_FEE, MINIMUM_INTEREST_FEE_REVERSAL, ANNUAL_FEE, MONTHLY_FEE

data[].detail_object.method

string
Conditionally returned

Method used to calculate the fee value.

Returned for fees.

Allowable Values:

PERCENTAGE, FLAT

data[].detail_object.value

decimal
Conditionally returned

Value of the fee configured on the account.

Equivalent to config.fees.schedule.value on the credit account. Send a GET request to /credit/accounts/{account_token} to retrieve an existing credit account.

Returned for fees.

Allowable Values:

Format: 0.00

data[].detail_object.currency_code

string
Conditionally returned

A valid three-digit ISO 4217 currency code

Allowable Values:

USD

data[].detail_object.amount

decimal
Conditionally returned

Amount of the fee.

Returned for fees.

Allowable Values:

Format: 0.00

data[].detail_object.applied_to_amount

decimal
Conditionally returned

The total amount to which a percentage fee method is applied (for example, if a 3% fee is applied to 100, then 100 is the applied_to_amount value).

This field is not applicable for a flat fee method.

Returned for fees.

NOTE: This field is currently not supported and returns null.

Allowable Values:

Format: 0.00

data[].detail_object.description

string
Conditionally returned

Description of the fee.

Returned for fees.

Allowable Values:

255 char max

data[].detail_object.created

datetime
Conditionally returned

Date and time when the fee was created.

Returned for fees.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].detail_object.statement_token

string
Conditionally returned

Unique identifier of the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Existing statement summary token

data[].detail_object.statement_opening_date

datetime
Conditionally returned

Opening date of the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].detail_object.statement_closing_date

datetime
Conditionally returned

Closing date of the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].detail_object.statement_balance

decimal
Conditionally returned

Balance on the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Format: 0.00

data[].detail_object.average_daily_balance

decimal
Conditionally returned

Average daily balance used to calculate interest.

Returned for interest.

Allowable Values:

Format: 0.00

data[].detail_object.goto_apr

decimal
Conditionally returned

Annual percentage rate.

Returned for interest.

Allowable Values:

0–100

data[].detail_object.daily_periodic_rate

decimal
Conditionally returned

Daily rate used to calculate interest.

Returned for interest.

Allowable Values:

0–100

data[].detail_object.days_in_billing_cycle

integer
Conditionally returned

Number of days in the billing cycle.

Returned for interest.

Allowable Values:

1–31

data[].detail_object.interest_amount

decimal
Conditionally returned

Amount of interest calculated for the billing period.

Returned for interest.

Allowable Values:

Format: 0.00

data[].detail_object.created_date

datetime
Conditionally returned

Date and time when the interest was created.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

data[].detail_object.updated_date

datetime
Conditionally returned

Date and time when the interest was last updated.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

Sample response body

JSON
Copied

Is this helpful?

Yes
No

Retrieve account journal entry

Action: GET
Endpoint: /credit/accounts/{account_token}/journalentries/{journal_entry_token}

Retrieve a journal entry for a credit account.

URL path parameters

Fields Description

account_token

string
Required

The unique identifier of the credit account for which you want to retrieve journal entries.

Send a GET request to /credit/accounts to retrieve existing credit account tokens.

Allowable Values:

Existing account token

journal_entry_token

string
Required

The unique identifier of the journal entry you want to retrieve.

Send a GET request to /credit/accounts/{account_token}/journalentries to retrieve existing journal entry tokens.

Allowable Values:

Existing journal entry token

Response body

Fields Description

token

string
Returned

Unique identifier of the journal entry.

Allowable Values:

36 char max

related_token

string
Conditionally returned

Unique identifier of the original journal entry. If the current journal entry is the original, this field is returned empty.

Allowable Values:

Existing journal entry token

root_token

string
Conditionally returned

Unique identifier of the root journal entry. If the current journal entry is the root, this field is returned empty.

Allowable Values:

Existing journal entry token

account_token

string
Returned

Unique identifier of the credit account associated with the credit card used to make the journal entry.

Allowable Values:

Existing account token

card_token

string
Returned

Unique identifier of the credit card used to make the journal entry.

Allowable Values:

8–36 chars

Existing credit card token

user_token

string
Returned

Unique identifier of the credit user.

Allowable Values:

Existing user token

status

string
Returned

Status of the journal entry when it was initially recorded and had an impact on the balance, either PENDING or POSTED. This field is immutable and may not represent the current status.

To view the current status of purchases, refunds, OCTs, and payments, see the detail_object.state field. These journal entries start in PENDING and can transition to CLEARED, DECLINED, or ERROR. This transition of status is only sent through webhook event notifications.

Journal entries that are final transactions, such as clearings, start and remain in a POSTED state.

NOTE: CLEARED, DECLINED, and ERROR are special statuses that do not have an impact on the account balance, and are not recorded in the journal. For these special statuses, impact_time, request_time, created_time, token, and id are returned blank.

Allowable Values:

PENDING, POSTED, DECLINED, ERROR, CLEARED

group

string
Returned

Group to which the journal entry belongs.

Allowable Values:

PURCHASE, REFUND, DISPUTE, ORIGINAL_CREDIT, FEE, REWARD, INTEREST, PAYMENT, ADJUSTMENT, BALANCE_TRANSFER, CASH_ADVANCE, BALANCE_REFUND

type

string
Returned

The journal entry event type.

Allowable Values:

Example: authorization.clearing

id

string
Returned

Eight-digit numeric identifier of the journal entry, an alternate identifier to the UUID that is useful for remembering and referencing.

Allowable Values:

8 chars

amount

decimal
Returned

Amount of the journal entry.

Allowable Values:

Format: 0.00

currency_code

string
Returned

A valid three-digit ISO 4217 currency code

Allowable Values:

USD

memo

string
Returned

Merchant name or description for the journal entry.

Allowable Values:

Example: Whole Foods Market

request_time

datetime
Returned

For purchases, the date and time of the authorization, which is when the user initiates the journal entry.

For other journal entry groups, equivalent to impact_time.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

impact_time

datetime
Returned

Date and time when the journal entry impacts the account balance.

For purchases, this is the time of the authorization.

For purchase authorization clearings, this is the time when the transaction is settled.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

created_time

datetime
Returned

Date and time when the journal entry was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

dispute_token

string
Conditionally returned

Unique identifier of the dispute, if the journal entry is disputed.

Allowable Values:

Existing dispute token

detail_token

string
Returned

Unique identifier of the journal entry’s full details.

Allowable Values:

36 char max

detail_object

object
Conditionally returned

Contains the journal entry’s full details. The fields returned in this object vary based on the journal entry group.

The following lists each journal entry group and the specific fields returned for each group.

Allowable Values:

Existing detail object

detail_object.token

string
Conditionally returned

Unique identifier of the interest charge or fee.

If in the detail_object, unique identifier of the detail object.

Returned for interest or fees.

Allowable Values:

36 char max

detail_object.account_token

string
Conditionally returned

Unique identifier of the credit account on which the interest or fee was charged.

Returned for interest or fees.

Allowable Values:

36 char max

Existing account token

detail_object.type

string
Conditionally returned

Type of fee.

Returned for fees.

Allowable Values:

FOREIGN_TRANSACTION_FEE, OVER_LIMIT_FEE, LATE_PAYMENT_FEE, RETURNED_PAYMENT_FEE, CARD_REPLACEMENT_FEE, MINIMUM_INTEREST_FEE, MINIMUM_INTEREST_FEE_REVERSAL, ANNUAL_FEE, MONTHLY_FEE

detail_object.method

string
Conditionally returned

Method used to calculate the fee value.

Returned for fees.

Allowable Values:

PERCENTAGE, FLAT

detail_object.value

decimal
Conditionally returned

Value of the fee configured on the account.

Equivalent to config.fees.schedule.value on the credit account. Send a GET request to /credit/accounts/{account_token} to retrieve an existing credit account.

Returned for fees.

Allowable Values:

Format: 0.00

detail_object.currency_code

string
Conditionally returned

A valid three-digit ISO 4217 currency code

Allowable Values:

USD

detail_object.amount

decimal
Conditionally returned

Amount of the fee.

Returned for fees.

Allowable Values:

Format: 0.00

detail_object.applied_to_amount

decimal
Conditionally returned

The total amount to which a percentage fee method is applied (for example, if a 3% fee is applied to 100, then 100 is the applied_to_amount value).

This field is not applicable for a flat fee method.

Returned for fees.

NOTE: This field is currently not supported and returns null.

Allowable Values:

Format: 0.00

detail_object.description

string
Conditionally returned

Description of the fee.

Returned for fees.

Allowable Values:

255 char max

detail_object.created

datetime
Conditionally returned

Date and time when the fee was created.

Returned for fees.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

detail_object.statement_token

string
Conditionally returned

Unique identifier of the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Existing statement summary token

detail_object.statement_opening_date

datetime
Conditionally returned

Opening date of the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

detail_object.statement_closing_date

datetime
Conditionally returned

Closing date of the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

detail_object.statement_balance

decimal
Conditionally returned

Balance on the statement summary from which you want to retrieve interest details.

Returned for interest.

Allowable Values:

Format: 0.00

detail_object.average_daily_balance

decimal
Conditionally returned

Average daily balance used to calculate interest.

Returned for interest.

Allowable Values:

Format: 0.00

detail_object.goto_apr

decimal
Conditionally returned

Annual percentage rate.

Returned for interest.

Allowable Values:

0–100

detail_object.daily_periodic_rate

decimal
Conditionally returned

Daily rate used to calculate interest.

Returned for interest.

Allowable Values:

0–100

detail_object.days_in_billing_cycle

integer
Conditionally returned

Number of days in the billing cycle.

Returned for interest.

Allowable Values:

1–31

detail_object.interest_amount

decimal
Conditionally returned

Amount of interest calculated for the billing period.

Returned for interest.

Allowable Values:

Format: 0.00

detail_object.created_date

datetime
Conditionally returned

Date and time when the interest was created.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

detail_object.updated_date

datetime
Conditionally returned

Date and time when the interest was last updated.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

Sample response body

The following code block shows a sample PURCHASE journal entry.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample INTEREST journal entry.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample FEE journal entry.

JSON
Copied

Is this helpful?

Yes
No

Resend credit event notification

Action: POST
Endpoint: /credit/webhooks/{event_type}/{resource_token}

Resends a credit event notification to your webhook endpoint.

Although you send this request as a POST, all parameters are passed in the URL and the body is empty. The event notification is resent to your webhook endpoint and also returned in the response to this request.

For details on how to configure your webhook endpoint, see the About Webhooks tutorial. For the complete /webhooks endpoint reference, see Webhooks.

URL path parameters

Fields Description

event_type

string
Required

Specifies the type of event you want to resend.

Allowable Values:

ledgerentry, journalentry, accounttransition, accountstatement, paymenttransition, delinquencytransition

resource_token

string
Required

The unique identifier of the resource for which you want to resend a notification.

Send a GET request to /credit/accounts/{account_token}/journalentries to retrieve existing journal entry tokens.

Send a GET request to /credit/accounts/{account_token}/ledgerentries to retrieve existing ledger entry tokens.

Send a GET request to /accounts/{account_token}/accounttransitions to retrieve existing account transition tokens.

Send a GET request to /credit/accounts/{account_token}/payments/{payment_token} to retrieve existing payment transition tokens.

Send a GET request to /accounts/{account_token}/statements to retrieve existing statement summary tokens.

Send a GET request to /accounts/{account_token}/delinquencystate/transitions to retrieve existing delinquency transition tokens.

Allowable Values:

Existing journal entry token, ledger entry token, account transition token, payment transition token, statement summary token, or delinquency transition token

Response body

Fields Description

unused

string
Conditionally returned

The event notification that was resent to your webhook endpoint.

Allowable Values:

Valid event notification

Sample response body

The following code block shows a sample of a resent creditaccounttransitions event.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample of a resent creditaccountstatements event.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample of a resent creditjournalentries event.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample of a resent creditledgerentries event.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample of a resent creditpaymenttransitions event.

JSON
Copied

Is this helpful?

Yes
No

The following code block shows a sample of a resent creditdelinquencytransitions event.

JSON
Copied

Is this helpful?

Yes
No

Subscribe to our developer newsletter