eReceipt URL being generated in Payment Part acknowledgment email for pledge installment gifts where no card was charged

When submitting a pledge installment on a donation form that is using a payment part and is also configured to send the payment part's own summary acknowledgment email rather than the donation form's email, even when the pledge installment is not "today" so there should be no charge, the acknowledgment email contains the eReceipt URL. 

 
This issue was resolved in the latest version of Blackbaud NetCommunity. Please ensure that you have updated to the latest version.

Steps to Duplicate

  1. Set up a donation form to allow pledge installments for every 1st of the month (for example)
  2. Set it to use a payment part instead of direct to checkout.
  3. Set the donation form to enable eReceipts
  4. On the payment part, enable the payment part to send a summary acknowledgment email rather than the source donation form.
  5. Ensure that in the Acknowledgement email the eReceipt URL merge field is present.
  6. Submit a transaction through the donation form that uses pledge installments for the 1st of the month, with today not being the 1st of the month.
The card will not be charged, however, when you receive the Acknowledgment Email, there will be an eReceipt link that appears.
When clicking it on the eReceipt link while on the BBNC web server, the following error displays:

Server Error in '/' Application.


System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> Blackbaud.AppFx.Server.ServiceException: This feature requires one or more optional components that have not been installed.
  at Blackbaud.AppFx.Server.SecurityCheckResult.ThrowSecurityFailError(RequestContext ctx, ServiceRequest req)
  at Blackbaud.AppFx.Server.Common.ValidateSecurityResult(SecurityCheckResult checkRes, RequestContext ctx, ServiceRequest req)
  at Blackbaud.AppFx.Server.AppService.BeginDispatchRequest(AsyncRequestProcessorBase processor, AsyncCallback callback, Object asyncState)
  at Blackbaud.AppFx.Server.AppFxWebService.BeginDataListLoad(DataListLoadRequest req, AsyncCallback callback, Object asyncState)
  --- End of inner exception stack trace ---

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> Blackbaud.AppFx.Server.ServiceException: This feature requires one or more optional components that have not been installed.
  at Blackbaud.AppFx.Server.SecurityCheckResult.ThrowSecurityFailError(RequestContext ctx, ServiceRequest req)
  at Blackbaud.AppFx.Server.Common.ValidateSecurityResult(SecurityCheckResult checkRes, RequestContext ctx, ServiceRequest req)
  at Blackbaud.AppFx.Server.AppService.BeginDispatchRequest(AsyncRequestProcessorBase processor, AsyncCallback callback, Object asyncState)
  at Blackbaud.AppFx.Server.AppFxWebService.BeginDataListLoad(DataListLoadRequest req, AsyncCallback callback, Object asyncState)
  --- End of inner exception stack trace ---

Source Error: 

 
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace: 
 

[SoapException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> Blackbaud.AppFx.Server.ServiceException: This feature requires one or more optional components that have not been installed.
   at Blackbaud.AppFx.Server.SecurityCheckResult.ThrowSecurityFailError(RequestContext ctx, ServiceRequest req)
   at Blackbaud.AppFx.Server.Common.ValidateSecurityResult(SecurityCheckResult checkRes, RequestContext ctx, ServiceRequest req)
   at Blackbaud.AppFx.Server.AppService.BeginDispatchRequest(AsyncRequestProcessorBase processor, AsyncCallback callback, Object asyncState)
   at Blackbaud.AppFx.Server.AppFxWebService.BeginDataListLoad(DataListLoadRequest req, AsyncCallback callback, Object asyncState)
   --- End of inner exception stack trace ---]
   System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) +690429
   System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) +327
   Blackbaud.AppFx.WebAPI.ServiceProxy.AppFxWebService.DataListLoad(DataListLoadRequest DataListLoadRequest) +77
   Blackbaud.Web.Content.Portal.EReceipt.ReceiptFromEmailJobExtention(HttpContext context) +294
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +913
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +165
 
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34274
 

Environment

 Blackbaud NetCommunity
 6.64

Was this article helpful?