@develit-services/ledger 0.0.8 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,25 +3,6 @@ import * as drizzle_orm_sqlite_core from 'drizzle-orm/sqlite-core';
3
3
  import { BankAccountMetadata } from '@develit-io/backend-sdk';
4
4
  import { CURRENCY_CODES, CRYPTO_NETWORK_CODES, CODES, BANK_CODES } from '@develit-io/general-codes';
5
5
 
6
- declare const ACCOUNT_TYPES: readonly ["INTERNAL", "EXTERNAL", "NOSTRO", "TECHNICAL", "SETTLEMENT", "FX", "FEE", "REVENUE", "LOSS", "TRANSPORT", "HOLD", "SYSTEM", "TEST"];
7
- type AccountType = (typeof ACCOUNT_TYPES)[number];
8
- declare const ASSET_TYPES: readonly ["FIAT", "CRYPTO", "TOKEN", "STOCK", "COMMODITY", "OTHER"];
9
- type AssetType = (typeof ASSET_TYPES)[number];
10
- declare const BALANCE_STRATEGIES: readonly ["SNAPSHOT", "COMPUTED"];
11
- type BalanceStrategy = (typeof BALANCE_STRATEGIES)[number];
12
- declare const IDENTIFIER_KINDS: readonly ["IBAN", "LOCAL_CZ", "SWIFT", "CRYPTO_ADDRESS"];
13
- type IdentifierKind = (typeof IDENTIFIER_KINDS)[number];
14
- declare const ENTRY_STATUSES: readonly ["PENDING", "REALIZED", "FAILED", "CANCELED"];
15
- type EntryStatus = (typeof ENTRY_STATUSES)[number];
16
- declare const TRANSACTION_STATUSES: readonly ["WAITING_FOR_PAYMENT", "PAUSED", "WAITING_FOR_MANUAL_PROCESSING", "MATCHED", "RETURNING", "RETURNED", "FAILED", "CANCELLED", "COMPLETED"];
17
- type TransactionStatus = (typeof TRANSACTION_STATUSES)[number];
18
- declare const TRANSACTION_TYPES: readonly ["CLIENT_FUND_IN", "CLIENT_FUND_OUT", "PROVIDER_FUND_IN", "PROVIDER_FUND_OUT", "EXCHANGE", "UNMATCHED", "ADJUSTMENT", "TRANSFER"];
19
- type TransactionType = (typeof TRANSACTION_TYPES)[number];
20
- declare const REFERENCE_TYPES: readonly ["PAYMENT", "EXCHANGE", "ORDER"];
21
- type ReferenceType = (typeof REFERENCE_TYPES)[number];
22
- declare const PAYMENT_CHARGE_TYPES: readonly ["SHA", "OUR", "BEN"];
23
- type PaymentChargeType = (typeof PAYMENT_CHARGE_TYPES)[number];
24
-
25
6
  declare const account: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
26
7
  name: "account";
27
8
  schema: undefined;
@@ -262,7 +243,7 @@ declare const accountIdentifier: drizzle_orm_sqlite_core.SQLiteTableWithColumns<
262
243
  tableName: "account_identifier";
263
244
  dataType: "string";
264
245
  columnType: "SQLiteText";
265
- data: "IBAN" | "LOCAL_CZ" | "SWIFT" | "CRYPTO_ADDRESS";
246
+ data: "SWIFT" | "IBAN" | "LOCAL_CZ" | "CRYPTO_ADDRESS";
266
247
  driverParam: string;
267
248
  notNull: true;
268
249
  hasDefault: false;
@@ -275,7 +256,7 @@ declare const accountIdentifier: drizzle_orm_sqlite_core.SQLiteTableWithColumns<
275
256
  generated: undefined;
276
257
  }, {}, {
277
258
  length: number | undefined;
278
- $type: "IBAN" | "LOCAL_CZ" | "SWIFT" | "CRYPTO_ADDRESS";
259
+ $type: "SWIFT" | "IBAN" | "LOCAL_CZ" | "CRYPTO_ADDRESS";
279
260
  }>;
