1) You need a DNA Payments merchant account (dnapayments.com). The plugin asks for the Client ID, the Client secret and the Terminal ID provided by DNA Payments, with a Test environment to try the plugin first.
2) Install this plugin on your Joomla or WordPress website: in Joomla with the extension installer, in WordPress with the "Install Plugin" button of HikaShop's payment plugins page.
3) In HikaShop, go to System > Payment methods, click "New" and choose DNA Payments.
4) Type your Client ID, Client secret and Terminal ID, choose the Environment, set "Published" to Yes, and save.
5) Your website has to be reachable from the internet: DNA Payments tells your shop that a payment was made by calling an address of your shop, which the plugin sends with each payment.
Configuration
Client ID: the Client ID of your DNA Payments account. Required: left empty, the customer sees an error at the checkout.
Client secret: the Client secret that goes with it. Required, and also used to check that every notification really comes from DNA Payments.
Terminal ID: the Terminal ID of your DNA Payments account. Required.
Environment: Test while you try the plugin, Production once you take real payments. The Client ID, Client secret and Terminal ID have to be those of the same environment.
Debug: Yes writes the exchanges with DNA Payments to the HikaShop payment log. Turn it on to look into a problem, then off again.
Return url: optional, the page your customer is sent to after a payment that confirms the order. Left empty, the standard HikaShop thank you page is used.
Invalid status: shown for every payment method, but the current version does not set it: an order whose payment failed keeps its status and the customer is sent to the cancellation page.
Verified status: the status of a paid order ("confirmed" by default). Choose the status that sends your customer the confirmation email.
The other settings of the page (name, description, images, price, zone, currency, restrictions) are the same as for every HikaShop payment method.
Troubleshooting
Turn Debug on and open the payment log (System > Configuration, Files, "See the report" next to "Payment log file") to see the exchanges with DNA Payments.
"You have to configure the Client ID (or the Client secret, or the Terminal ID) for the DNA Payments plugin payment first": type the missing value in the payment method.
An error message at the checkout when the payment is started: DNA Payments refused the request, and the message it gave is shown. Check that the three values and the Environment belong to the same account.
"invalid signature" in the payment log: a notification could not be checked with your Client secret, so the order was not changed. Check the Client secret.
"notification refused, unexpected invoice id / amount / currency" in the payment log: what DNA Payments reported does not match the order, so the order was not confirmed. Check the payment on your DNA Payments account.
"DNA Payments: Unable to retrieve the order ID from the URL": the notification came without an order number and was ignored.