Merchants Function

Some of the queries available via the Partners Reporting API allow the requestor to limit the responses to a specific merchant. This is achieved via the supply of the DNA Payments merchantId. The GET Merchants request allows the requestor to locate this value for any merchant.

GET Merchants - Request

The Merchant request is completed via a GET request to the test URL shown above, and should contain the below header data. The access_token will be the one received in the Authentication Response.

HTTP Header
Field NameStateData TypeDescription
Content-TypeMandatoryStringapplication/json
Content-TypeMandatoryStringBearer access_token

GET Merchants - Response

If the request is successful, the method will return a 200 response code. All your merchants will be returned as an array containing the following fields:

GET Merchant Response
Field NameData TypeDescription
idString Unique ID for the merchant, allocated by DNA Payments.
nameIntegerName of the merchant.
isActiveBooleanConfirms whether the merchant is active.
trueMerchant is active.
falseMerchant is not active.
reconcilitationIdInteger

Unique Id allocated by DNA Payments to the merchant account. This reference appears on the merchant bank statement when payment/settlements are made.

terminalsArrayList of all Terminal ID's configured for the merchant.
processorBooleanAllows the requestor to filter merchants returned by the processor of the transactions.
dnaMerchant is processing via DNA Payments acquiring.
optomanyMerchant is processing via the Optomany platform to another UK acquirer.

Example Request and Response

Postman GET request
GET https://test-api.dnapayments.com/v1/partners/merchants
HTTP/1.1
Content-Type: application/json
Authorization: Bearer 6945595921271780
User-Agent: PostmanRuntime/7.26.8
Accept: */*
Host: 192.168.0.75:8080
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
GET Merchant Storage

You can store the id and name locally as these values will not change, but it is best practice to re-query this each time you need to make a merchant specific request.