mirror of
https://github.com/signalapp/Signal-Server
synced 2026-04-20 03:28:04 +01:00
Add charge failure details to /v1/subscription/{subscriberId}/receipt_credentials 402 response
This commit is contained in:
@@ -593,7 +593,14 @@ public class StripeManager implements SubscriptionProcessorManager {
|
||||
throw new WebApplicationException(Status.NO_CONTENT);
|
||||
}
|
||||
if (!StringUtils.equalsIgnoreCase("paid", latestSubscriptionInvoice.getStatus())) {
|
||||
throw new WebApplicationException(Status.PAYMENT_REQUIRED);
|
||||
final Response.ResponseBuilder responseBuilder = Response.status(Status.PAYMENT_REQUIRED);
|
||||
if (latestSubscriptionInvoice.getChargeObject() != null) {
|
||||
final Charge charge = latestSubscriptionInvoice.getChargeObject();
|
||||
if (charge.getFailureCode() != null || charge.getFailureMessage() != null) {
|
||||
responseBuilder.entity(Map.of("chargeFailure", createChargeFailure(charge)));
|
||||
}
|
||||
}
|
||||
throw new WebApplicationException(responseBuilder.build());
|
||||
}
|
||||
|
||||
return getInvoiceLineItemsForInvoice(latestSubscriptionInvoice).thenCompose(invoiceLineItems -> {
|
||||
|
||||
Reference in New Issue
Block a user