question

rhyshintmd avatar image
rhyshintmd asked rhyshintmd commented

SNPD pre-requisites before setup of clover mini and writing code?

I am trying to get SNPD working on our devkit, using the samples in github, looks like I am missing something to get it to connect. Like, do I need some setup in sandbox to get the sample code to connect to it?


semi-integrationssecure network pay display
1 comment
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Marginian avatar image David Marginian ♦♦ commented ·

You haven't provided enough information for us to help you.

1) Have you installed, configured, and started SNPD? https://docs.clover.com/clover-platform/docs/configuring-secure-network-pay-display

2) What examples are you using?

3) What SDK are you using?

4) Describe the problem you are having?



0 Likes 0 ·
David Marginian avatar image
David Marginian Deactivated answered David Marginian Deactivated edited

Have you been in touch with our developer relations team or followed our process for new semi-integrations? https://docs.clover.com/clover-platform/docs/application

In order to use SNPD the Clover device and your POS must be on the same network. If you are planning to have a server based solution, I don't see how this is possible.

If you are using our react example (which is a browser-based, not server based example) just to test things then you will run into another problem - Clover's device certificate will need to be installed in the browser if you want to use wss. You can run in non-secure mode (ws) for testing to work-around this (please see configuring SNPD).

These limitations are discussed here - https://docs.clover.com/clover-platform/docs/cloud-sdk-v3. It is also critical that you read through and implement our best practices (unrelated to your current problem) - https://docs.clover.com/clover-platform/docs/remote-pay-sdk-best-practices.

Given the information you have provided, using SNPD doesn't seem like a work-able approach for your integration. The great majority of our JavaScript integrators use Cloud Pay Display to work-around the network problem, the certificate problem, or both.

Your Remote App ID can be found in your application configuration on the developer dashboard - https://docs.clover.com/clover-platform/docs/create-your-remote-app-id.




10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

rhyshintmd avatar image
rhyshintmd answered

@David Marginian. below are my answers:

1) Have you installed, configured, and started SNPD? https://docs.clover.com/clover-platform/docs/configuring-secure-network-pay-display. --> YES, but I guess I forgot to install the development certificates. It should be installed on the server that will host my app or on the computer using the browser? (our app is on a remote server and the users are only accessing the web client).

2) What examples are you using?

a. https://github.com/clover/remote-pay-cloud-examples/tree/master/remote-pay-cloud-pos-react

b. remote-pay-cloud-nodejs-example

3) What SDK are you using? the samples are using the javascript SDK (and same as what I will be needing so I was trying to get the sample to work and use it as basis for what I want to do.

4) Describe the problem you are having?

for a(the react sample), I selected to connect via network and entered the ip address of the device. But when I hit connect nothing happens.

for b. I was getting

Initializing connection to device at wss://172.20.1.145:12345/remote_pay

error An unexpected websocket error has occurred.

Also, I want to make sure I am putting the correct configurations for the sample apps.

The client Id -> APpId, I was only to see one when I create an app thru the dashboard, but that looks to me like for someone creating an app for the device, but can you confirm is it the correct one?


Also, how do I get a Remote Application Id? I was given one but I don't know how to get it or verify that it is the correct one.


clientId: 'HBK8YZG9EQNJG', // Update this to match your "App ID".  From the Clover Developer Dashboard find your app, select "settings" and your "App ID" will be displayed.
    devicesDomain: 'https://apisandbox.dev.clover.com/v3/merchants/', // Update this to match the environment you are hitting, e.g. https://apisandbox.dev.clover.com/v3/merchants/
    oAuthDomain: 'https://sandbox.dev.clover.com' // Update this to match the environment you are hitting, e.g. https://sandbox.dev.clover.com
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

rhyshintmd avatar image
rhyshintmd answered rhyshintmd commented

@David Marginian. Yes, our company was in conversations since a few weeks ago with your solutions engineers. We were told that they suggested we use SNPD.

All integrations would need a server to store application data right? and the Web client will interact with our server and with the Clover device (for the payment). Isn't that how the semi-integration is supposed to work?

I'll go thru the steps again later today on the set up. thanks!


3 comments
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Marginian avatar image David Marginian ♦♦ commented ·

What your integration does regarding your data is up to you. Based on your original question I thought you were planning on implementing the connection to the Clover device on the server. If you are doing this in the browser instead and the POS client is on the same network as the Clover device you won't have a problem reaching the device.

However, you still have a problem with the certificate and that is a pretty major hurdle to overcome. Installing a cert is not trivial for merchants and each time they change browsers etc. they will be unable to communicate with the device (if the cert isn't installed). The only way I can see this being feasible is if all of your merchants are in a controlled environment (browsers are locked down and managed). If that isn't the case, you have to use Cloud Pay Display.

In a private post can you please provide me with your companies name as well as the contacts you have had on the Clover side so that I may speak with them.

0 Likes 0 ·
rhyshintmd avatar image rhyshintmd David Marginian ♦♦ commented ·

@David Marginian. if I will try it without in insecure mode and use ws instead of wss, I should not need to install the certificate and my browser should be able to connect right?


What are the usual problems if I am still unable to connect? the browser error that I am getting is like the connection timed out (which is the same error I was getting when using wss).



0 Likes 0 ·
David Marginian avatar image David Marginian ♦♦ rhyshintmd commented ·

That is correct. Are you sure SNPD is running? Do you see the welcome screen or do you see the configuration screen? Are you using the connection string listed on the configuration screen? Perhaps you can share a video of your connection information (SDK side) and what the device looks like.

0 Likes 0 ·

Welcome to the
Clover Developer Community