+ Entity Relationship Diagram

Scroll to zoom Drag to pan Double-click to fit 100%
erDiagram AuthorizedUser { string id PK string first_name string middle_name_tokenized string last_name string ssn_tokenized } CardShipmentRequest { string id PK string card_token int external_account FK int account_address FK string card_product } ClawbackRequest { string id PK int amount int account FK string clawback_token } ClawbackRequest }o--|| Account : account DirectToBitcoin { string id PK int account FK bool is_enabled int percentage_to_convert } DirectToBitcoin }o--|| Account : account FoldCardBonus { string id PK string name datetime timestamp int account FK } FoldCardBonus }o--|| Account : account FoldCardCard { string token PK int account FK int authorized_user FK string type datetime expiration_date } FoldCardCard }o--|| Account : account FoldCardCard }o--|| AuthorizedUser : authorized_user FoldCardCompletedNextSteps { string id PK int account FK int next_step FK } FoldCardCompletedNextSteps }o--|| Account : account FoldCardCompletedNextSteps }o--|| FoldCardNextSteps : next_step FoldCardFunding { string id PK int account FK datetime created string type int amount } FoldCardFunding }o--|| Account : account FoldCardFundingFreeCredit { string id PK datetime expiration_timestamp int account FK datetime used_timestamp string transfer_type } FoldCardFundingFreeCredit }o--|| Account : account FoldCardFundingUnload { string id PK int original_load FK int amount } FoldCardFundingUnload }o--|| FoldCardFunding : original_load FoldCardNextSteps { string id PK bool is_visible string title string description string call_to_action } FoldCardSummary { string id PK string account FK int available_balance int ledger_balance int credit_balance } FoldCardSummary ||--|| Account : account FoldCardTransaction { string id PK int fold_card_tier string type string sub_type string product_type } FoldCardTransaction }o--|| Account : account FoldCardTransaction }o--|| FoldCardCard : card FoldCardTransaction }o--|| FoldCardTransactionGroup : group FoldCardTransaction ||--|| FoldCardTransactionBoost : transaction_boost FoldCardTransaction }o--|| DirectToBitcoin : direct_to_bitcoin FoldCardTransaction }o--|| AuthorizedUser : authorized_user FoldCardTransactionBoost { string id PK string text int account FK int bonus_percentage int spending_cap } FoldCardTransactionBoost }o--|| Account : account FoldCardTransactionFee { string id PK string state string type int amount int transaction FK } FoldCardTransactionFee }o--|| FoldCardTransaction : transaction FoldCardTransactionGroup { string id PK } FoldCardTrialRedemption { string id PK int account FK datetime redemption_datetime string length_format int length } FoldCardTrialRedemption }o--|| Account : account

AuthorizedUser

Table: fold_authorized_user Extends: BaseModelMixin
Field Type Constraints
id BigAutoField PK
first_name CharField(500) nullable
middle_name_tokenized CharField(500) nullable
last_name CharField(500) nullable
ssn_tokenized CharField(500) nullable
email_address CharField(500) nullable
address_1_tokenized CharField(250) nullable
address_2_tokenized CharField(250) nullable
city_tokenized CharField(250) nullable
state CharField(250) nullable
postal_code_tokenized CharField(250) nullable
country_tokenized CharField(250) nullable
date_of_birth_tokenized CharField(250) nullable
user_token CharField(255) unique nullable
status CharField(255) nullable choicesAuthorizedUserStatus
external_account FK → ExternalAccount
sardine_session_key CharField(255) unique nullable
closure_initiated_by CharField(255) choices nullableAuthorizedUserClosureType

Relationships

.external_account N:1 ExternalAccount

Referenced By (3 tables)

AuthorizedUserAudit N:1 .authorized_user
FoldCardTransaction N:1 .authorized_user
FoldCardCard N:1 .authorized_user

Sample Queries (click to expand)

Get all records
AuthorizedUser.objects.all()
Get by ID
AuthorizedUser.objects.get(id=1)
With related ExternalAccount
AuthorizedUser.objects.select_related("external_account")

CardShipmentRequest

Table: fold_card_shipment_request Extends: BaseModelMixin
Field Type Constraints
id BigAutoField PK
card_token CharField(255) unique nullable
external_account FK → ExternalAccount nullable
account_address FK → AccountAddress nullable
card_product TextField nullable
status CharField(255) choices default=valueCardOrderingStatus

Relationships

.external_account N:1 ExternalAccount
.account_address N:1 AccountAddress

Sample Queries (click to expand)

Get all records
CardShipmentRequest.objects.all()
Get by ID
CardShipmentRequest.objects.get(id=1)
With related ExternalAccount
CardShipmentRequest.objects.select_related("external_account")