280
261
  iban: drizzle_orm_sqlite_core.SQLiteColumn<{
281
262
  name: "iban";
@@ -599,6 +580,129 @@ declare const accountIdentifierMappingRelations: drizzle_orm.Relations<"account_
599
580
  identifier: drizzle_orm.One<"account_identifier", true>;
600
581
  }>;
601
582
 
583
+ declare const ACCOUNT_TYPES: readonly ["INTERNAL", "EXTERNAL", "NOSTRO", "TECHNICAL", "SETTLEMENT", "FX", "FEE", "REVENUE", "LOSS", "TRANSPORT", "HOLD", "SYSTEM", "TEST"];
584
+ type AccountType = (typeof ACCOUNT_TYPES)[number];
585
+ declare const ASSET_TYPES: readonly ["FIAT", "CRYPTO", "TOKEN", "STOCK", "COMMODITY", "OTHER"];
586
+ type AssetType = (typeof ASSET_TYPES)[number];
587
+ declare const BALANCE_STRATEGIES: readonly ["SNAPSHOT", "COMPUTED"];
588
+ type BalanceStrategy = (typeof BALANCE_STRATEGIES)[number];
589
+ declare const IDENTIFIER_KINDS: readonly ["IBAN", "LOCAL_CZ", "SWIFT", "CRYPTO_ADDRESS"];
590
+ type IdentifierKind = (typeof IDENTIFIER_KINDS)[number];
591
+ declare const ENTRY_STATUSES: readonly ["PENDING", "REALIZED", "FAILED", "CANCELED"];
592
+ type EntryStatus = (typeof ENTRY_STATUSES)[number];
593
+ declare const TRANSACTION_STATUSES: readonly ["WAITING_FOR_PAYMENT", "PAUSED", "WAITING_FOR_MANUAL_PROCESSING", "MATCHED", "RETURNING", "RETURNED", "FAILED", "CANCELLED", "COMPLETED"];
594
+ type TransactionStatus = (typeof TRANSACTION_STATUSES)[number];
595
+ declare const TRANSACTION_TYPES: readonly ["CLIENT_FUND_IN", "CLIENT_FUND_OUT", "PROVIDER_FUND_IN", "PROVIDER_FUND_OUT", "EXCHANGE", "UNMATCHED", "ADJUSTMENT", "TRANSFER"];
596
+ type TransactionType = (typeof TRANSACTION_TYPES)[number];
597
+ declare const REFERENCE_TYPES: readonly ["PAYMENT", "EXCHANGE", "ORDER"];
598
+ type ReferenceType = (typeof REFERENCE_TYPES)[number];
599
+ declare const PAYMENT_CHARGE_TYPES: readonly ["SHA", "OUR", "BEN"];
600
+ type PaymentChargeType = (typeof PAYMENT_CHARGE_TYPES)[number];
601
+
602
+ declare const PAYMENT_TYPES: readonly ["SEPA", "SWIFT", "IFSC", "DOMESTIC"];
603
+ type PaymentType = (typeof PAYMENT_TYPES)[number];
604
+
605
+ type CryptoNetworkCode = (typeof CRYPTO_NETWORK_CODES)[number];
606
+ declare const PAYMENT_STATUSES: readonly ["PREPARED", "INITIALIZED", "FAILED", "PENDING", "COMPLETED", "CREATED"];
607
+ type PaymentStatus = (typeof PAYMENT_STATUSES)[number];
608
+ declare const PAYMENT_DIRECTIONS: readonly ["INCOMING", "OUTGOING"];
609
+ type PaymentDirection = (typeof PAYMENT_DIRECTIONS)[number];
610
+
611
+ type CurrencyCode = (typeof CURRENCY_CODES)[number];
612
+ /**
613
+ * Batch status constants
614
+ */
615
+ declare const BATCH_STATUSES: readonly ["OPEN", "WAITING_FOR_PROCESSING", "PROCESSING", "READY_TO_SIGN", "PREPARED", "COMPLETED", "FAILED"];
616
+ /**
617
+ * Type definition for batch status
618
+ */
619
+ type BatchStatus = (typeof BATCH_STATUSES)[number];
620
+ type Currency = CODES.Currency;
621
+
622
+ type BankCode = (typeof BANK_CODES)[number];
623
+ declare const COUNTRY_CODES: ["AF" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BO" | "BQ" | "BA" | "BW" | "BR" | "IO" | "VG" | "BG" | "BF" | "BI" | "KH" | "CM" | "CA" | "CV" | "CF" | "TD" | "CL" | "CN" | "CO" | "KM" | "CK" | "CR" | "HR" | "CW" | "CY" | "CZ" | "CD" | "DK" | "DJ" | "DM" | "DO" | "TL" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "ET" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GR" | "GD" | "GP" | "GU" | "GT" | "GN" | "GW" | "GY" | "HT" | "HN" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "CI" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "XK" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LI" | "LT" | "LU" | "MK" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MQ" | "MR" | "MU" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "NA" | "NP" | "NL" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "KP" | "NO" | "OM" | "PK" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PL" | "PT" | "PR" | "QA" | "CG" | "RE" | "RO" | "RU" | "RW" | "BL" | "KN" | "LC" | "MF" | "VC" | "WS" | "SM" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SX" | "SK" | "SI" | "SO" | "ZA" | "KR" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SZ" | "SE" | "CH" | "TW" | "TJ" | "TZ" | "TH" | "TG" | "TO" | "TT" | "TN" | "TR" | "TM" | "UM" | "VI" | "UG" | "UA" | "AE" | "GB" | "UZ" | "VU" | "VE" | "VN" | "WF" | "EH" | "YE" | "ZM" | "ZW", ...("AF" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BO" | "BQ" | "BA" | "BW" | "BR" | "IO" | "VG" | "BG" | "BF" | "BI" | "KH" | "CM" | "CA" | "CV" | "CF" | "TD" | "CL" | "CN" | "CO" | "KM" | "CK" | "CR" | "HR" | "CW" | "CY" | "CZ" | "CD" | "DK" | "DJ" | "DM" | "DO" | "TL" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "ET" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GR" | "GD" | "GP" | "GU" | "GT" | "GN" | "GW" | "GY" | "HT" | "HN" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "CI" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "XK" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LI" | "LT" | "LU" | "MK" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MQ" | "MR" | "MU" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "NA" | "NP" | "NL" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "KP" | "NO" | "OM" | "PK" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PL" | "PT" | "PR" | "QA" | "CG" | "RE" | "RO" | "RU" | "RW" | "BL" | "KN" | "LC" | "MF" | "VC" | "WS" | "SM" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SX" | "SK" | "SI" | "SO" | "ZA" | "KR" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SZ" | "SE" | "CH" | "TW" | "TJ" | "TZ" | "TH" | "TG" | "TO" | "TT" | "TN" | "TR" | "TM" | "UM" | "VI" | "UG" | "UA" | "AE" | "GB" | "UZ" | "VU" | "VE" | "VN" | "WF" | "EH" | "YE" | "ZM" | "ZW")[]];
624
+ type CountryCode = (typeof COUNTRY_CODES)[number];
625
+
626
+ interface TransactionMetadata {
627
+ /**
628
+ * Payment processing information for bank payment matching and initiation
629
+ */
630
+ payment?: {
631
+ vs?: string;
632
+ ss?: string;
633
+ ks?: string;
634
+ message?: string;
635
+ paymentChargeType?: PaymentChargeType;
636
+ expressPayment?: boolean;
637
+ reference?: string;
638
+ creditor?: BankAccountMetadata;
639
+ debtor?: BankAccountMetadata;
640
+ executionDate?: string;
641
+ currency?: CurrencyCode;
642
+ amount?: number;
643
+ };
644
+ }
645
+ interface EntryMetadata {
646
+ context?: {
647
+ initiatedBy?: 'system' | 'user' | 'bank' | 'blockchain';
648
+ sourceService?: string;
649
+ processor?: string;
650
+ userId?: string;
651
+ organizationId?: string;
652
+ sessionId?: string;
653
+ ipAddress?: string;
654
+ };
655
+ /**
656
+ * Info about the crypto transaction
657
+ */
658
+ crypto?: {
659
+ txHash?: string;
660
+ fromAddress?: string;
661
+ toAddress?: string;
662
+ chainId?: string;
663
+ network?: string;
664
+ confirmations?: number;
665
+ blockNumber?: number;
666
+ };
667
+ /**
668
+ * Info about the foreign exchange transaction
669
+ */
670
+ fx?: {
671
+ rate?: number;
672
+ sourceCurrency?: string;
673
+ targetCurrency?: string;
674
+ provider?: string;
675
+ slippage?: number;
676
+ spread?: number;
677
+ };
678
+ /**
679
+ * Info about the fee applied to the transaction
680
+ */
681
+ fee?: {
682
+ feeType?: 'flat' | 'percentage';
683
+ sourceAmount?: number;
684
+ appliedAmount?: number;
685
+ feeTargetAccountId?: string;
686
+ feeCode?: string;
687
+ };
688
+ /**
689
+ * Specific tag for reconciliation purposes, e.g. for bank statements, batchId, etc.
690
+ */
691
+ reconciliationTag?: string;
692
+ /**
693
+ * Specific code for bank clearing purposes
694
+ */
695
+ clearingCode?: string;
696
+ /**
697
+ * Tags for categorization or grouping of the transaction
698
+ */
699
+ tags?: string[];
700
+ /**
701
+ * Additional notes or comments about the transaction
702
+ */
703
+ note?: string;
704
+ }
705
+
602
706
  declare const entry: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
