laravel/cashier-mollie

Only showing credit card as payment option

ao-jhelmich opened this issue · 12 comments

Everything is working fine when using the test API key, but as soon as I start using my live API key I only get credit card as payment option.

Is set in cashier.first_payment

      'method' => null,

The following code creates the subscription

        $builder = user()->newSubscriptionViaMollieCheckout('default', $subscription);

        if ($this->coupon) {
            $builder->withCoupon($this->coupon);
        }

        return redirect()->to($builder->create()->getTargetUrl());

I cant seem to figure out why this doesn't work.

Can you check in the Mollie dashboard that for the production key you're using the payment methods have been enabled AND have been approved?

In case of PayPal recurring you probably need to take additional steps to get it enabled. Docs

image

I checked and it seems to be okay, I also mailed mollie support to check if my account is okay.

Changed the payment method from

'method' => null

to

'method' => 'ideal',

As mentioned above the method config

But then I got the error

The payment method selected does not accept recurring payments. Field: method. Documentation: https://docs.mollie.com/guides/handling-errors

With the testing API key, it does accept ideal as a payment method.

Ill check the mollie methods API and see what it returns

I accessed the mollie API with the following URL https://api.mollie.com/v2/methods?sequenceType=first.
And got the following response.

{
    "_embedded": {
        "methods": [
            {
                "resource": "method",
                "id": "ideal",
                "description": "iDEAL",
                "minimumAmount": {
                    "value": "0.01",
                    "currency": "EUR"
                },
                "maximumAmount": {
                    "value": "50000.00",
                    "currency": "EUR"
                },
                "image": {
                    "size1x": "https://www.mollie.com/external/icons/payment-methods/ideal.png",
                    "size2x": "https://www.mollie.com/external/icons/payment-methods/ideal%402x.png",
                    "svg": "https://www.mollie.com/external/icons/payment-methods/ideal.svg"
                },
                "status": "activated",
                "_links": {
                    "self": {
                        "href": "https://api.mollie.com/v2/methods/ideal",
                        "type": "application/hal+json"
                    }
                }
            },
            {
                "resource": "method",
                "id": "creditcard",
                "description": "Credit card",
                "minimumAmount": {
                    "value": "0.01",
                    "currency": "EUR"
                },
                "maximumAmount": {
                    "value": "5000.00",
                    "currency": "EUR"
                },
                "image": {
                    "size1x": "https://www.mollie.com/external/icons/payment-methods/creditcard.png",
                    "size2x": "https://www.mollie.com/external/icons/payment-methods/creditcard%402x.png",
                    "svg": "https://www.mollie.com/external/icons/payment-methods/creditcard.svg"
                },
                "status": "activated",
                "_links": {
                    "self": {
                        "href": "https://api.mollie.com/v2/methods/creditcard",
                        "type": "application/hal+json"
                    }
                }
            },
            {
                "resource": "method",
                "id": "sofort",
                "description": "SOFORT Banking",
                "minimumAmount": {
                    "value": "0.10",
                    "currency": "EUR"
                },
                "maximumAmount": {
                    "value": "50000.00",
                    "currency": "EUR"
                },
                "image": {
                    "size1x": "https://www.mollie.com/external/icons/payment-methods/sofort.png",
                    "size2x": "https://www.mollie.com/external/icons/payment-methods/sofort%402x.png",
                    "svg": "https://www.mollie.com/external/icons/payment-methods/sofort.svg"
                },
                "status": "activated",
                "_links": {
                    "self": {
                        "href": "https://api.mollie.com/v2/methods/sofort",
                        "type": "application/hal+json"
                    }
                }
            },
            {
                "resource": "method",
                "id": "bancontact",
                "description": "Bancontact",
                "minimumAmount": {
                    "value": "0.02",
                    "currency": "EUR"
                },
                "maximumAmount": {
                    "value": "50000.00",
                    "currency": "EUR"
                },
                "image": {
                    "size1x": "https://www.mollie.com/external/icons/payment-methods/bancontact.png",
                    "size2x": "https://www.mollie.com/external/icons/payment-methods/bancontact%402x.png",
                    "svg": "https://www.mollie.com/external/icons/payment-methods/bancontact.svg"
                },
                "status": "activated",
                "_links": {
                    "self": {
                        "href": "https://api.mollie.com/v2/methods/bancontact",
                        "type": "application/hal+json"
                    }
                }
            }
        ]
    },
    "count": 4,
    "_links": {
        "documentation": {
            "href": "https://docs.mollie.com/reference/v2/methods-api/list-methods",
            "type": "text/html"
        },
        "self": {
            "href": "https://api.mollie.com/v2/methods?sequenceType=first",
            "type": "application/hal+json"
        }
    }
}

Looks like Ideal should be available for first.

I then requested the same API with https://api.mollie.com/v2/methods?sequenceType=recurring
And that resulted in

{
    "_embedded": {
        "methods": [
            {
                "resource": "method",
                "id": "creditcard",
                "description": "Credit card",
                "minimumAmount": {
                    "value": "0.01",
                    "currency": "EUR"
                },
                "maximumAmount": {
                    "value": "5000.00",
                    "currency": "EUR"
                },
                "image": {
                    "size1x": "https://www.mollie.com/external/icons/payment-methods/creditcard.png",
                    "size2x": "https://www.mollie.com/external/icons/payment-methods/creditcard%402x.png",
                    "svg": "https://www.mollie.com/external/icons/payment-methods/creditcard.svg"
                },
                "status": "activated",
                "_links": {
                    "self": {
                        "href": "https://api.mollie.com/v2/methods/creditcard",
                        "type": "application/hal+json"
                    }
                }
            }
        ]
    },
    "count": 1,
    "_links": {
        "documentation": {
            "href": "https://docs.mollie.com/reference/v2/methods-api/list-methods",
            "type": "text/html"
        },
        "self": {
            "href": "https://api.mollie.com/v2/methods?sequenceType=recurring",
            "type": "application/hal+json"
        }
    }
}

So doest cashier-mollie use first or recurring payment?

Closing this, for now, will sort things out with mollie first.

It looks like it is a verification issue.

Thanks for your quick response!

And thanks for maintaining this package! ❤️

Hi @ao-jhelmich ,

Thanks for following up, seems like you're on the right track.

Let me know if/how this gets solved, haven't seen this issue before. 🤓

Hey, @sandervanhooft just heard back from mollie, they send me to technical support.

Just to be sure, it's possible to use ideal as a payment method for a subscription right?

@ao-jhelmich did your issue get fixed ? If yes, then can you please share the solution here. Thanks

Hey @harsimrandev,

yeah, I did fix it.

When using the test keys you see all the payment methods you turned on.
Once you switch to the live API keys and you are not verified yet they only show "card" as a payment option.

If you are using the live API keys, make sure the project is verified by mollie

@ao-jhelmich Thanks for the reply, how can i make sure that the project is verified by mollie ? Can you please share some details. Thanks

You gotta talk to mollie for that, they have a live chat inside the application dashboard

@ao-jhelmich thanks for the help.