ClawbackRequest

Table: fold_clawback_request Extends: BaseModelMixin
Field Type Constraints
id BigAutoField PK
amount DecimalField(8,2)
account FK → Account
clawback_token UUIDField nullable

Relationships

.account N:1 Account

Sample Queries (click to expand)

Get all records
ClawbackRequest.objects.all()
Get by ID
ClawbackRequest.objects.get(id=1)
With related Account
ClawbackRequest.objects.select_related("account")
Filter by account
ClawbackRequest.objects.filter(account_id=123)

DirectToBitcoin

Table: fold_direct_to_bitcoin Extends: BaseModelMixin
Field Type Constraints
id BigAutoField PK
account FK → Account
is_enabled BooleanField default=False
percentage_to_convert PositiveIntegerField

Relationships

.account N:1 Account

Referenced By (3 tables)

WithdrawOnlyAccountDisable N:1 .direct_to_bitcoin
FoldCardTransaction N:1 .direct_to_bitcoin
WalletQuote N:1 .direct_to_bitcoin

Sample Queries (click to expand)

Get all records
DirectToBitcoin.objects.all()
Get by ID
DirectToBitcoin.objects.get(id=1)
With related Account
DirectToBitcoin.objects.select_related("account")
Filter by account
DirectToBitcoin.objects.filter(account_id=123)

FoldCardBonus

Table: fold_foldcardbonus
Field Type Constraints
id BigAutoField PK
name TextField choicesShow 3 choices
EXTRA_SPINS_SIGNUP_BONUSExtra spins signup bonus
EXTRA_SPINS_WEEKLY_BONUSExtra spins weekly bonus
EXTRA_SPINS_DAILY_BALANCE_BONUSExtra spins daily balance bonus
timestamp DateTimeField
account FK → Account

Relationships

.account N:1 Account

Sample Queries (click to expand)

Get all records
FoldCardBonus.objects.all()
Get by ID
FoldCardBonus.objects.get(id=1)
With related Account
FoldCardBonus.objects.select_related("account")
Filter by account
FoldCardBonus.objects.filter(account_id=123)
Filter by timestamp (last 7 days)
FoldCardBonus.objects.filter(timestamp__gte=datetime.now()-timedelta(days=7))

FoldCardCard

Table: fold_foldcardcard Extends: BaseModelMixin
Field Type Constraints
token CharField(255) unique PK
account FK → Account nullable
authorized_user FK → AuthorizedUser nullable
type CharField(255) choices nullableFoldCardType
expiration_date DateField indexed nullable
state CharField(255) choices nullableFoldCardStates
is_current BooleanField default=False

Relationships

.account N:1 Account
.authorized_user N:1 AuthorizedUser

Referenced By (2 tables)

AddressVerification N:1 .fold_card

Sample Queries (click to expand)

Get all records
FoldCardCard.objects.all()
Get by ID
FoldCardCard.objects.get(id=1)
With related Account
FoldCardCard.objects.select_related("account")
Filter by account
FoldCardCard.objects.filter(account_id=123)
Filter by expiration_date (last 7 days)
FoldCardCard.objects.filter(expiration_date__gte=datetime.now()-timedelta(days=7))

FoldCardCompletedNextSteps

Table: fold_foldcardcompletednextsteps
Field Type Constraints
id BigAutoField PK
account FK → Account
next_step FK → FoldCardNextSteps

Relationships

.account N:1 Account
.next_step N:1 FoldCardNextSteps

Sample Queries (click to expand)

Get all records
FoldCardCompletedNextSteps.objects.all()
Get by ID
FoldCardCompletedNextSteps.objects.get(id=1)
With related Account
FoldCardCompletedNextSteps.objects.select_related("account")
Filter by account
FoldCardCompletedNextSteps.objects.filter(account_id=123)

FoldCardFunding

Table: fold_card_funding
Field Type Constraints
id UUIDField PK default=uuid4
account FK → Account
created DateTimeField
type CharField(50) choicesShow 4 choices
DIRECT_DEPOSIT_BUFFERDirect Deposit Buffer
GIFTGift
CUSTOMER_SUPPORTCUSTOMER_SUPPORT
GIFT_CARD_REFUNDGift Card Refund
amount DecimalField(10,2)
fold_order FK → Order nullable

Relationships

.account N:1 Account
.fold_order N:1 Order

Referenced By (1 tables)

FoldCardFundingUnload N:1 .original_load

Sample Queries (click to expand)

Get all records
FoldCardFunding.objects.all()
Get by ID
FoldCardFunding.objects.get(id=1)
With related Account
FoldCardFunding.objects.select_related("account")
Filter by account
FoldCardFunding.objects.filter(account_id=123)
Filter by created (last 7 days)
FoldCardFunding.objects.filter(created__gte=datetime.now()-timedelta(days=7))

