1 /*************************************************************************** 2 begin : Mon Mar 01 2004 3 copyright : (C) 2018 by Martin Preuss 4 email : martin@libchipcard.de 5 6 *************************************************************************** 7 * Please see toplevel file COPYING for license details * 8 ***************************************************************************/ 9 10 #ifndef AH_ACCOUNT_H 11 #define AH_ACCOUNT_H 12 13 #include "aqhbci/aqhbci.h" /* for AQHBCI_API */ 14 #include <aqbanking/backendsupport/account.h> 15 16 /** @defgroup G_AB_BE_AQHBCI_Account HBCI Account Extensions 17 * @ingroup G_AB_BE_AQHBCI 18 * @short HBCI-specific user functions 19 * @author Martin Preuss<martin@libchipcard.de> 20 * 21 */ 22 /*@{*/ 23 24 #ifdef __cplusplus 25 extern "C" { 26 #endif 27 28 29 /** @name Flags 30 * 31 */ 32 /*@{*/ 33 /** Prefer single transfers over multi transfers for this account */ 34 #define AH_BANK_FLAGS_PREFER_SINGLE_TRANSFER 0x00000001 35 /** Prefer single debit notes over multi debit notes for this account */ 36 #define AH_BANK_FLAGS_PREFER_SINGLE_DEBITNOTE 0x00000002 37 38 /* for this account there are KTV2 information availabel (e.g. account sub id) */ 39 #define AH_BANK_FLAGS_KTV2 0x00000004 40 41 /* this account can be used with SEPA jobs */ 42 #define AH_BANK_FLAGS_SEPA 0x00000008 43 44 /** Prefer single transfers over multi transfers for this account (SEPA) */ 45 #define AH_BANK_FLAGS_SEPA_PREFER_SINGLE_TRANSFER 0x00000010 46 /** Prefer single debit notes over multi debit notes for this account (SEPA) */ 47 #define AH_BANK_FLAGS_SEPA_PREFER_SINGLE_DEBITNOTE 0x00000020 48 /** prefer download of transactions as CAMT 052.001.02 (as opposed to SWIFT MT94x) */ 49 #define AH_BANK_FLAGS_PREFER_CAMT_DOWNLOAD 0x00000040 50 51 52 #define AH_BANK_FLAGS_DEFAULT 0 53 54 /*@}*/ 55 56 57 58 AQHBCI_API AB_ACCOUNT *AH_Account_new(AB_PROVIDER *pro); 59 60 /** @name Flag Manipulation Functions 61 * 62 * See @ref AH_BANK_FLAGS_PREFER_SINGLE_TRANSFER and following. 63 */ 64 /*@{*/ 65 AQHBCI_API 66 void AH_Account_Flags_toDb(GWEN_DB_NODE *db, const char *name, 67 uint32_t flags); 68 69 AQHBCI_API 70 uint32_t AH_Account_Flags_fromDb(GWEN_DB_NODE *db, const char *name); 71 72 AQHBCI_API 73 uint32_t AH_Account_GetFlags(const AB_ACCOUNT *a); 74 75 AQHBCI_API 76 void AH_Account_SetFlags(AB_ACCOUNT *a, uint32_t flags); 77 78 AQHBCI_API 79 void AH_Account_AddFlags(AB_ACCOUNT *a, uint32_t flags); 80 81 AQHBCI_API 82 void AH_Account_SubFlags(AB_ACCOUNT *a, uint32_t flags); 83 84 /*@}*/ 85 86 87 88 #ifdef __cplusplus 89 } 90 #endif 91 92 93 94 /*@}*/ /* defgroup */ 95 96 97 #endif /* AH_ACCOUNT_H */ 98 99 100