603
707
  name: "entry";
604
708
  schema: undefined;
@@ -1000,7 +1104,7 @@ declare const transaction: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
1000
1104
  tableName: "transaction";
1001
1105
  dataType: "string";
1002
1106
  columnType: "SQLiteText";
1003
- data: "WAITING_FOR_PAYMENT" | "PAUSED" | "WAITING_FOR_MANUAL_PROCESSING" | "MATCHED" | "RETURNING" | "RETURNED" | "FAILED" | "CANCELLED" | "COMPLETED";
1107
+ data: "FAILED" | "COMPLETED" | "WAITING_FOR_PAYMENT" | "PAUSED" | "WAITING_FOR_MANUAL_PROCESSING" | "MATCHED" | "RETURNING" | "RETURNED" | "CANCELLED";
1004
1108
  driverParam: string;
1005
1109
  notNull: true;
1006
1110
  hasDefault: false;
@@ -1013,7 +1117,7 @@ declare const transaction: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
1013
1117
  generated: undefined;
1014
1118
  }, {}, {
1015
1119
  length: number | undefined;
1016
- $type: "WAITING_FOR_PAYMENT" | "PAUSED" | "WAITING_FOR_MANUAL_PROCESSING" | "MATCHED" | "RETURNING" | "RETURNED" | "FAILED" | "CANCELLED" | "COMPLETED";
1120
+ $type: "FAILED" | "COMPLETED" | "WAITING_FOR_PAYMENT" | "PAUSED" | "WAITING_FOR_MANUAL_PROCESSING" | "MATCHED" | "RETURNING" | "RETURNED" | "CANCELLED";
1017
1121
  }>;
