Jump to content
  • 0
Sign in to follow this  
Komerdoor

Payment provider customer registration and the use of callback URLs.

Question

The payment gateway I use, called Mollie, supports the registration of customers + metadata on their servers but the payments are usually not instantly processed which require the use of a callback URL. Recurrent payments require the registration of a customer in both Blesta and the payment gateway (as supported by the merchant class) as well. Everytime a recurrent payment is processed the payment provider may do a call to the callback url (as supported by the non-merchant class).

How can I create a payment gateway plugin that supports both customer registration on the gateway (to be implemented by a "merchant" class) and the use of a callback url from the gateway back to Blesta (to be implemented by a "non-merchant" class)? Do I need to combine the "merchant" and "non-merchant" classes somehow?

Share this post


Link to post
Share on other sites

4 answers to this question

Recommended Posts

  • 0

The Mollie API documentation describes a process that mirrors the expectation for a Non-Merchant gateway in Blesta. I'm not familiar with the recurring/subscription process you mentioned, but I would expect it to function similar to subscriptions in PayPal Payments Standard (non-merchant gateway). Payment callbacks from the gateway for subscriptions should still create transactions in Blesta when using the callback URL for a Mollie Non-Merchant gateway. I don't think you need to worry about setting up a Merchant payment account in Blesta or trying to reconcile a hybrid of Non-Merchant and Merchant types (this would be unsupported anyway).

Share this post


Link to post
Share on other sites
  • 0
On 7/11/2017 at 8:48 PM, Tyson said:

The Mollie API documentation describes a process that mirrors the expectation for a Non-Merchant gateway in Blesta. I'm not familiar with the recurring/subscription process you mentioned, but I would expect it to function similar to subscriptions in PayPal Payments Standard (non-merchant gateway). Payment callbacks from the gateway for subscriptions should still create transactions in Blesta when using the callback URL for a Mollie Non-Merchant gateway. I don't think you need to worry about setting up a Merchant payment account in Blesta or trying to reconcile a hybrid of Non-Merchant and Merchant types (this would be unsupported anyway).

The difference between a merchant gateway and non-merchant gateway is still not very clear to me. Even after reading the explanation. Is the only difference between the two the ability to use a callback URL or not? Why exactly can't they be combined?

What I will do now, as follows:

1) Customer has to pay a specific amount.

2) Get the Mollie customer data from Mollie using the mollie_customer_id as stored inside the Blesta customer's metadata.

3) If the Blesta customer does not exist in Mollie the customer will be created inside Mollie, the blesta_customer_id stored inside the Mollie customer's metadata and the mollie_customer_id stored inside Blesta customer's metdata.

4) Customer gets redirected to the Mollie payment page (outside of Blesta) with the callback URL and the return URL (how to get back to Blesta) passed as one of parameters. This way Mollie will know how to return the transaction status back to the payment plugin's validate method inside Blesta.

5) The customer does its payment inside Mollie and gets redirected back to the payment plugin's success (or another depending on the status) method inside Blesta and Mollie also returns the status of the transaction to the payment plugin's validate method inside Blesta.

6) Blesta will manage everything from there.

I still have to figure out how it will work with recurring payments.

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×