ravi-signal
ee1016523f
Add request information to createPayPalOneTimePayment failure log
2025-01-14 09:45:22 -05:00
ravi-signal
85a1550485
Catch and log unexpected createPayPalOneTimePayment responses
2024-12-18 18:46:46 -06:00
ravi-signal
77658415b2
Handle stripe amount_too_large errors
2024-12-18 18:46:22 -06:00
Ravi Khadiwala
6460327372
Return 409 when setting a payment method that hasn't finished initialization
2024-12-17 12:56:31 -05:00
Ravi Khadiwala
cc7bb8b549
Map stripe idempotency errors to 400
2024-12-03 14:05:43 -06:00
Ravi Khadiwala
d135957f0d
Cancel past_due subscriptions immediately
2024-11-21 16:09:17 -06:00
Chris Eager
dd4bc23e4f
Update to Dropwizard 4
2024-11-11 16:32:24 -06:00
ravi-signal
02ff3f2ff4
Add AppleAppStoreManager
2024-10-04 15:55:07 -05:00
Ravi Khadiwala
237d0fd4e2
remove HTTP layer exceptions from Stripe/Braintree managers
2024-09-24 17:22:38 -05:00
Ravi Khadiwala
50bd30fb1f
Fix cancelAtPeriodEnd calculation
2024-09-24 17:14:08 -05:00
Ravi Khadiwala
9fb4e2d272
set billingCycleAnchor in play billing responses
2024-09-24 17:14:08 -05:00
Ravi Khadiwala
bf0f553ced
Don't return 204s as exceptions
...
The jersey LoggingExceptionMapper automatically adds an entity to
WebApplicationExceptions. Jersey's HTTP server later strips the body on
204 responses, but our custom WebSocketResourceProvider does not
2024-09-23 14:43:04 -05:00
ravi-signal
564dba3053
Add playbilling endpoint to /v1/subscriptions
2024-08-30 12:50:18 -05:00
Ravi Khadiwala
3b4d445ca8
Don't try to update a cancelled stripe subscription
2024-08-30 12:47:26 -05:00
ravi-signal
176a15dace
Add GooglePlayBillingManager
2024-08-28 14:22:37 -05:00
Ravi Khadiwala
97e566d470
Move common subscription management out of controller
2024-08-15 13:29:26 -05:00
ravi-signal
a8eaf2d0ad
Group one-time donation methods together
2024-08-15 13:25:09 -05:00
Chris Eager
0e4be0c85a
Add tests for WhisperServerService#run
...
Additionally, `LocalWhisperServerService` may be used for integration testing.
2024-04-29 11:05:35 -05:00
Jon Chambers
9d3e3c7312
Use a common utility for turning Google API futures into CompletableFutures
2024-04-26 15:27:59 -04:00
Jon Chambers
7f6da52349
Publish donation events for immediately-successful donations
2024-04-24 13:16:37 -04:00
Jon Chambers
8999f0104f
Trigger pub/sub events for one-time donations via Braintree (PayPal)
2024-04-24 09:19:21 -04:00
Jon Chambers
516c481e94
Pass a CurrencyConversionManager to BraintreeManager
2024-04-24 09:19:21 -04:00
Jon Chambers
ed72d7f9ec
Attach client platforms when creating donations
2024-04-22 09:31:57 -04:00
Chris Eager
bb347999ce
Propagate another subscription processor error to clients
2023-12-14 15:40:08 -05:00
Katherine
951f978447
Use start of subscription period as fallback timestamp
2023-12-12 11:34:44 -05:00
Katherine
3cbbf37468
Use payment success timestamp to calculate recurring donation badge expiration
2023-12-12 10:01:20 -05:00
Katherine Yen
db7f18aae7
Add missing boolean parameter to getSubscriptionStatus method call
2023-11-16 19:28:10 -05:00
Katherine
7fbc327591
For Braintree, return active subscription status if latest transaction also succeeded
2023-11-16 19:15:46 -05:00
Katherine
216ac72ad0
Use Braintree subscription status alongside transaction status to determine 204 and 402 responses for /v1/subscription/{subscriberId}/receipt_credentials
2023-11-16 12:36:19 -05:00
Katherine
387e4b94b4
Expand charge object on Stripe subscription to surface charge failure information
2023-11-10 09:12:59 -08:00
Katherine
201c76b861
Add charge failure details to /v1/subscription/{subscriberId}/receipt_credentials 402 response
2023-11-08 10:54:14 -08:00
Katherine
8ec062fbef
Define an endpoint to set the default payment method for iDEAL subscriptions
2023-10-19 10:29:40 -07:00
Katherine
5990a100db
Add charge failure details to /v1/subscription/boost/receipt_credential 402 response
2023-10-19 10:21:26 -07:00
Katherine
c6b4e2b71d
Support iDEAL
2023-10-12 09:54:05 -07:00
Katherine
207ae6129b
Add paymentMethod and paymentProcessing fields to GET /v1/subscription/{subscriberId} endpoint
2023-10-10 09:56:50 -07:00
Katherine
e1aa734c40
Define endpoint to get localized bank mandate text
2023-10-05 09:53:33 -07:00
Katherine
a00c2fcfdb
Support SEPA
2023-09-28 08:26:01 -07:00
Chris Eager
b89e2e5355
Propagate certain subscription processor errors to client responses
2023-09-06 15:57:14 -05:00
Chris Eager
a1e534a515
Add default request timeout to FaultTolerantHttpClient
2023-08-31 15:03:19 -05:00
Chris Eager
093f17dce2
Update to stripe-java 23.1.1
2023-08-29 15:18:16 -07:00
Chris Eager
b852d6681d
FaultTolerantHttpClient: used managed ScheduledExecutorService for retries
2023-06-30 10:24:18 -04:00
Chris Eager
487b5edc75
Handle potentially null payment method when canceling subscription
2023-05-01 13:42:05 -05:00
Jon Chambers
fd5e9ea016
Drop the old (and now unused!) redis-dispatch module
2023-04-18 12:04:54 -04:00
Sergey Skrobotov
b9b4e3fdd8
Adding a uniform configuration for all json/yaml mapper use cases: part 1
2023-02-23 16:38:48 -08:00
Chris Eager
358a286523
Use java.util Hex and Base64 codecs
2023-02-06 12:16:59 -06:00
Chris Eager
dd98f7f043
Support changing just the currency of an existing subscription
2023-01-25 15:14:17 -06:00
Chris Eager
c2f40b8503
Remove duplicate code
2023-01-25 11:09:23 -05:00
Chris Eager
f361f436d8
Support PayPal for recurring donations
2023-01-17 12:20:17 -06:00
Chris Eager
24ac32e6e6
Add PayPalExperienceProfileInput.userAction
2022-12-13 10:03:58 -06:00
Chris Eager
d0e7579f13
Revert transaction descriptor
2022-12-01 18:52:45 -06:00