Activities of "jaylin"

Thanks liming, I found install-libs is not necessary anymore. See those 2 steps below, install-libs was trying to run "yarn install v.22.22" too, that's why I think it conflicts with yarn install.

Run abp install-libs --working-directory . [03:41:36 INF] You are running the second generation of the ABP CLI. If you're interested in the legacy CLI, see https://abp.io/new-cli [03:41:36 WRN] Volo.Abp.Studio.Extensions.StandardSolutionTemplates extension not found in the NuGet cache. Directory: /home/runner/.nuget/packages/volo.abp.studio.extensions.standardsolutiontemplates/0.9.13/lib/net8.0 [03:41:36 INF] Volo.Abp.Studio.Extensions.StandardSolutionTemplates (v: 0.9.13) extension trying install from the NuGet 📌 ABP CLI 0.9.13 (Beta) Checking extensions... [03:41:41 INF] Volo.Abp.Studio.Extensions.StandardSolutionTemplates (v: 0.9.13) package downloaded from https://api.nuget.org/v3/index.json and saved to (/home/runner/.nuget/packages/) 🧩 Extensions downloaded: Volo.Abp.Studio.Extensions.StandardSolutionTemplates 🚲 The CLI is restarting to apply the changes with arguments: install-libs --working-directory . [03:41:42 INF] You are running the second generation of the ABP CLI. If you're interested in the legacy CLI, see https://abp.io/new-cli Checking extensions... [03:41:42 INF] Found 1 projects. [03:41:42 INF] . [03:41:43 INF] Running Yarn on . yarn install v1.22.22 [1/4] Resolving packages... [2/4] Fetching packages... 51s Run yarn install yarn install v1.22.22 [1/4] Resolving packages... [2/4] Fetching packages... error Error: ENOTEMPTY: directory not empty, rmdir '/home/runner/.cache/yarn/v6/npm-date-fns-2.30.0-f367e644839ff57894ec6ac480de40cae4b0f4d0-integrity/node_modules/date-fns' info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command. Error: Process completed with exit code 1.

After removing abp install-libs step, the pipeline works. I guess those licensed abp npm packages are not forced to be downloaded by install-libs anymore.

Hey mate, that's coming from your payment package. I don't have ng.theme-shared in my package.json.

{
  "name": "@volo/abp.ng.payment",
  "version": "8.2.3",
  "peerDependencies": {
    "@abp/ng.core": ">=8.2.3",
    "@abp/ng.theme-shared": ">=8.2.3"
  },
  "dependencies": {
    "@volo/abp.commercial.ng.ui": "~8.2.3",
    "tslib": "^2.0.0"
  },
  "publishConfig": {
    "access": "public"
  },
  "homepage": "https://abp.io",
  "repository": {
    "type": "git",
    "url": "https://github.com/volosoft/volo.git"
  },
  "license": "LGPL-3.0",
  "keywords": [
    "aspnetcore",
    "boilerplate",
    "framework",
    "web",
    "best-practices",
    "angular",
    "maui",
    "blazor",
    "mvc",
    "csharp",
    "webapp"
  ],
  "module": "fesm2022/volo-abp.ng.payment.mjs",
  "typings": "index.d.ts",
  "exports": {
    "./package.json": {
      "default": "./package.json"
    },
    ".": {
      "types": "./index.d.ts",
      "esm2022": "./esm2022/volo-abp.ng.payment.mjs",
      "esm": "./esm2022/volo-abp.ng.payment.mjs",
      "default": "./fesm2022/volo-abp.ng.payment.mjs"
    },
    "./admin": {
      "types": "./admin/index.d.ts",
      "esm2022": "./esm2022/admin/volo-abp.ng.payment-admin.mjs",
      "esm": "./esm2022/admin/volo-abp.ng.payment-admin.mjs",
      "default": "./fesm2022/volo-abp.ng.payment-admin.mjs"
    },
    "./proxy": {
      "types": "./proxy/index.d.ts",
      "esm2022": "./esm2022/proxy/volo-abp.ng.payment-proxy.mjs",
      "esm": "./esm2022/proxy/volo-abp.ng.payment-proxy.mjs",
      "default": "./fesm2022/volo-abp.ng.payment-proxy.mjs"
    },
    "./admin/config": {
      "types": "./admin/config/index.d.ts",
      "esm2022": "./esm2022/admin/config/volo-abp.ng.payment-admin-config.mjs",
      "esm": "./esm2022/admin/config/volo-abp.ng.payment-admin-config.mjs",
      "default": "./fesm2022/volo-abp.ng.payment-admin-config.mjs"
    }
  },
  "sideEffects": false
}

