Overview
NH Pay operates as an extension or service rather than a standalone product. It is for the utilizing system to manage tasks such as customer management, invoicing, bookkeeping, and stakeholder communication. The linkage between requests and asynchronous events is established with each payment request through the inclusion of arbitrary metadata. This metadata is subsequently returned with notifications pertaining to the payment request, allowing the integrating system to map NH Pay transactions to its own models (e.g., invoices, transactions, etc.).
Scenarios for NH Pay integration
FULL: Integration for a standalone product, which means onboarding the actual clients one by one, setting up pricing agreements etc. Think about practice management system such as Provet Cloud, and clinics as its clients.
LIMITED: for existing - already integrated - standalone products, acting on behalf of the product.
Full integration requires onboarding clients, each of whom must complete their own KYC process with the payment service provider (PSP). In this case you’ll also integrate web compontents to your product, in order to initiate payments and allow clients to manage themselves (onboarding, reports etc.)
Limited approach enables basic operations (e.g., receiving events, creating online payments) on behalf of existing clients without the possiblity to e.g. onboard new clients (the main integration handles this). In this case you have the access to the API and webhook events. All the data is still processed within the context of the already integrated standalone product (e.g. that too will still receive all the events and handles them the same was if they were initiated within the product).
Integration components
There are 3 main components for the integration.
PAY JS SDK (frontend) - which you should utilize with full integration. With the SDK you allow your own users to setup with our PSP (KYC) using NH pay management user interface (web), and you also get access to checkout user interface (iframe) which you can use for initiating payments. These components need to be launched directly from your PMS-product. You don’t need the SDK, if you are only interacting with an existing system (the limited integration). The SDK provided apps (management, checkout) are provided as is, not customisable.
NH Pay API, which you may use directly if needed in case of full integration (for operations not provided by the web components), or which you will primarily use in case of limited integration.
Subhub, which allows you to receive notifications of various events (e.g. status of payments, KYC process). It will use webhooks to push events to your system and you must explicitly subscribe to it. You will probably be interested in events in both, full or limited integration approaches.