HBCI Backend (AqHBCI)
[Backends]


Detailed Description

AqHBCI supports the German HBCI (Homebanking Computer Interface) protocol for online banking. It currently supports version 2.01, 2.10 and 2.20 of the HBCI specification.


Modules

 HBCI Account Extensions
 HBCI-specific user functions.
 HBCI Medium
 Security Medium For HBCI.
 HBCI Message Engine
 HBCI-specific message engine extension.
 HBCI User Extensions
 HBCI-specific user functions.

Informative Functions

AQHBCI_API const char * AH_Provider_GetProductName (const AB_PROVIDER *pro)
AQHBCI_API const char * AH_Provider_GetProductVersion (const AB_PROVIDER *pro)

Server Interactive Functions

Functions in this group are used from setup wizards or tools. They send requests to the server (including opening and closing of the progress dialog by calling AB_Banking_ProgressStart etc).

AQHBCI_API int AH_Provider_GetAccounts (AB_PROVIDER *pro, AB_USER *u, AB_IMEXPORTER_CONTEXT *ctx, int nounmount)
AQHBCI_API int AH_Provider_GetSysId (AB_PROVIDER *pro, AB_USER *u, AB_IMEXPORTER_CONTEXT *ctx, int nounmount)
AQHBCI_API int AH_Provider_GetServerKeys (AB_PROVIDER *pro, AB_USER *u, AB_IMEXPORTER_CONTEXT *ctx, int nounmount)
AQHBCI_API int AH_Provider_SendUserKeys (AB_PROVIDER *pro, AB_USER *u, AB_IMEXPORTER_CONTEXT *ctx, int nounmount)
AQHBCI_API int AH_Provider_GetCert (AB_PROVIDER *pro, AB_USER *u, int nounmount)
AQHBCI_API int AH_Provider_GetItanModes (AB_PROVIDER *pro, AB_USER *u, AB_IMEXPORTER_CONTEXT *ctx, int nounmount)
AQHBCI_API int AH_Provider_ChangePin (AB_PROVIDER *pro, AB_USER *u, AB_IMEXPORTER_CONTEXT *ctx, int nounmount)

Generating Ini-Letters

INI letters are used in RDH mode only. They are used to verify the public server keys and to create a letter to be sent to the bank for verification of the public user keys.

AQHBCI_API int AH_Provider_GetIniLetterTxt (AB_PROVIDER *pro, AB_USER *u, int useBankKey, GWEN_BUFFER *lbuf, int nounmount)
AQHBCI_API int AH_Provider_GetIniLetterHtml (AB_PROVIDER *pro, AB_USER *u, int useBankKey, GWEN_BUFFER *lbuf, int nounmount)

Security Media Management

AQHBCI_API const AH_MEDIUM_LIST * AH_Provider_GetMediaList (AB_PROVIDER *pro)
AQHBCI_API AH_MEDIUM * AH_Provider_MediumFactory (AB_PROVIDER *pro, const char *typeName, const char *subTypeName, const char *mediumName)
AQHBCI_API AH_MEDIUM * AH_Provider_FindMedium (const AB_PROVIDER *pro, const char *typeName, const char *mediumName)
AQHBCI_API AH_MEDIUM * AH_Provider_FindMediumById (const AB_PROVIDER *pro, GWEN_TYPE_UINT32 id)
AQHBCI_API int AH_Provider_AddMedium (AB_PROVIDER *pro, AH_MEDIUM *m)
AQHBCI_API int AH_Provider_RemoveMedium (AB_PROVIDER *pro, AH_MEDIUM *m)
AQHBCI_API int AH_Provider_CheckMedium (AB_PROVIDER *pro, GWEN_CRYPTTOKEN_DEVICE dev, GWEN_BUFFER *mtypeName, GWEN_BUFFER *msubTypeName, GWEN_BUFFER *mediumName)

Functions

AQHBCI_API AB_PROVIDER * AH_Provider_new (AB_BANKING *ab, const char *name)


Function Documentation

AQHBCI_API int AH_Provider_AddMedium ( AB_PROVIDER *  pro,
AH_MEDIUM *  m 
)

AQHBCI_API int AH_Provider_ChangePin ( AB_PROVIDER *  pro,
AB_USER *  u,
AB_IMEXPORTER_CONTEXT *  ctx,
int  nounmount 
)

Ask the user for a new PIN and make the server change the PIN to the newly entered one.

Parameters:
pro pointer to the HBCI provider
u user for which the pin is to be changed
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.