Please read and answer my questions one by one:

  1. Is dotnet tool install -g Volo.Abp.Cli still a valid command or obsolete?
  2. Is it necessary to run abp install-libs?
  3. Why install-libs used to have 4 successful steps, but not it only has 2? Before upgrade abp cli:

After upgrade abp cli:

  1. Is it still recommended to use yarn (v1.22) or npm?
  2. How can I rollback to Volo.Abp.Cli version '8.3.4'?

It's .NET 8.

I am not sure if the latest cli impacts install-libs or not, see the info below when I ran abp install-libs, it sounds like the CLI is not up to date. [10:43:57 INF] You are running the second generation of the ABP CLI. If you're interested in the legacy CLI, see https://abp.io/new-cli Checking extensions...

yarn start works fine locally.

I tried npm as well, it could not find the @abp/ng.theme-shared.

Run npm install npm warn ERESOLVE overriding peer dependency npm warn While resolving: @volo/abp.ng.payment@8.2.3 npm warn Found: @abp/ng.theme-shared@undefined npm warn node_modules/@abp/ng.theme-shared npm warn npm warn Could not resolve dependency: npm warn peer @abp/ng.theme-shared@">=8.2.3" from @volo/abp.ng.payment@8.2.3 npm warn node_modules/@volo/abp.ng.payment npm warn @volo/abp.ng.payment@"~8.2.2" from the root project npm error code E404 npm error 404 Not Found - GET https://registry.npmjs.org/@abp%2fng.theme-shared - Not found npm error 404 npm error 404 '@abp/ng.theme-shared@>=8.2.3' is not in this registry. npm error 404 npm error 404 Note that you can also install from a npm error 404 tarball, folder, http url, or git url. npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-12-01T11_21_52_003Z-debug-0.log Error: Process completed with exit code 1.

ABP Framework version: v8.2.2

UI Type: Angular

Database System: EF Core (SQL Server)

Tiered (for MVC) or Auth Server Separated (for Angular): yes

Exception message and full stack trace:

Steps to reproduce the issue:

In my CI / CD pipelines, I have this step to install ABP CLI, however, the recent CLI upgrade (dotnet tool install -g Volo.Abp.Studio.Cli) made the old version unavailable. It was working 2 weeks ago - Tool 'volo.abp.cli' (version '8.3.4') was successfully installed.

Run dotnet tool install -g Volo.Abp.Cli dotnet tool install -g Volo.Abp.Cli shell: /usr/bin/bash -e {0} env: ENV_NAME: dev DOTNET_ROOT: /usr/share/dotnet Tool 'volo.abp.cli' failed to update due to the following: The settings file in the tool's NuGet package is invalid: Settings file 'DotnetToolSettings.xml' was not found in the package. Tool 'volo.abp.cli' failed to install. Contact the tool author for assistance.

After upgrading the CLI to the latest (dotnet tool install -g Volo.Abp.Studio.Cli), it broke my Angular pipeline:

