Skip to content

Declared in <galanthus/c_api/gln_capi.h>.

GLN_API const gln_transfer_submission_t* GLN_CALL gln_get_backend_result_transfer_submission(
    const gln_backend_result_t* in_result);
  • Family: Backend result accessors
  • Return type: const gln_transfer_submission_t*

Purpose

Projects a backend result envelope into the transfer submission view when the envelope kind is GLN_BACKEND_RESULT_KIND_TRANSFER_SUBMISSION. It returns NULL when the envelope has a different kind.

The returned pointer is borrowed from the parent envelope and becomes invalid when gln_destroy_backend_result releases that envelope.

Return

Returns the borrowed const gln_transfer_submission_t* view only when gln_get_backend_result_kind reports GLN_BACKEND_RESULT_KIND_TRANSFER_SUBMISSION.

TypeNullabilityOwnership
const gln_transfer_submission_t*nullableborrowed

Parameters

NameDirectionTypeNullabilityOwnership
in_resultinputconst gln_backend_result_t*nullableborrowed

Projection Semantics

Returns the borrowed const gln_transfer_submission_t* view only when gln_get_backend_result_kind reports GLN_BACKEND_RESULT_KIND_TRANSFER_SUBMISSION.

The accessor checks the envelope kind directly; it does not check gln_get_backend_result_outcome or gln_get_backend_result_status. Callers should inspect outcome, status, and kind before projecting a typed success payload.

NULL means either in_result is NULL or the envelope kind does not match this projection.

The returned view is borrowed from the envelope. Destroying the envelope invalidates the view, rows or nested handles borrowed from it, and strings returned by field accessors.

Notes

Passing NULL for in_result is allowed and returns NULL.

Call this only after gln_get_backend_result_outcome reports GLN_BACKEND_OUTCOME_SUCCESS and gln_get_backend_result_kind reports GLN_BACKEND_RESULT_KIND_TRANSFER_SUBMISSION.

The returned typed view is borrowed from the envelope. Destroying the envelope invalidates the view and all borrowed fields exposed by its accessors.

Transfer submission views are produced by successful regular or instant transfer envelopes. Regular transfers support FinTS and EBICS; instant transfers are FinTS-only in this C API path.

Action-required envelopes carry interrupt details and a continuation, not a gln_transfer_submission_t view. Resume the operation and read this accessor only after a success envelope is produced.

See Also