How do I board a merchant with Barclaycard processing via the API?

1. Create a Merchant with a Barclaycard processing path

post /v2/merchants/ Try it out! Request
{
	"processingPaths": [{
		"currencies": ["GBP"],
		"schemes": ["VISA", "MAESTRO", "VISAELECTRON", "MASTER"],
		"details": {
			"institute": "BARCLAYCARD",
			"country": "GB",
			"sortCode": "123456",
			"merchantId": "123456",
			"terminalIds": ["31969999"]
		},
		"name": "Default processing",
		"active": true
	}],
	"name": "Test Merchant",
	"readers": [],
	"details": {
		"publicName": "Barclaycard Sample",
		"address": "Street 1",
		"zip": "123456",
		"city": "London",
		"country": "GB",
		"contact": "+44 123 456 789",
		"additionalInformation": "VAT Number: 123456"
	}
}

Please pay special attention to those parameters:

$.name
Make sure to specify a unique (internal) name for each merchant that you create.
$.details
Finally, for the payment receipts, you need to provide some information about the merchant, including Public Name, Address and a Contact Phone Number/Email Address.

You will receive a merchantIdentifier after successfully creating the merchant:

Response
{
    "status": "ok",
    "data": {
    	/*...*/
        "identifier": "74b47dcd-45b0-4c65-a4d1-afd4aae32708",
        "name": "Test Merchant"
		/*...*/
    }
}

2. Generate the Merchant Secret Key

Next you can generate a Merchant Secret Key for the Merchant via the API:

post /v2/merchants/{merchantIdentifier}/secretKey Try it out! Request
{
	"permissions": ["READER_MANAGEMENT","TRANSACTIONS"]
}

You will receive the Merchant Secret Key in the response:

Response
{
    "status": "ok",
    "data": {
        "status": "ACTIVE",
        "key": "9pCcTI2mzUbLKoCdezVBowhv0b6gGwoo"
    }
}

Optional: 3. Find the reader you want to assign to the merchant

The platform keeps track of all the readers that you have purchased. In order to assign a reader to the new merchant you have created in Step 1, you must know its readerIdentifier. Use this API to find the readerIdentifier of a reader based on its serial number (e.g. 999-100001):

get /v2/readers/?search=999-100001 Try it out! Request

You will receive the readerIdentifier in the response:

Response
{
    "status": "ok",
    "data": [{
    	/*...*/
        "identifier": "0665ede3-3990-4c9b-beac-77abfeda5858",
        "model": "MIURA_M010",
        "details": {
            "serialNo": "999100001"
            /*...*/
        }
    }]
}

Optional: 4. Assign the reader to new merchant

Based on the merchantIdentifier from Step 1 and the readerIdentifier from Step 3, you can now assign the reader to the merchant:

put /v2/merchants/{merchantIdentifier}/readers/{readerIdentifier} Try it out! Request

Can we help you?

If you cannot find your answer, contact us and we'll get in touch with you soon.