FoldCardFundingFreeCredit

Table: fold_card_funding_free_credit Extends: BaseModelMixin
Field Type Constraints
id BigAutoField PK
expiration_timestamp DateTimeField
account FK → Account
used_timestamp DateTimeField nullable
transfer_type CharField(50) choicesFoldCardTransferType
transfer_token CharField(100) nullable
grant_date DateTimeField nullable
grant_index PositiveIntegerField nullable

Relationships

.account N:1 Account

Sample Queries (click to expand)

Get all records
FoldCardFundingFreeCredit.objects.all()
Get by ID
FoldCardFundingFreeCredit.objects.get(id=1)
With related Account
FoldCardFundingFreeCredit.objects.select_related("account")
Filter by account
FoldCardFundingFreeCredit.objects.filter(account_id=123)
Filter by expiration_timestamp (last 7 days)
FoldCardFundingFreeCredit.objects.filter(expiration_timestamp__gte=datetime.now()-timedelta(days=7))

FoldCardFundingUnload

Table: fold_card_funding_unload
Field Type Constraints
id UUIDField PK default=uuid4
original_load FK → FoldCardFunding
amount DecimalField(10,2)

Relationships

.original_load N:1 FoldCardFunding

Sample Queries (click to expand)

Get all records
FoldCardFundingUnload.objects.all()
Get by ID
FoldCardFundingUnload.objects.get(id=1)
With related FoldCardFunding
FoldCardFundingUnload.objects.select_related("original_load")

FoldCardNextSteps

Table: fold_foldcardnextsteps
Field Type Constraints
id BigAutoField PK
is_visible BooleanField default=False
title CharField(100)
description TextField
call_to_action CharField(50)
click_action CharField(50)
color CharField(6)
order IntegerField default=0

Referenced By (1 tables)

Sample Queries (click to expand)

Get all records
FoldCardNextSteps.objects.all()
Get by ID
FoldCardNextSteps.objects.get(id=1)

FoldCardSummary

Table: fold_card_summary
Field Type Constraints
id BigAutoField PK
account OneToOne → Account
available_balance DecimalField(10,2) nullable
ledger_balance DecimalField(10,2) nullable
credit_balance DecimalField(10,2) nullable
last_marqeta_event FK → MarqetaEvent nullable
fold_card_is_funded BooleanField default=False

Relationships

.account 1:1 Account
.last_marqeta_event N:1 MarqetaEvent

Sample Queries (click to expand)

Get all records
FoldCardSummary.objects.all()
Get by ID
FoldCardSummary.objects.get(id=1)
With related Account
FoldCardSummary.objects.select_related("account")
Filter by account
FoldCardSummary.objects.filter(account_id=123)

FoldCardTransaction

Table: fold_card_transaction
Field Type Constraints
id UUIDField PK default=uuid4
fold_card_tier IntegerField nullable indexed
type CharField(50) choicesShow 4 choices
DIRECT_DEPOSIT_BUFFERDirect Deposit Buffer
GIFTGift
CUSTOMER_SUPPORTCUSTOMER_SUPPORT
GIFT_CARD_REFUNDGift Card Refund
sub_type CharField(50) choices nullableShow 2 choices
ATMAtm
QUASICASHQuasicash
product_type CharField(50) choices nullableShow 1 choices
MARQETA_DEBIT_CARDmarqeta_debit_card
account FK → Account
amount DecimalField(10,2)
cash_back_amount DecimalField(10,2) default=0
user_transaction_time DateTimeField
settlement_date DateTimeField nullable
state TextField choicesShow 6 choices
PENDINGPending
DECLINEDDeclined
COMPLETIONCompletion
CLEAREDCleared
CANCELEDCanceled
FAILEDFailed
currency TextField
card FK → FoldCardCard nullable
fold_order OneToOne → Order nullable
group FK → FoldCardTransactionGroup
interchange_fee DecimalField(10,2) default=0
details JSONField nullable
transaction_boost OneToOne → FoldCardTransactionBoost nullable
base_reward_rate DecimalField(30,8) nullable
base_reward_balance_change OneToOne → BalanceChange nullable
ach_reward_rate FK → ACHRewardRate nullable
ach_reward_balance_change OneToOne → BalanceChange nullable
merchant_boost_reward_balance_change OneToOne → BalanceChange nullable
merchant_boost FK → MerchantBoost nullable
category_boost FK → CategoryBoost nullable
category_boost_reward_balance_change OneToOne → BalanceChange nullable
account_game_reward OneToOne → AccountGameReward nullable
rewards_exchange_rate DecimalField(80,40) nullable
ledger_balance DecimalField(10,2)
available_balance DecimalField(10,2)
disable_entries BooleanField default=False
processor_subnetwork TextField nullable
is_hidden BooleanField default=False
client_correlation_id CharField(16) nullable
direct_to_bitcoin FK → DirectToBitcoin nullable
authorized_user FK → AuthorizedUser nullable

