code: private Credentials postCredentials(Subscription subscription) {
  
  		String credentialsUrl = subscription.getEndpoint(ModuleIdentifier.CREDENTIALS).getUrl();
  		LOG.info("Posting credentials at " + credentialsUrl + " with authorizationToken: "
  				+ subscription.getPartnerAuthorizationToken());
  
  		Credentials credentials = new Credentials();
  		credentials.url = HOST_URL + "/cpo/versions";
  		credentials.token = subscription.getAuthorizationToken();
  		credentials.party_id = PARTY_ID;
  		credentials.country_code = COUNTRY_CODE;
  
  		BusinessDetails businessDetails = new BusinessDetails();
  		businessDetails.name = CLIENT_NAME;
  		credentials.business_details = businessDetails;
  
  		String json = toJson(credentials);
  
  		LOG.info("Credentials POST: " + json);
  
  		HttpPost post = new HttpPost(credentialsUrl);
  		HttpEntity entity = null;
  		try {
  			entity = new ByteArrayEntity(json.getBytes("UTF-8"));
  		} catch (UnsupportedEncodingException e) {
  			LOG.error("UnsupportedEncodingException while setting body for posting credentials", e);
  		}
  		post.setEntity(entity);
  
  		CredentialsResponse credentialsResponse = (CredentialsResponse) doRequest(post,
  				subscription.getPartnerAuthorizationToken(), CredentialsResponse.class);
  		LOG.debug("credentialsResponse data: " + credentialsResponse);
  
  		return credentialsResponse.data;
  	}
docs: Posts the credentials of the user with the EMSP credentials endpoint
  
  @param subscription
  @return the definitive partnerAuthorizationToken in the post response