/// <summary> /// Validate account holder /// </summary> /// <param name="accountHolderIdType"></param> /// <param name="accountHolderId"></param> /// <returns></returns> public async Task <ClientResponse> AccountHolder(string accountHolderIdType, string accountHolderId) { var token = await GetToken(); var accountHolderRequest = new AccountHolderRequest { SubscriptionKey = remittanceConfig.SubscriptionKey, AccountHolderId = accountHolderId, AccountHolderIdType = accountHolderIdType, RequestUri = RemittanceRequestUri.AccountHolder, Token = token?.AccessToken }; return(await accountHolderClient.AccountHolder(accountHolderRequest)); }
/// <summary> /// Validate account holder for a Product /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <ClientResponse> AccountHolder(AccountHolderRequest request) { if (string.IsNullOrEmpty(request.Token)) { return(new ClientResponse { Status = Status.Failed.ToString(), StatusCode = HttpStatusCode.Unauthorized }); } var headers = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>(Constants.SubKeyHeader, request.SubscriptionKey), new KeyValuePair <string, string>(Constants.AuthHeader, $"Bearer {request.Token}"), }; var response = await baseClient.GetAsync($"{request.RequestUri}/{request.AccountHolderIdType}/{request.AccountHolderId}/active", Constants.MtnClient, headers); response.Status = response.StatusCode == HttpStatusCode.OK ? Status.Successful.ToString() : Status.Failed.ToString(); return(response); }