Relationships

.account N:1 Account
.card N:1 FoldCardCard
.fold_order 1:1 Order
.transaction_boost 1:1 FoldCardTransactionBoost
.base_reward_balance_change 1:1 BalanceChange
.ach_reward_rate N:1 ACHRewardRate
.ach_reward_balance_change 1:1 BalanceChange
.merchant_boost_reward_balance_change 1:1 BalanceChange
.merchant_boost N:1 MerchantBoost
.category_boost N:1 CategoryBoost
.category_boost_reward_balance_change 1:1 BalanceChange
.account_game_reward 1:1 AccountGameReward
.direct_to_bitcoin N:1 DirectToBitcoin
.authorized_user N:1 AuthorizedUser

Referenced By (10 tables)

ReferralEvent N:1 .fold_card_transaction
AccountGameEntry N:1 .fold_card_transaction
MarqetaEvent N:1 .transaction
FoldCardTransactionFee N:1 .transaction
ACHTransfer 1:1 .fold_card_transaction
WalletQuote 1:1 .fold_card_transaction
WalletQuote 1:1 .fold_card_transaction_reversal

Sample Queries (click to expand)

Get all records
FoldCardTransaction.objects.all()
Get by ID
FoldCardTransaction.objects.get(id=1)
With related Account
FoldCardTransaction.objects.select_related("account")
Filter by account
FoldCardTransaction.objects.filter(account_id=123)
Filter by user_transaction_time (last 7 days)
FoldCardTransaction.objects.filter(user_transaction_time__gte=datetime.now()-timedelta(days=7))

FoldCardTransactionBoost

Table: fold_fold_card_transaction_boost
Field Type Constraints
id BigAutoField PK
text TextField
account FK → Account
bonus_percentage DecimalField(30,8)
spending_cap DecimalField(20,2)
created_date DateTimeField
expiry_date DateTimeField nullable
mcc_codes JSONField
merchant_names JSONField
account_game_reward OneToOne → AccountGameReward nullable

Relationships

.account N:1 Account
.account_game_reward 1:1 AccountGameReward

Referenced By (1 tables)

FoldCardTransaction 1:1 .transaction_boost

Sample Queries (click to expand)

Get all records
FoldCardTransactionBoost.objects.all()
Get by ID
FoldCardTransactionBoost.objects.get(id=1)
With related Account
FoldCardTransactionBoost.objects.select_related("account")
Filter by account
FoldCardTransactionBoost.objects.filter(account_id=123)
Filter by created_date (last 7 days)
FoldCardTransactionBoost.objects.filter(created_date__gte=datetime.now()-timedelta(days=7))

FoldCardTransactionFee

Table: fold_foldcardtransactionfee Extends: BaseModelMixin
Field Type Constraints
id BigAutoField PK
state TextField choices default=valueFeeState
type CharField(100)
amount DecimalField(10,2)
transaction FK → FoldCardTransaction nullable
fold_order FK → Order nullable

Relationships

.transaction N:1 FoldCardTransaction
.fold_order N:1 Order

Sample Queries (click to expand)

Get all records
FoldCardTransactionFee.objects.all()
Get by ID
FoldCardTransactionFee.objects.get(id=1)
With related FoldCardTransaction
FoldCardTransactionFee.objects.select_related("transaction")

FoldCardTransactionGroup

Table: fold_card_transaction_group
Field Type Constraints
id UUIDField PK default=uuid4

Referenced By (1 tables)

Sample Queries (click to expand)

Get all records
FoldCardTransactionGroup.objects.all()
Get by ID
FoldCardTransactionGroup.objects.get(id=1)

FoldCardTrialRedemption

Table: fold_foldcardtrialredemption
Field Type Constraints
id BigAutoField PK
account FK → Account
redemption_datetime DateTimeField
length_format TextField choicesTRIAL_LENGTH
length PositiveIntegerField

Relationships

.account N:1 Account

Sample Queries (click to expand)

Get all records
FoldCardTrialRedemption.objects.all()
Get by ID
FoldCardTrialRedemption.objects.get(id=1)
With related Account
FoldCardTrialRedemption.objects.select_related("account")
Filter by account
FoldCardTrialRedemption.objects.filter(account_id=123)
Filter by redemption_datetime (last 7 days)
FoldCardTrialRedemption.objects.filter(redemption_datetime__gte=datetime.now()-timedelta(days=7))