AQHBCI_API int AH_Provider_CheckMedium ( AB_PROVIDER *  pro,
GWEN_CRYPTTOKEN_DEVICE  dev,
GWEN_BUFFER *  mtypeName,
GWEN_BUFFER *  msubTypeName,
GWEN_BUFFER *  mediumName 
)

AQHBCI_API AH_MEDIUM* AH_Provider_FindMedium ( const AB_PROVIDER *  pro,
const char *  typeName,
const char *  mediumName 
)

AQHBCI_API AH_MEDIUM* AH_Provider_FindMediumById ( const AB_PROVIDER *  pro,
GWEN_TYPE_UINT32  id 
)

AQHBCI_API int AH_Provider_GetAccounts ( AB_PROVIDER *  pro,
AB_USER *  u,
AB_IMEXPORTER_CONTEXT *  ctx,
int  nounmount 
)

Retrieve a list of accounts. Not all banks support this. If the bank does then the retrieved accounts are automatically added to AqBanking.

Parameters:
pro pointer to the HBCI provider
u user for which the list of accounts is to be received
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.

AQHBCI_API int AH_Provider_GetCert ( AB_PROVIDER *  pro,
AB_USER *  u,
int  nounmount 
)

Retrieve the SSL certificate for the given user. This is only needed for PIN/TAN mode.

Parameters:
pro pointer to the HBCI provider
u user for which the SSL certificate is to be received
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.

AQHBCI_API int AH_Provider_GetIniLetterHtml ( AB_PROVIDER *  pro,
AB_USER *  u,
int  useBankKey,
GWEN_BUFFER *  lbuf,
int  nounmount 
)

Creates a HTML version of the INI letter. This function needs to mount the medium so the user will be ask for the pin.

AQHBCI_API int AH_Provider_GetIniLetterTxt ( AB_PROVIDER *  pro,
AB_USER *  u,
int  useBankKey,
GWEN_BUFFER *  lbuf,
int  nounmount 
)

Creates a text version of the INI letter. This function needs to mount the medium so the user will be ask for the pin.

AQHBCI_API int AH_Provider_GetItanModes ( AB_PROVIDER *  pro,
AB_USER *  u,
AB_IMEXPORTER_CONTEXT *  ctx,
int  nounmount 
)

Ask the server for the list of supported iTAN modes. Not all servers support iTAN so it is ok for the server to not report any modes.

Parameters:
pro pointer to the HBCI provider
u user for which the list of iTAN modes is to be received
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.

AQHBCI_API const AH_MEDIUM_LIST* AH_Provider_GetMediaList ( AB_PROVIDER *  pro  ) 

AQHBCI_API const char* AH_Provider_GetProductName ( const AB_PROVIDER *  pro  ) 

AQHBCI_API const char* AH_Provider_GetProductVersion ( const AB_PROVIDER *  pro  ) 

AQHBCI_API int AH_Provider_GetServerKeys ( AB_PROVIDER *  pro,
AB_USER *  u,
AB_IMEXPORTER_CONTEXT *  ctx,
int  nounmount 
)

Retrieve the public server keys for the given user. This is only needed for PIN/TAN and for RDH mode.

Parameters:
pro pointer to the HBCI provider
u user for which the public keys are to be received
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.

AQHBCI_API int AH_Provider_GetSysId ( AB_PROVIDER *  pro,
AB_USER *  u,
AB_IMEXPORTER_CONTEXT *  ctx,
int  nounmount 
)

Retrieve the system id for the given user. This is only needed for PIN/TAN and for RDH mode.

Parameters:
pro pointer to the HBCI provider
u user for which the system id is to be received
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.

AQHBCI_API AH_MEDIUM* AH_Provider_MediumFactory ( AB_PROVIDER *  pro,
const char *  typeName,
const char *  subTypeName,
const char *  mediumName 
)

AQHBCI_API AB_PROVIDER* AH_Provider_new ( AB_BANKING *  ab,
const char *  name 
)

AQHBCI_API int AH_Provider_RemoveMedium ( AB_PROVIDER *  pro,
AH_MEDIUM *  m 
)

AQHBCI_API int AH_Provider_SendUserKeys ( AB_PROVIDER *  pro,
AB_USER *  u,
AB_IMEXPORTER_CONTEXT *  ctx,
int  nounmount 
)

Retrieve the public keys of the given user. This is only needed for PIN/TAN and for RDH mode.

Parameters:
pro pointer to the HBCI provider
u user for which the public keys are to be sent
nounmount if !=0 then the user's medium is not unmounted in the end. This is used by setup wizards to avoid having to enter a pin too often.


Generated on Wed Oct 18 16:17:28 2006 for aqbanking by  doxygen 1.4.7