Skip to content
This repository has been archived by the owner on Feb 2, 2022. It is now read-only.

FirstPayment minimum after coupon #78

Open
sandervanhooft opened this issue Oct 3, 2019 · 3 comments
Open

FirstPayment minimum after coupon #78

sandervanhooft opened this issue Oct 3, 2019 · 3 comments
Labels
enhancement New feature or request

Comments

@sandervanhooft
Copy link
Contributor

How should the FirstPayment amount be increased to meet the minimum payment amount (config('cashier.first_payment.amount') requirement?

  • add the extra required amount as a service fee
  • add the extra required amount to the balance

What do you think?

Context: in some cases the first payment amount will drop below the required minimum. I.e. when a coupon was applied.

@sandervanhooft sandervanhooft added the enhancement New feature or request label Oct 3, 2019
@RobertBoes
Copy link
Contributor

I think it would be best to add this to the customer's balance, this way it's less confusing for the customer. I would assume the following would happen:

  • MInimum payment: €10.00
  • Plan: €15.00
  • Coupon: €10.00

When the coupon is set to 1 time, the customer pays €10.00 the first time and €5.00 is added to their balance. This is also mentioned on their invoice. The second time the customer effectively pays €10.00 again, after that the customer pays the regular price.

When the coupon repeats more than once, the first payment is also €10.00 with €5.00 added to their balance. The second payment will be €0.00, subsequent payments will return to the discounted price of €5.00.

When doing this with a service fee it defeats the purpose of a coupon, since the customer is charged more anyway. This doesn't really seem logical to me.

However personally I would try to avoid this behavior in my own app, because in both cases it could be quite confusing and might turn into more tickets.

@sandervanhooft
Copy link
Contributor Author

Thanks @RobertBoes !

To be clear, this is about preventing Exceptions thrown by Mollie, triggered by a payment amount being too small.

So it's usually set to €1.00 minimum (to cover all different payment methods) in the config.

I agree that the app developer should try to avoid these scenario's, but since it might happen, better to deal with it :).

Also good to know: for payments after the first payment, the minimum payment is dynamically determined using Mollie's API. It's not possible to do this with the first payment because it requires a mandate.

@asamMarkus
Copy link

asamMarkus commented Jun 10, 2020

@sandervanhooft I am wondering how to act in oder to arrive at this question.

When I create a new subscription and redeem a coupon on this newly created subscription, the first payment is already processed and the coupon is applied on the second charge of the subscription.

The same happens if I credit the user a certain amount and create the subscription afterwards. The balance is also not applied to the first payment but to the consequent one(s).

I am asking because I have the usecase of applying any sort of discount from the beginning on.

Edit: sorry, after some more code research I found out that I can apply withCoupon() on the SubscriptionBuilder instances. I'm fine with this...

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants