Internal error when creating new plan

Hello, I’m starting with fab-manager. I have it installed, and working. Nevertheless when I try to create a new subscription plan, it does not succeed. Looking into the development.log, I can see:

Started POST « /api/plans/ » for 163.117.151.234 at 2018-03-19 14:16:19 +0100
Processing by API::PlansController#create as JSON
Parameters: {« plan »=>{« base_name »=>« asdf », « type »=>« Plan », « group_id »=>« 1 », « interval »=>« week », « interval_count »=>« 1 », « amount »=>« 12 », « ui_weight »=>« 1 », « is_rolling »=>« false », « plan_file_attributes »=>{« id »=>«  », « _destroy »=>«  »}, « partner_id »=>«  »}, « authenticity_token »=>« ccpIZfcis+pmlXtkNpCxnvLBHPeMeV3qgS/vTAukHi4uPg3mpEw5HxpTGQ8TPgQXOQMzqZLTyoXdSSd01fFhRA== »}
User Load (0.3ms) SELECT « users ».* FROM « users » WHERE « users ».« id » = $1 ORDER BY « users ».« id » ASC LIMIT 1 [[« id », 1]]
Role Load (0.2ms) SELECT « roles ».* FROM « roles » INNER JOIN « users_roles » ON « roles ».« id » = « users_roles ».« role_id » WHERE « users_roles ».« user_id » = $1 AND (((roles.name = ‹ admin ›) AND (roles.resource_type IS NULL) AND (roles.resource_id IS NULL))) [[« user_id », 1]]
Unpermitted parameter: partner_id
(0.1ms) BEGIN
Plan Exists (0.3ms) SELECT 1 AS one FROM « plans » WHERE (« plans ».« id » IS NOT NULL) AND « plans ».« slug » = $1 LIMIT 1 [[« slug », « asdf »]]
Group Load (0.3ms) SELECT « groups ».* FROM « groups » WHERE « groups ».« id » = $1 LIMIT 1 [[« id », 1]]
SQL (0.4ms) INSERT INTO « plans » (« base_name », « type », « group_id », « amount », « interval », « is_rolling », « ui_weight », « slug », « created_at », « updated_at ») VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) RETURNING « id » [[« base_name », « asdf »], [« type », « Plan »], [« group_id », 1], [« amount », 1200], [« interval », « week »], [« is_rolling », « f »], [« ui_weight », 1], [« slug », « asdf »], [« created_at », « 2018-03-19 13:16:19.966678 »], [« updated_at », « 2018-03-19 13:16:19.966678 »]]
(0.2ms) ROLLBACK
Completed 500 Internal Server Error in 119ms (ActiveRecord: 2.6ms | Elasticsearch: 0.0ms)

Stripe::AuthenticationError (No API key provided. Set your API key using « Stripe.api_key =  ». You can generate API keys from the Stripe web interface. See Stripe API reference – curl for details, or email support@stripe.com if you have any questions.):
app/models/plan.rb:98:in create_stripe_plan' app/controllers/api/plans_controller.rb:49:in create’

¿How can I solve this issue? Thanks in advance, best regards.

Hi!

Did you create a Stripe account and set the environment variables STRIPE_API_KEY and STRIPE_PUBLISHABLE_KEY ?

As you can see in the logs, the message "No API key provided. Set your API key using "Stripe.api_key = «  » indicates that there is no Stripe api key set.

Best regards,

Nicolas

Hi Nicolas, thanks for your quick answer. I see what the problem was. I would like to use the credit and invoice system, but without online payments (that’s what Stripe is for). Is it possible to introduce manually credits to different users and use the invoicing system to charge to these credits? Thanks again

Unfortunately Stripe is required as it is coupled with the application. However, you can set up stripe keys and leave your stripe account in test mode and the application will work fine. But if the application is accessible by the users, that could be very confusing for the users as they will be able to make reservations (with fake charges of course).
I would say it can be a solution only if the app is used on a local machine and if you manage all the reservations from here.

To answer your second question, yes administrators can give credits to a user, therefore the user will be able to pay with them.

1 « J'aime »