Skip to content

Backend support is operation-specific. Use gln_check_backend_operation_support to check whether a backend supports a given operation before calling it.

Open a Backend

gln_fints_config_t config = {0};
gln_default_fints_config(&config);
config.endpoint = "https://bank.example/fints";
config.bank_code = "12030000";
config.user_id = "myuser";
config.product_id = "MYPRODUCTID";

gln_backend_t* backend = NULL;
gln_error_t error = {0};
gln_default_error(&error);
gln_status_t status = gln_open_fints_backend(
    &config,
    state_store,
    continuation_store_or_null,
    pin_secret,
    &backend,
    &error);
InputMeaning
gln_fints_config_tBank endpoint, bank code, user identity, product id, optional diagnostics and timeout.
gln_state_store_t*Durable FinTS state such as bank and user parameter data.
gln_continuation_store_t*Optional durable storage for resumable interrupted operations.
gln_secret_t*PIN secret borrowed for the open call.

Close the backend with gln_close_backend.

Supported Operations

FamilyOperations
Account datalist_accounts, list_balances, list_transactions
TANget_tan_modes, set_tan_mode, list_tan_media, resume
Paymentssubmit_transfer, submit_instant_transfer, submit_batch_transfer
Direct debitssubmit_direct_debit, submit_direct_debit_batch
Standing orderslist_standing_orders, add_standing_order, modify_standing_order, delete_standing_order
Other FinTS surfaceslist_holdings, submit_prepaid_topup, info

Use gln_check_backend_operation_support when code accepts an arbitrary backend handle.

Bank Information

gln_retrieve_bank_info returns gln_bank_info_t.

AccessorMeaning
gln_get_bank_info_nameBank display name.
gln_get_bank_info_codeBank code.
gln_get_bank_info_bpd_versionBank parameter data version.
gln_get_bank_info_supported_hbci_versions_count, _atSupported HBCI/FinTS versions.
gln_get_bank_info_accounts_count, _atAccount rows included in the information result.

Holdings

gln_retrieve_holdings uses gln_list_holdings_request_t and returns gln_holdings_t.

AccessorMeaning
gln_get_holdings_count, gln_get_holding_atEnumerate holdings.
gln_get_holding_nameSecurity display name.
gln_get_holding_isin, gln_get_holding_wknSecurity identifiers.
gln_get_holding_quantity, gln_get_holding_quantity_typePosition quantity.
gln_get_holding_price, gln_get_holding_price_date, gln_get_holding_price_currencyPrice details.
gln_get_holding_market_value, gln_get_holding_market_value_currencyMarket value.

TAN and Continuations

FinTS operations can return an action-required envelope for TAN input, decoupled approval, or VoP confirmation. Read gln_get_backend_result_interrupt_info, take the continuation with gln_take_backend_result_continuation, and resume with gln_resume_continuation.

See TAN and resume for the exact interrupt and resume input shapes.

Result Status Detail

FinTS rejections can attach structured status rows to the borrowed gln_error_t inside the result envelope. Use gln_get_error_detail, gln_get_error_detail_status_count, gln_get_error_detail_status_code_at, gln_get_error_detail_status_message, and the related status-parameter accessors before destroying the envelope.

Related Pages