1018
1122
  statusReason: drizzle_orm_sqlite_core.SQLiteColumn<{
1019
1123
  name: "status_reason";
@@ -1204,117 +1308,5 @@ declare namespace schema {
1204
1308
  };
1205
1309
  }
1206
1310
 
1207
- declare const PAYMENT_TYPES: readonly ["SEPA", "SWIFT", "IFSC", "DOMESTIC"];
1208
- type PaymentType = (typeof PAYMENT_TYPES)[number];
1209
-
1210
- type CryptoNetworkCode = (typeof CRYPTO_NETWORK_CODES)[number];
1211
- declare const PAYMENT_STATUSES: readonly ["PREPARED", "INITIALIZED", "FAILED", "PENDING", "COMPLETED", "CREATED"];
1212
- type PaymentStatus = (typeof PAYMENT_STATUSES)[number];
1213
- declare const PAYMENT_DIRECTIONS: readonly ["INCOMING", "OUTGOING"];
1214
- type PaymentDirection = (typeof PAYMENT_DIRECTIONS)[number];
1215
-
1216
- type CurrencyCode = (typeof CURRENCY_CODES)[number];
1217
- /**
1218
- * Batch status constants
1219
- */
1220
- declare const BATCH_STATUSES: readonly ["OPEN", "WAITING_FOR_PROCESSING", "PROCESSING", "READY_TO_SIGN", "PREPARED", "COMPLETED", "FAILED"];
1221
- /**
1222
- * Type definition for batch status
1223
- */
1224
- type BatchStatus = (typeof BATCH_STATUSES)[number];
1225
- type Currency = CODES.Currency;
1226
-
1227
- type BankCode = (typeof BANK_CODES)[number];
1228
- declare const COUNTRY_CODES: ["AF" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BO" | "BQ" | "BA" | "BW" | "BR" | "IO" | "VG" | "BG" | "BF" | "BI" | "KH" | "CM" | "CA" | "CV" | "CF" | "TD" | "CL" | "CN" | "CO" | "KM" | "CK" | "CR" | "HR" | "CW" | "CY" | "CZ" | "CD" | "DK" | "DJ" | "DM" | "DO" | "TL" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "ET" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GR" | "GD" | "GP" | "GU" | "GT" | "GN" | "GW" | "GY" | "HT" | "HN" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "CI" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "XK" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LI" | "LT" | "LU" | "MK" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MQ" | "MR" | "MU" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "NA" | "NP" | "NL" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "KP" | "NO" | "OM" | "PK" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PL" | "PT" | "PR" | "QA" | "CG" | "RE" | "RO" | "RU" | "RW" | "BL" | "KN" | "LC" | "MF" | "VC" | "WS" | "SM" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SX" | "SK" | "SI" | "SO" | "ZA" | "KR" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SZ" | "SE" | "CH" | "TW" | "TJ" | "TZ" | "TH" | "TG" | "TO" | "TT" | "TN" | "TR" | "TM" | "UM" | "VI" | "UG" | "UA" | "AE" | "GB" | "UZ" | "VU" | "VE" | "VN" | "WF" | "EH" | "YE" | "ZM" | "ZW", ...("AF" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BO" | "BQ" | "BA" | "BW" | "BR" | "IO" | "VG" | "BG" | "BF" | "BI" | "KH" | "CM" | "CA" | "CV" | "CF" | "TD" | "CL" | "CN" | "CO" | "KM" | "CK" | "CR" | "HR" | "CW" | "CY" | "CZ" | "CD" | "DK" | "DJ" | "DM" | "DO" | "TL" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "ET" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GR" | "GD" | "GP" | "GU" | "GT" | "GN" | "GW" | "GY" | "HT" | "HN" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "CI" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "XK" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LI" | "LT" | "LU" | "MK" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MQ" | "MR" | "MU" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "NA" | "NP" | "NL" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "KP" | "NO" | "OM" | "PK" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PL" | "PT" | "PR" | "QA" | "CG" | "RE" | "RO" | "RU" | "RW" | "BL" | "KN" | "LC" | "MF" | "VC" | "WS" | "SM" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SX" | "SK" | "SI" | "SO" | "ZA" | "KR" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SZ" | "SE" | "CH" | "TW" | "TJ" | "TZ" | "TH" | "TG" | "TO" | "TT" | "TN" | "TR" | "TM" | "UM" | "VI" | "UG" | "UA" | "AE" | "GB" | "UZ" | "VU" | "VE" | "VN" | "WF" | "EH" | "YE" | "ZM" | "ZW")[]];
1229
- type CountryCode = (typeof COUNTRY_CODES)[number];
1230
-
1231
- interface TransactionMetadata {
1232
- /**
1233
- * Tags for categorization or grouping of the transaction
1234
- */
1235
- tags?: string[];
1236
- /**
1237
- * Additional notes or comments about the transaction
1238
- */
1239
- note?: string;
1240
- /**
1241
- * Payment processing information for bank payment matching and initiation
1242
- */
1243
- payment?: {
1244
- vs?: string;
1245
- ss?: string;
1246
- ks?: string;
1247
- message?: string;
1248
- paymentReason?: string;
1249
- paymentChargeType?: PaymentChargeType;
1250
- reference?: string;
1251
- creditor?: BankAccountMetadata;
1252
- debtor?: BankAccountMetadata;
1253
- executionDate?: string;
1254
- currency?: CurrencyCode;
1255
- amount?: number;
1256
- };
1257
- }
1258
- interface EntryMetadata {
1259
- context?: {
1260
- initiatedBy?: 'system' | 'user' | 'bank' | 'blockchain';
1261
- sourceService?: string;
1262
- processor?: string;
1263
- userId?: string;
1264
- organizationId?: string;
1265
- sessionId?: string;
1266
- ipAddress?: string;
1267
- };
1268
- /**
1269
- * Info about the crypto transaction
1270
- */
1271
- crypto?: {
1272
- txHash?: string;
1273
- fromAddress?: string;
1274
- toAddress?: string;
1275
- chainId?: string;
1276
- network?: string;
1277
- confirmations?: number;
1278
- blockNumber?: number;
1279
- };
1280
- /**
1281
- * Info about the foreign exchange transaction
1282
- */
1283
- fx?: {
1284
- rate?: number;
1285
- sourceCurrency?: string;
1286
- targetCurrency?: string;
1287
- provider?: string;
1288
- slippage?: number;
1289
- spread?: number;
1290
- };
1291
- /**
1292
- * Info about the fee applied to the transaction
1293
- */
1294
- fee?: {
1295
- feeType?: 'flat' | 'percentage';
1296
- sourceAmount?: number;
1297
- appliedAmount?: number;
1298
- feeTargetAccountId?: string;
1299
- feeCode?: string;
1300
- };
1301
- /**
1302
- * Specific tag for reconciliation purposes, e.g. for bank statements, batchId, etc.
1303
- */
1304
- reconciliationTag?: string;
1305
- /**
1306
- * Specific code for bank clearing purposes
1307
- */
1308
- clearingCode?: string;
1309
- /**
1310
- * Tags for categorization or grouping of the transaction
1311
- */
1312
- tags?: string[];
1313
- /**
1314
- * Additional notes or comments about the transaction
1315
- */
1316
- note?: string;
1317
- }
1318
-
1319
1311
  export { ACCOUNT_TYPES as A, BALANCE_STRATEGIES as B, schema as D, ENTRY_STATUSES as E, account as F, accountIdentifier as G, accountIdentifierMapping as H, IDENTIFIER_KINDS as I, accountRelations as J, accountIdentifierRelations as K, accountIdentifierMappingRelations as L, entry as M, transaction as N, PAYMENT_CHARGE_TYPES as P, REFERENCE_TYPES as R, TRANSACTION_STATUSES as T, ASSET_TYPES as b, TRANSACTION_TYPES as h, PAYMENT_TYPES as n, PAYMENT_STATUSES as p, PAYMENT_DIRECTIONS as r, BATCH_STATUSES as u, COUNTRY_CODES as y };
1320
1312
  export type { CryptoNetworkCode as C, AccountType as a, AssetType as c, BalanceStrategy as d, IdentifierKind as e, EntryStatus as f, TransactionStatus as g, TransactionType as i, ReferenceType as j, PaymentChargeType as k, TransactionMetadata as l, EntryMetadata as m, PaymentType as o, PaymentStatus as q, PaymentDirection as s, CurrencyCode as t, BatchStatus as v, Currency as w, BankCode as x, CountryCode as z };