feat: complete SaaS commercial delivery workflows

This commit is contained in:
2026-08-01 15:26:21 +08:00
parent 46abf4d62f
commit d58bcd97e9
56 changed files with 27505 additions and 181 deletions

View File

@@ -38,4 +38,24 @@ internal sealed class ManualPaymentProvider : IPaymentProvider
"Manual payment does not accept provider notifications.",
"manual_payment_notification_not_supported");
}
public Task<CreateRefundProviderResult> CreateRefundAsync(
PaymentProviderAccount account,
CreateRefundProviderRequest request,
CancellationToken cancellationToken = default)
{
cancellationToken.ThrowIfCancellationRequested();
var payload = JsonSerializer.SerializeToElement(new
{
request.OrderNo,
request.RefundNo,
request.AmountCents,
request.Reason
});
return Task.FromResult(new CreateRefundProviderResult(
Provider,
true,
$"manual-{request.RefundNo}",
payload));
}
}