This project is read-only.

To install and use this Payment gateway in NB_Store, you will need to perform a few manual steps.

Gateway Settings

First, you need to create a setting in NB_Store, in category "gateways"
Setting name: FortyFingers.MollieIdeal.gateway
// Setting value:
<root>
  <ButtonImageURL>/Desktopmodules/40Fingers/NBStore.Mollie.IdealGateway/iDEAL.jpg</ButtonImageURL>
  <CartDescription>General cart description</CartDescription>
  <PaymentCompletedHTML>Your payment has been processed.</PaymentCompletedHTML>
  <MollieTestmode>true</MollieTestmode>
  <MolliePartnerID>123456</MolliePartnerID>
  <ReportUrl>http://www.shop.com/tabid/61/stg/4/ordid/[ORDERID]/cartid/[CARTID]/Default.aspx</ReportUrl>
  <ReturnUrl>http://www.shop.com/tabid/61/stg/5/ordid/[ORDERID]/cartid/[CARTID]/Default.aspx</ReturnUrl>
</root>


This is how to change the settings:
*ButtonImageURL: This is the URL to the image the user will need to click to select iDEAL payment. The iDEAL logo is included, so the default value can remain unchanged.
*CartDescription: Short description of your shop. The customer will see this text bothin in iDEAL and on their bank statement. The token ORDERID can be used to include the order number at runtime.
*PaymentCompletedHTML: Encoded HTML that will be displayed by NBStoreCheckout module when payment has been completed.
*MollieTestmode: “true” or “false” to indicate wether or not you are testing payment. Your Mollie account will also need to be in Test mode.
*MolliePartnerID: your partnerID at Mollie. This can be found in your account settings on the Mollie website..
*ReportUrl: The URL to the page of your site where the NBStoreCheckout module is located. Mollie will perform this request "behind the scenes" and not from the customer's browser. Essential parts here are:
Stg: value 4. This indicates the step in the payment process.
Orderid: Value ORDERID. During payment this token will be replaced by the actual order number. Without this, the provider cannot determine which order has been payed for. To facilitate for backwards compatibility, you can also use "orderid" in stead of "ordid".
Cartid: Value CARTID. During payment this token will be replaced by the actual value. This value is also mandatory for the payment process.
ReturnURL: The URL to the page of your site where the NBStoreCheckout module is located. Same parameters as for ReportURL can be used, but are not mandatory. Future versions of the provider might use them, though.

Integrate in NB_Store

// Next, you will need to make sure NB_Store knows about your new gateway. To achieve that, open the setting gateways.xml and add the following XML Element:
  <gateway ref="Mollie.iDEAL">
    <name>Mollie iDEAL</name>
    <assembly>40Fingers.DNN.Modules.NBStore.Mollie.IdealGateway</assembly>
    <class>FortyFingers.DNN.Modules.NBStore.Mollie.IdealGateway</class>
  </gateway>

Fix NB_Store default CSS issue

There's a little issue with the default styles.css template which causes the payment button to be hidden. So you need to go to edit the template styles.css, the line containing:
.Checkout fieldset img { display: none; }
need to be changed to:
.Checkout fieldset img { display: block; }

Configure NBStoreCheckout

Finally, you will need to go to the settings page for the NBStoreCheckout module and check the box next to "Mollie".

Optionally add a button html template

You can add a template in NB_Store for the Button HTML. The setting must be named "FortyFingers.MollieIdeal.template". Use the following tokens:
  • BANKSELECTOROPTIONSHTML: injects the <option> elements for the available banks from Mollie. (It will not inject the <select> element.
  • BUTTONIMAGEURL: Injects the setting "ButtonImageUrl"

Last edited Oct 7, 2013 at 9:13 AM by superska, version 7

Comments

trouble2 Mar 31, 2014 at 11:22 AM 
!!
Bottom-line: The NB-Store appears to give the correct status to payment of the orders, but the wrong status message is displayed to the customer if the payment is failed.

I've got the same issue, is there something we can do about this?

jvancraa Jun 1, 2013 at 7:15 PM 
I followed the instructions above in Testing mode. Mollie appears to return to the same URL when a customer has paid as when the customer did not pay. NB Store marked the first order as paid and marked the second as cancelled. The customer however in both cases gets the response: "The order has been processes, the invoice was send to your email address". When running the same test in production mode i get the same result.

Bottom-line: The NB-Store appears to give the correct status to payment of the orders, but the wrong status message is displayed to the customer if the payment is failed.

Do you have tips for me how to resolve this?

FYI: I'm running NBSTORE 02.03.05 with 40Fingers 01.03.09

Thx,

Jeroen

ashish841987 Apr 30, 2013 at 1:28 PM 
Hi,
After following the above steps, i am still getting the error as listed below:

"
Manage
Error: NB_Store_Checkout is currently unavailable. DotNetNuke.Services.Exceptions.ModuleLoadException: <?xml version="1.0"?><response><item type="error"><errorcode>-2</errorcode><message>This account does not exist or is suspended.</message></item></response> ---> System.Exception: <?xml version="1.0"?><response><item type="error"><errorcode>-2</errorcode><message>This account does not exist or is suspended.</message></item></response> at FortyFingers.DNN.Modules.NBStore.Mollie.IdealGateway.SetBankRemotePost(Int32 PortalID, Int32 OrderID, String Lang, HttpRequest Request) at NEvoWeb.Modules.NB_Store.GatewayWrapper.SetBankRemotePost(Int32 PortalID, Int32 OrderID, String Lang, HttpRequest Request) at NEvoWeb.Modules.NB_Store.CheckOut.GatewayRedirect() at NEvoWeb.Modules.NB_Store.CheckOut.Page_Load(Object sender, EventArgs e) --- End of inner exception stack trace -"

What account needs to be amended or created at what website. Please advise.

Thanks

ojooris Jan 13, 2012 at 1:34 PM 
Om er voor te zorgen dat Ideal zichbaar is:
in de template settings :
style.css
.Checkout fieldset img { display: none; }
None --> BLOCK

in de style.css komt soms aan het begin en einde (ik scrapte het):
<p _rdEditor_exists="1">&nbsp;</p>

als je artisteer gebruikt moet je !important plaatsen op elk item van de syle.css (komt 2x voor
.CardGatewayButton, .ManualGatewayButton { .. }