##[debug]Evaluating condition for step: 'Install ABP libraries' ##[debug]Evaluating: success() ##[debug]Evaluating success: ##[debug]=> true ##[debug]Result: true ##[debug]Starting: Install ABP libraries ##[debug]Loading inputs ##[debug]Loading env Run abp install-libs ##[debug]Overwrite 'working-directory' base on job defaults. ##[debug]/usr/bin/bash -e /home/runner/work/_temp/0556fb7c-72bd-416c-8dda-f402e48e8778.sh [10:43:51 INF] You are running the second generation of the ABP CLI. If you're interested in the legacy CLI, see https://abp.io/new-cli [10:43:51 WRN] Volo.Abp.Studio.Extensions.StandardSolutionTemplates extension not found in the NuGet cache. Directory: /home/runner/.nuget/packages/volo.abp.studio.extensions.standardsolutiontemplates/0.9.13/lib/net8.0 [10:43:51 INF] Volo.Abp.Studio.Extensions.StandardSolutionTemplates (v: 0.9.13) extension trying install from the NuGet 📌 ABP CLI 0.9.13 (Beta) Checking extensions... [10:43:56 INF] Volo.Abp.Studio.Extensions.StandardSolutionTemplates (v: 0.9.13) package downloaded from https://api.nuget.org/v3/index.json and saved to (/home/runner/.nuget/packages/) 🧩 Extensions downloaded: Volo.Abp.Studio.Extensions.StandardSolutionTemplates 🚲 The CLI is restarting to apply the changes with arguments: install-libs [10:43:57 INF] You are running the second generation of the ABP CLI. If you're interested in the legacy CLI, see https://abp.io/new-cli Checking extensions... [10:43:57 INF] Found 1 projects. [10:43:57 INF] /home/runner/work/BetterBilling/BetterBilling/angular [10:43:57 INF] Running Yarn on /home/runner/work/BetterBilling/BetterBilling/angular yarn install v1.22.22 [1/4] Resolving packages... [2/4] Fetching packages... ##[debug]Finishing: Install ABP libraries 1m 1s ##[debug]Evaluating condition for step: 'Install dependencies' ##[debug]Evaluating: success() ##[debug]Evaluating success: ##[debug]=> true ##[debug]Result: true ##[debug]Starting: Install dependencies ##[debug]Loading inputs ##[debug]Loading env Run yarn install ##[debug]Overwrite 'working-directory' base on job defaults. ##[debug]/usr/bin/bash -e /home/runner/work/_temp/50a904a8-2569-4279-b67b-5fe35cfdd3ec.sh yarn install v1.22.22 [1/4] Resolving packages... [2/4] Fetching packages... error Error: ENOENT: no such file or directory, open '/home/runner/.cache/yarn/v6/npm-@microsoft-applicationinsights-cfgsync-js-3.3.4-4fd32c9fede703a6332ca82ed2cce359cbc5a8b7-integrity/node_modules/@microsoft/applicationinsights-cfgsync-js/.yarn-tarball.tgz' info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command. Error: Process completed with exit code 1. ##[debug]Finishing: Install dependencies

It blocked me from promoting to higher environment, please address ASAP.

Welcome back maliming, thanks for your reply.

I have resolved this issue referring to the others reply, similar to yours but ExposeService.

[ExposeServices(typeof(StripePaymentGateway))]
public class CustomStripeGateway : StripePaymentGateway
{
    public CustomStripeGateway(
        IPaymentRequestRepository paymentRequestRepository,
        IPurchaseParameterListGenerator purchaseParameterListGenerator,
        IPlanRepository planRepository,
        IOptions<StripeOptions> stripeOptions,
        ILogger<StripePaymentGateway> logger,
        IDistributedEventBus eventBus,
        IObjectMapper objectMapper
    )
        : base(
            paymentRequestRepository,
            purchaseParameterListGenerator,
            planRepository,
            stripeOptions,
            logger,
            eventBus,
            objectMapper
        )
    { }

    public override Task HandleWebhookAsync(string payload, Dictionary<string, string> headers)
    {
        if (!headers.ContainsKey("Stripe-Signature") && headers.ContainsKey("stripe-signature"))
        {
            headers["Stripe-Signature"] = headers["stripe-signature"];
            headers.Remove("stripe-signature");

            // Log the information
            Logger.LogInformation("Stripe-Signature header was missing, but stripe-signature was present. Converted stripe-signature to Stripe-Signature.");
        }

        // Volo Stripe Payment expects Stripe-Signature in the headers
        return base.HandleWebhookAsync(payload, headers);
    }
}

Is the header key case sensitive? I captured the header in the request, its lower case.

"stripe-signature": [ "t=1730242133,v1=decaaca94f84b9e6c0523c2f283945f52a8a2e6ce0ab654bade8aa51dc2a98a5,v0=08b2da9f09b998a63e483b36ee2cf7325769eeb650ab665ed42f3e14f4cfc69a" ],

I have Application Gateway (WAF_v2) in front of the API (webhook), even I disabled the Web Application Firewall, the issue still happened.

Problem Id System.Collections.Generic.KeyNotFoundException at Volo.Payment.Stripe.StripePaymentGateway+<HandleWebhookAsync>d__25.MoveNext Assembly Volo.Payment.Stripe.Domain, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null ActionId 46ab5810-8ae3-4668-88ec-1dc6eb213d2b ConnectionId 0HN7NVU4BKI1E MessageTemplate The given key 'Stripe-Signature' was not present in the dictionary. RequestId 0HN7NVU4BKI1E:00000006 SourceContext Volo.Abp.AspNetCore.Mvc.ExceptionHandling.AbpExceptionFilter RequestPath /api/payment/stripe/webhook ActionName Volo.Payment.Requests.PaymentRequestController.HandleWebhookAsync (Volo.Payment.HttpApi)

