Mit diesem Formular können Sie fehlende, unklare oder fehlerhafte Inhalte in der Dokumentation melden und Verbesserungsvorschläge machen. Ihr Feedback hilft uns, die Qualität und Vollständigkeit kontinuierlich zu verbessern.
Fundraising Proxy function
Hinter den Webseiten von Spendenorganisationen arbeitet eine leistungsstarke Datenverarbeitungseinheit - die FundraisingBox. Hier werden nicht nur wertvolle Spenden entgegengenommen, sondern auch entscheidende Informationen gesammelt, die für den reibungslosen Betrieb und das Fortbestehen dieser gemeinnützigen Organisationen von grundlegender Bedeutung sind.
Problem: Die Integration in Unternehmensprozesse und -systeme wie Microsoft Business Central (unitop Spendenmanagement) kann nur über eine Proxy-Function geschehen.
Lösung: Die Proxy-Function agiert als Vermittler, der zwischen der FundraisingBox und Microsoft Business Central steht. Eine wesentliche Aufgabe besteht darin, sicherzustellen, dass die übertragenen Informationen vertrauenswürdig sind und den höchsten Sicherheitsstandards entsprechen. Hierbei fungiert Azure Active Directory (Azure AD) Authentifizierungsmechanismus und Datenweiterleitung, um sicherzustellen, dass nur autorisierte Daten den Weg nach Business Central finden.
Infrastruktur Einrichtung
Zur Einrichtung der Fundraising-Schnittstelle wird eine Bereitstellung und Einrichtung von Azure Komponenten durch die Infrastruktur benötigt. Dazu ist eine Azure Subscription beim Kunden unumgänglich. Einzurichten ist die Verbindung zwischen der Funraising-Box und der Business Central Extension mit dem Fundraising-Proxy.
Folgende Schritte müssen in Kooperation mit der Infrastruktur durchgeführt werden.
Azure Functions Bereitstellung
In der Azure Subscription des Kunden muss eine Azure Function bereitgestellt werden. Der Dienst soll mit folgenden Kennzahlen angelegt werden:
| Do you want to deploy code or container image? | Code |
| Runtime stack | .NET |
| Version | 8 (LTS) Isolated |
| Operating System | Windows |
| Hosting | Consumption (Serverless) |
Nach der Bereitstellung der Azure Ressource muss die aktuelle Version des Fundraising-Proxy deployed werden. Für das Deployment steht eine ZIP-Datei im Freigabe Verzeichnis zur Verfügung.
Unter Microsoft Learn findet sich Anleitung zur Bereitstellung einer Azure Function via ZIP-Deployment: Zip push deployment for Azure Functions | Microsoft Learn
Function Link
Damit die Function benutzt werden kann muss die URL übermittelt werden. Diese befindet sich auf der Azure-Seite der Function App im Overview unter der Function "TransferFundData".
Klicken Sie hier zunächst auf "Get function URL", um im Anschluss den Link "default (Function Key)" zu kopieren.
Azure Functions Einrichtung
Die bereitgestellte Azure Function muss mit einigen Application-Settings eingerichtet werden. Die Einrichtungsdaten werden verwendet, um die Verbindung mit Business Central herzustellen.
Vorab muss eine App-Registration im Entra-ID des Kunden bereitgestellt werden. Die App-Registration muss für den Service-To-Service Zugriff auf einen BC-Webservice konfiguriert sein.
Folgende Application-Settings müssen unter Settings → Environment variables → App-Settings angelegt werden.
OnPrem
| FundraisingInterfaceApi:UriOption:BaseUri | [host]:[port]/[instance]/ |
| FundraisingInterfaceApi:UriOption:ApiUri | [host]:[port]/[instance]/api/publisher]/[group]/[api version]/companies([company id])/ |
| FundraisingInterfaceApi:UriOption:Tenant | default |
| FundraisingInterfaceApi:ApiPage | [Api page name] |
SaaS
| FundraisingInterfaceApi:UriOption:BaseUri | https://api.businesscentral.dynamics.com/v2.0/[user domain name]/[environment name]/ |
| FundraisingInterfaceApi:UriOption:ApiUri | https://api.businesscentral.dynamics.com/v2.0/[user domain name]/[environment name]/api/[publisher]/[group]/[api version]/companies([company id])/ |
| FundraisingInterfaceApi:ApiPage | [Api page name] |
OAuth-Authentifizierung
| AuthenticationCredential:AuthType | [Authentication type, OAuth in this case] |
| AuthenticationCredential:TenantId | [AzureAD tenant id] |
| AuthenticationCredential:ClientId | [App registration Client id] |
| AuthenticationCredential:ClientSecret | [App registration Client secret] |
| AuthenticationCredential:ApplicationUri | [SaaS: 'https://api.businesscentral.dynamics.com' OnPrem: Application uri defined in the app registration] |
Basic-Authentifizierung
| AuthenticationCredential:AuthType | [Authentication type, Basic in this case] |
| AuthenticationCredential:Username | [BC admin user] |
| AuthenticationCredential:Password | [BC password] |
Mapper-Parameter
| MapperParameter:PartnerGuid | [GUID, Need the same as in BC] |
| MapperParameter:Channel | [Channel e.g. Default] |