Data model
"accounts"."ACCOUNT" {
shape: sql_table
link: "../../accounts/internals/models/#components.payment_gateway.subcomponents.accounts.models.account.Account"
"id": UUID {constraint: primary_key}
"account_holder_id": UUID
"description": TEXT
"external_id": VARCHAR(255)
"provider": VARCHAR(255)
"reference": TEXT
"terminated_at": DATETIME
}
"cards"."CARD" {
shape: sql_table
link: "../../cards/internals/models/#components.payment_gateway.subcomponents.cards.models.card.Card"
"id": UUID {constraint: primary_key}
"account_id": UUID
"card_holder_id": UUID
"description": TEXT
"display_name": TEXT
"expiration_date": DATE
"external_id": VARCHAR(255)
"is_virtual": BOOLEAN
"issuance_reason": TEXT
"issued_at": DATETIME
"last_four_digits": VARCHAR(4)
"provider": VARCHAR(255)
"reference": TEXT
"terminated_at": DATETIME
}
"transfers"."TRANSFER_EVENT" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.transfer_event.TransferEvent"
"id": UUID {constraint: primary_key}
"balance": INTEGER
"effective_date": DATETIME
"external_id": VARCHAR(255)
"provider": VARCHAR(255)
"raw": JSONB
"received": INTEGER
"reserved": INTEGER
"status": VARCHAR
}
"transfers"."TRANSFER_HISTORY" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.transfer_history.TransferHistory"
"id": UUID {constraint: primary_key}
"private_ref": VARCHAR(255)
"private_type": VARCHAR(255)
}
"transfers"."TRANSFER_UPDATE" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.transfer_update.TransferUpdate"
"id": UUID {constraint: primary_key}
"amount": INTEGER
"currency": VARCHAR(3)
"direction": VARCHAR(255)
"external_transaction_id": VARCHAR(255)
"external_transfer_id": VARCHAR(255)
"occurred_at": DATETIME
"provider": VARCHAR(255)
"raw": JSONB
"sequence_number": INTEGER
"status": VARCHAR
"transfer_id": UUID
"transfer_type": VARCHAR(255)
}
"transfers"."ACCOUNT_TRANSFER_TRANSFER_EVENT_ASSOCIATION" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.account_transfer.AccountTransferTransferEventAssociation"
"id": UUID {constraint: primary_key}
"account_transfer_id": UUID
"sequence": INTEGER
"transfer_event_id": UUID
}
"transfers"."ACCOUNT_TRANSFER" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.account_transfer.AccountTransfer"
"id": UUID {constraint: primary_key}
"account_id": UUID
"direction": VARCHAR(255)
"effective_date": DATETIME
"external_id": VARCHAR(255)
"provider": VARCHAR(255)
"raw": JSONB
"reference": VARCHAR(255)
"transfer_history_id": UUID
}
"accounts"."SEPA_BENEFICIARY" {
shape: sql_table
link: "../../accounts/internals/models/#components.payment_gateway.subcomponents.accounts.models.sepa_beneficiary.SepaBeneficiary"
"id": UUID {constraint: primary_key}
"account_id": UUID
"external_id": VARCHAR(255)
"iban": VARCHAR(34)
"issued_at": DATETIME
"name": VARCHAR(255)
"provider": VARCHAR(255)
}
"banking_documents"."SEPA_MANDATE" {
shape: sql_table
link: "../../banking_documents/internals/models/#components.payment_gateway.subcomponents.banking_documents.models.sepa_mandate.SepaMandate"
"id": UUID {constraint: primary_key}
"account_holder_id": UUID
"debtor_country": VARCHAR(3)
"debtor_iban": VARCHAR(34)
"debtor_name": VARCHAR(255)
"external_id": VARCHAR(255)
"issued_at": DATETIME
"provider": VARCHAR(255)
"sepa_creditor_identifier": VARCHAR(255)
"unique_mandate_reference": VARCHAR(255)
}
"transfers"."BANK_TRANSFER_TRANSFER_EVENT_ASSOCIATION" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.bank_transfer.BankTransferTransferEventAssociation"
"id": UUID {constraint: primary_key}
"bank_transfer_id": UUID
"sequence": INTEGER
"transfer_event_id": UUID
}
"transfers"."BANK_TRANSFER" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.bank_transfer.BankTransfer"
"id": UUID {constraint: primary_key}
"account_id": UUID
"direction": VARCHAR(255)
"effective_date": DATETIME
"external_id": VARCHAR(255)
"provider": VARCHAR(255)
"raw": JSONB
"sepa_beneficiary_id": UUID
"sepa_mandate_id": UUID
"transfer_history_id": UUID
}
"transfers"."CARD_PAYMENT_TRANSFER_EVENT_ASSOCIATION" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.card_transfer.CardTransferTransferEventAssociation"
"id": UUID {constraint: primary_key}
"card_payment_id": UUID
"sequence": INTEGER
"transfer_event_id": UUID
}
"transfers"."CARD_PAYMENT" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.card_transfer.CardTransfer"
"id": UUID {constraint: primary_key}
"account_id": UUID
"card_id": UUID
"city": VARCHAR(255)
"country": VARCHAR(255)
"effective_date": DATETIME
"external_id": VARCHAR(255)
"mcc": VARCHAR(10)
"merchant_id": VARCHAR(255)
"name": VARCHAR(255)
"postal_code": VARCHAR(255)
"provider": VARCHAR(255)
"raw": JSONB
"transfer_history_id": UUID
}
"transfers"."INTERNAL_TRANSFER" {
shape: sql_table
link: "../internals/models/#components.payment_gateway.subcomponents.transfers.models.internal_transfer.InternalTransfer"
"id": UUID {constraint: primary_key}
"amount": INTEGER
"description": TEXT
"effective_date": DATETIME
"reference": VARCHAR
"transfer_history_id": UUID
}
"accounts"."ACCOUNT"."id" -> "cards"."CARD"."account_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"transfers"."ACCOUNT_TRANSFER"."id" -> "transfers"."ACCOUNT_TRANSFER_TRANSFER_EVENT_ASSOCIATION"."account_transfer_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
"transfers"."TRANSFER_EVENT"."id" -> "transfers"."ACCOUNT_TRANSFER_TRANSFER_EVENT_ASSOCIATION"."transfer_event_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-one-required
}
"transfers"."TRANSFER_HISTORY"."id" -> "transfers"."ACCOUNT_TRANSFER"."transfer_history_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
"accounts"."ACCOUNT"."id" -> "transfers"."ACCOUNT_TRANSFER"."account_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"accounts"."ACCOUNT"."id" -> "accounts"."SEPA_BENEFICIARY"."account_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"transfers"."TRANSFER_EVENT"."id" -> "transfers"."BANK_TRANSFER_TRANSFER_EVENT_ASSOCIATION"."transfer_event_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-one-required
}
"transfers"."BANK_TRANSFER"."id" -> "transfers"."BANK_TRANSFER_TRANSFER_EVENT_ASSOCIATION"."bank_transfer_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
"accounts"."ACCOUNT"."id" -> "transfers"."BANK_TRANSFER"."account_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"banking_documents"."SEPA_MANDATE"."id" -> "transfers"."BANK_TRANSFER"."sepa_mandate_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"transfers"."TRANSFER_HISTORY"."id" -> "transfers"."BANK_TRANSFER"."transfer_history_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
"accounts"."SEPA_BENEFICIARY"."id" -> "transfers"."BANK_TRANSFER"."sepa_beneficiary_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"transfers"."TRANSFER_EVENT"."id" -> "transfers"."CARD_PAYMENT_TRANSFER_EVENT_ASSOCIATION"."transfer_event_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-one-required
}
"transfers"."CARD_PAYMENT"."id" -> "transfers"."CARD_PAYMENT_TRANSFER_EVENT_ASSOCIATION"."card_payment_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
"cards"."CARD"."id" -> "transfers"."CARD_PAYMENT"."card_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"transfers"."TRANSFER_HISTORY"."id" -> "transfers"."CARD_PAYMENT"."transfer_history_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
"accounts"."ACCOUNT"."id" -> "transfers"."CARD_PAYMENT"."account_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"transfers"."TRANSFER_HISTORY"."id" -> "transfers"."INTERNAL_TRANSFER"."transfer_history_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
Hold "Alt" / "Option" to enable pan & zoom