It's similar to https://abp.io/support/questions/4386/Error-from-ABP-commercial-payments-module-stripe-webhook-callback-handling-bug#answer-df4c481c-cbb9-299f-b150-3a08fa8e68da, but it has been resolved 2 years ago, I am wondering how comes the key was missing in the header.

I have double checked the secrets, they are correct.

  • ABP Framework version: v8.2.2
  • UI Type: Angular
  • Database System: EF Core SQL Server
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes
  • Exception message and full stack trace:
System.Collections.Generic.KeyNotFoundException:
   at System.ThrowHelper.ThrowKeyNotFoundException (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Collections.Generic.Dictionary`2.get_Item (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Payment.Stripe.StripePaymentGateway+&lt;HandleWebhookAsync&gt;d__25.MoveNext (Volo.Payment.Stripe.Domain, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Payment.Requests.PaymentRequestAppService+&lt;HandleWebhookAsync&gt;d__14.MoveNext (Volo.Payment.Application, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Castle.DynamicProxy.AsyncInterceptorBase+<ProceedAsynchronous>d__14`1.MoveNext (Castle.Core.AsyncInterceptor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=e33b67d3bb5581e4)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1+&lt;ProceedAsync&gt;d__7.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.GlobalFeatures.GlobalFeatureInterceptor+&lt;InterceptAsync&gt;d__0.MoveNext (Volo.Abp.GlobalFeatures, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1+<InterceptAsync>d__3`1.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Castle.DynamicProxy.AsyncInterceptorBase+<ProceedAsynchronous>d__14`1.MoveNext (Castle.Core.AsyncInterceptor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=e33b67d3bb5581e4)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1+&lt;ProceedAsync&gt;d__7.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Auditing.AuditingInterceptor+&lt;ProceedByLoggingAsync&gt;d__4.MoveNext (Volo.Abp.Auditing, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Auditing.AuditingInterceptor+&lt;InterceptAsync&gt;d__2.MoveNext (Volo.Abp.Auditing, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1+<InterceptAsync>d__3`1.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Castle.DynamicProxy.AsyncInterceptorBase+<ProceedAsynchronous>d__14`1.MoveNext (Castle.Core.AsyncInterceptor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=e33b67d3bb5581e4)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1+&lt;ProceedAsync&gt;d__7.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Validation.ValidationInterceptor+&lt;InterceptAsync&gt;d__2.MoveNext (Volo.Abp.Validation, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1+<InterceptAsync>d__3`1.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Castle.DynamicProxy.AsyncInterceptorBase+<ProceedAsynchronous>d__14`1.MoveNext (Castle.Core.AsyncInterceptor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=e33b67d3bb5581e4)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1+&lt;ProceedAsync&gt;d__7.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Uow.UnitOfWorkInterceptor+&lt;InterceptAsync&gt;d__2.MoveNext (Volo.Abp.Uow, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1+<InterceptAsync>d__3`1.MoveNext (Volo.Abp.Castle.Core, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter.GetResult (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Volo.Payment.Requests.PaymentRequestController+<HandleWebhookAsync>d__7.MoveNext (Volo.Payment.HttpApi, Version=8.2.2.0, Culture=neutral, PublicKeyToken=null)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at lambda_method3157 (Anonymously Hosted DynamicMethods Assembly, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor+AwaitableObjectResultExecutor+<Execute>d__0.MoveNext (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Threading.Tasks.ValueTask`1.get_Result (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker+&lt;&lt;InvokeActionMethodAsync&gt;g__Awaited|12_0>d.MoveNext (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker+&lt;&lt;InvokeNextActionFilterAsync&gt;g__Awaited|10_0>d.MoveNext (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker+&lt;&lt;InvokeNextExceptionFilterAsync&gt;g__Awaited|26_0>d.MoveNext (Microsoft.AspNetCore.Mvc.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60)
  • Steps to reproduce the issue: It's working fine locally, but after deploying to Azure (Azure Container Apps), the Stripe webhook could not be triggered. I have those credentials in appSetting.json
"Payment": {
    "Stripe": {
      "PublishableKey": "pk_test_xxxx",
      "SecretKey": "sk_test_xxx",
      "WebhookSecret": "whsec_xxx"
    }
  },

Thanks, so I have to create a new table to manage the User - Plan relation, once recurring payment comes, I need to extend the subscription expiry to next month (if recurring monthly)?

I didn't find any invoice ready "Distributed Events", how can I implement such event?

It's nearly a week now, nobody wants to reply my question?

Showing 1 to 10 of 21 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on December 13, 2024, 06:09