Sylvain
66f81a975e
WIP: array of items
...
Migration from cart_items:{reservation:{}, subscription:{}, ...}
to cart_items:{items:[{reservation:{}, ...}], ...}
2021-05-19 18:12:52 +02:00
Sylvain
6bcd9f6fef
Merge branch 'dev' into payzen
2021-05-17 15:07:41 +02:00
Sylvain
82260d8c62
[bug] invalid currency in notifications for locales with region
2021-05-14 11:57:52 +02:00
Sylvain
7ac119d4cf
[bug] invoices are not generated in test/development if the configured locale is composed
...
Eg. If locale is fr-CA, it was crashing. If locale was only fr, is was working.
Now, composed locales print the watermark using the base locale and
hour_minute format is fetched from the base locale
2021-05-12 17:23:42 +02:00
Sylvain
390f62fd41
[bug] the count of successfully updated events was not correct
2021-05-12 15:53:32 +02:00
Sylvain
e3187460ea
create payment schedules on payzen
...
Also: make generic the creation of products on remote gateway
Also: make generic the call to gateway specific actions
2021-04-30 16:07:19 +02:00
Sylvain
5f47624d4e
WIP: create payment schedule w/ payzen
2021-04-29 17:10:02 +02:00
Sylvain
23e38238c8
fix payment on site modal in case of payment schedule
2021-04-28 17:25:42 +02:00
Sylvain
3dc686840c
front adaptation to cartItems
...
fix payzen customer cart creation
TODO: refactor the payOnSite modals
2021-04-27 17:18:20 +02:00
Sylvain
e75259734c
fix test Subscriptions::CreateAsAdminTest
...
user_id must be read from [:cart_items][:customer_id]
2021-04-27 13:51:23 +02:00
Sylvain
1bf091081b
fix test Reservations::CreateAsAdminTest
...
create subscription from POST api/reservation if the parameter subscription.plan_id is provided
+ cart_items are not wrapped in a reservation object
2021-04-26 18:27:35 +02:00
Sylvain
d5f7bd7abd
fix test Reservations::CreateTest
...
create subscription w/ the reservation if applicable
+ refactor payments_controller to factorize the on_*_success codes
2021-04-26 17:42:03 +02:00
Sylvain
b9e8c8867c
fix running test renew_as_admin_test
2021-04-26 11:40:26 +02:00
Sylvain
bc6ef8ef50
WIP: move backend code base to new architecture
...
- from stripe only to payment gateway abstract
- from reservation params style to unified cart_items
TODO: fix not passing tests,
subscriptions/renew_as_admin_test.rb fails because InvoiceItem(9).amount = nil
2021-04-23 17:54:59 +02:00
Sylvain
94cbcd3236
refactor to use the new price computation system based on ShoppingCart
2021-04-23 12:52:06 +02:00
Sylvain
e456ddc7c9
WIP: refactor the price computation system
2021-04-22 19:24:08 +02:00
Sylvain
26dfbef5e1
WIP: refactor models to use payment_gateway_objects
2021-04-21 17:38:06 +02:00
Sylvain
434ec9c205
refactored Invoices to get rid of stripe references
2021-04-20 17:22:53 +02:00
Sylvain
a897d37b2d
improved footprint debug process
2021-04-16 16:03:10 +02:00
Sylvain
1bbb8c3965
move the architecture from stripe-only to gateway-generic
2021-04-15 17:01:52 +02:00
Sylvain
ddd1ac52d6
save reservation|subscription to db after payment
2021-04-14 17:56:10 +02:00
Sylvain
4d3ead310d
do not run StripeWorker tasks is the gateway is not enabled
2021-04-14 12:18:37 +02:00
Sylvain
4e512dda45
validate the payment server side
2021-04-13 17:16:05 +02:00
Sylvain
ef7dcd37d8
retreive the formToken from PZ API
2021-04-12 12:16:12 +02:00
Sylvain
fd5c3a87ce
rename /api/payment to /api/stripe
...
other payment gateways will have their own separate endpoints
2021-04-12 10:45:41 +02:00
Sylvain
23032c405b
WIP: create the formToken server-side
2021-04-09 17:17:58 +02:00
Sylvain
422acdd162
safely configure and test payzen keys
2021-04-02 17:16:27 +02:00
Sylvain
30830b56fd
PayZen REST API wrapper ruby + live test keys while configuring
2021-04-01 18:20:26 +02:00
Sylvain
c25e54a6af
save & retreive stripe settings
2021-03-30 15:56:36 +02:00
Sylvain
7099f1f317
address required
...
- Ability to set the address as a mandatory field
- The address is new requested when creating an account
- The profile completion page is less fuzzy for people landing on it without enabled SSO
2021-03-23 11:49:05 +01:00
Sylvain
a5b3728f8c
[bug] various fixes on accouting exports
...
- accounting exports may ignore some invoices for the first and last days
- file caching for accounring exports is not used
2021-03-22 17:42:54 +01:00
Sylvain
a74c5d4c95
WIP: plan description
2021-03-03 17:21:11 +01:00
Sylvain
120c9144bb
[security] restrict allowed keys when creating/updating credits
2021-02-24 11:11:18 +01:00
Sylvain
16bb4bc76d
WIP: payment schedules dashboard
2021-02-09 17:18:33 +01:00
Sylvain
ff0c69fc58
stripe card update + cancel subscription
2021-02-09 15:44:56 +01:00
Sylvain
b0ef9e097d
WIP: stripe update card
2021-02-09 12:09:26 +01:00
Sylvain
0e7226c85c
handle stripe requires_action
2021-02-08 15:28:47 +01:00
Sylvain
58af40b8b9
enlight api for cashing checks
2021-02-08 08:56:01 +01:00
Sylvain
b5cdea513d
confirm check cashing api
2021-02-04 17:51:16 +01:00
Sylvain
eddf23622d
Merge branch 'dev' into monthly-payment
2021-02-02 17:17:15 +01:00
Sylvain
1c22d3a62a
keep backward compatible openapi errors
2021-02-02 11:28:31 +01:00
Sylvain
30e9f6febf
OpenAPI endpoints to create/update/show/delete machines
2021-02-01 17:43:15 +01:00
Sylvain
def0778a4d
basic inteface to retrieve payment schedules
2021-01-25 17:42:30 +01:00
Sylvain
8b13ae45ac
all tests passing
2021-01-04 16:26:52 +01:00
Sylvain
feeed2f450
fix take a reservation + subscription
...
FIXME:
ActionView::Template::Error (undefined method `iso8601' for nil:NilClass)
Callstack:
app/views/api/reservations/show.json.jbuilder:40:in `_app_views_api_reservations_show_json_jbuilder'
app/controllers/api/payments_controller.rb:91:in `confirm_payment_schedule'
2020-12-28 18:30:27 +01:00
Sylvain
65277800e2
fix creation subcription on stripe
2020-12-23 16:25:24 +01:00
Sylvain
f661428db2
better error handling in stripe::subscription creation process
2020-12-23 15:29:56 +01:00
Sylvain
bbf88846dd
refactored Invoice & PaymentSchedule to use inheritance
2020-12-22 14:43:08 +01:00
Sylvain
d3a41903cd
WIP: exclude invoice_id from footprint in payment_schedule_item
2020-12-21 17:37:58 +01:00
Sylvain
609d19e5d1
refactored subscription process + renew (update) subscription/ offre free days
2020-12-21 16:12:34 +01:00
Sylvain
40c78974b8
refactoring of reservation:pay_and_save
...
TODO: debug with tests,
refactor subscription:pay_and_save on the same template
2020-12-16 18:33:43 +01:00
Sylvain
ccff463165
test subscription with schedule by user
2020-12-15 15:48:13 +01:00
Sylvain
908ccf5bab
handle reservations+subscription w/ schedule
...
integration testing for payment schedule
debug reservation process
2020-12-14 17:42:23 +01:00
Sylvain
c3c881d2a8
process the schedule to the stripe subscription
...
- only for subscriptions for now
- TODO: reservations (see app/services/reservations/reserv.rb:13)
2020-12-09 16:47:51 +01:00
Sylvain
8e8fc9b682
validate reservation/subscription after payment schedule creation
2020-12-08 17:30:33 +01:00
Sylvain
1d64c517c9
create stripe's paymentIntent
...
associate the paymentMethod (the card) with the customer (the user)
for futur usages in subscriptions
2020-12-08 12:26:03 +01:00
Sylvain
5941446a72
fixes for card payment
2020-12-02 14:28:41 +01:00
Sylvain
6c39191efa
allow payment with stripe-modal react component
2020-12-02 10:06:18 +01:00
Sylvain
34a9084501
pass payment method to the ruby service
2020-11-23 11:48:44 +01:00
Sylvain
678af0de1f
using stripe api + improved ui + ui to configure schedules reference
...
TODO: as an admin, I can select if payment_method = (stripe || local)
2020-11-16 16:37:40 +01:00
Sylvain
78847bdb4b
WIP: create subscription on stripe
2020-11-10 17:02:21 +01:00
Sylvain
21bd1312bc
compute payment schedule + basic display
2020-11-03 16:50:11 +01:00
Sylvain
5f93e6d3be
plan creation: set if it allows monthly payments
2020-10-27 13:06:37 +01:00
Sylvain
13bc5334cc
ability to configure until when the events are shown on the home page
2020-09-29 09:39:32 +02:00
Sylvain
30b3a794d3
[bug] managers cannot see passed events
2020-09-29 08:40:07 +02:00
Sylvain
5eae1c74a8
[bug] Unable to access the invoices section if the stripe key was not set or incorrect
2020-07-01 12:15:45 +02:00
Sylvain
5f0a9ed572
remove dead code
2020-06-29 15:12:32 +02:00
Sylvain
e288f66997
use search index to speed up projects searches
2020-06-23 17:06:59 +02:00
Sylvain
23338eb36d
refactored project search using service
2020-06-23 15:45:38 +02:00
Sylvain
7140571d63
filter & search projets from postgres
2020-06-23 11:19:20 +02:00
Sylvain
1a6cd356bf
WIP: using postgres for full-text search in projects
2020-06-22 16:28:05 +02:00
Sylvain
5e8aeb928c
fix refactoring issue in /api/open_api_clients
2020-06-15 17:07:28 +02:00
Sylvain
24155bc009
ability to lock settings from the env vars
2020-06-15 13:20:48 +02:00
Sylvain
42872ab107
configure wallet from UI
2020-06-15 12:44:43 +02:00
Sylvain
78518e17fb
read stripe_currency from the UI
...
We prevent the currency from being changed if any stripe payment was made, because a stripe user cannot made pay with different currencies. If we try to charge a user with a different currency than the currency he used for a previous payment, this will fail; so we must prevent this case
2020-06-10 16:37:11 +02:00
Sylvain
82d6677cff
read stripe_api_key from db
2020-06-10 11:33:03 +02:00
Sylvain
9ff0a06029
many sidekiq fixes
2020-06-09 18:51:57 +02:00
Sylvain
06b5da9df8
configure online payment from the UI
2020-06-08 17:42:59 +02:00
Sylvain
f78eb10c75
use openlab_app_secret from db w/ openlab_ruby gem
2020-06-08 15:17:56 +02:00
Sylvain
88f2fb3749
secure the settings API (read) + read the openlab settings from the db
2020-06-08 15:08:07 +02:00
Sylvain
5c152412db
test mime type of a file
...
use marcel to test mime types
updated mimemagic
2020-06-03 16:25:13 +02:00
Sylvain
743f3e510a
WIP: Test the mime type of a file
2020-06-03 15:33:04 +02:00
Sylvain
ebe602ad1c
WIP: enforce mime type checking for uploads
2020-06-02 19:18:57 +02:00
Sylvain
45013be950
configure default_host & default_protocol from env
...
reverts 478a6c40
(partially) & b2434864
2020-06-02 18:29:24 +02:00
Sylvain
478a6c409d
define default_protocol & default_host from the UI + fix email_from + various minor fixes
2020-06-01 17:32:32 +02:00
Sylvain
434c211ccf
configure the features tour display mode from the UI
2020-05-27 18:49:53 +02:00
Sylvain
537743a740
configure the plans module from the admin UI
2020-05-26 15:39:28 +02:00
Sylvain
6cc6bba7ce
refactored app to gather spaces module status from the settings
2020-05-26 13:59:40 +02:00
Sylvain
acefc325f6
configure events_in_calendar form the UI panel
2020-05-25 17:36:53 +02:00
Sylvain
ba4c39ca99
use slot duration from the db setting
2020-05-25 12:55:01 +02:00
Sylvain
f80eb230ca
refactored code to use Setting.get
2020-05-25 12:54:19 +02:00
Sylvain
6c1a500ffa
add the url of our website into the endpoint
2020-05-18 17:10:04 +02:00
Sylvain
37901e4153
[bug] users promoted to the administrator role are not in the admin group
2020-05-12 15:30:57 +02:00
Sylvain
1fdea63828
correct some errors due to Price.compute refactoring
2020-05-11 10:56:23 +02:00
Sylvain
be23cf27c3
use Price.compute to generate invoice items
2020-05-06 12:43:47 +02:00
Sylvain
19de8ca319
fix: manager can offer slot to other users
2020-05-06 09:58:15 +02:00
Sylvain
2d8df2c1cd
Ability to promote a user to a higher role (member > manager > admin)
2020-05-05 11:28:04 +02:00
Sylvain
d8a289e825
fixes change role API
2020-05-04 18:34:26 +02:00
Sylvain
06a5bff084
[ongoing] change user role
2020-05-04 18:32:25 +02:00
Sylvain
3319e68526
Auto-adjusts text colors based on the selected theme colors
2020-05-04 13:20:57 +02:00