private string CreateElectronicPaymentInfo(BackFillRequest request, RequestorInformation requestor) { var records = _chargingApiClient.GetTransactionLogByToken(request.Token, requestor); var creditCardRecord = records.Result.FirstOrDefault(); if (creditCardRecord == null) { return(null); } if (creditCardRecord.ResultReferenceId != request.Token) { return(null); } var creditCard = new CreditCard() { Name = creditCardRecord.Name, AddressLine1 = creditCardRecord.Address1, AddressLine2 = creditCardRecord.Address2, City = creditCardRecord.City, Country = creditCardRecord.Country, State = creditCardRecord.State, PostalCode = creditCardRecord.Zip, CardType = creditCardRecord.CardType, First6Digits = creditCardRecord.CCNumFirst6, Last4Digits = creditCardRecord.Last4Digits, }; var expiresMonthYear = creditCardRecord.ExpirationDate.Split('/'); if (expiresMonthYear.Length > 1) { creditCard.ExpirationMonth = expiresMonthYear[0]; creditCard.ExpirationYear = expiresMonthYear[1]; } var paymentInfo = new ElectronicPaymentInfo() { AccountDid = creditCardRecord.AccountDid, CreatedById = "ArBackfill", PaymentType = creditCardRecord.PaymentType, TokenId = creditCardRecord.ResultReferenceId, TokenExpireDt = creditCardRecord.ResultReferenceExpirationDate, CreditCard = creditCard }; var detailResponse = _tellerApiClient.PostPaymentInfo(paymentInfo, requestor); return(detailResponse.Result.ElectronicPaymentDid); }
public Task <PostPaymentInfoResponse> PostPaymentInfo(ElectronicPaymentInfo paymentDetails, RequestorInformation requestorInfo) { var path = "/v1/paymentdetails/creditcard"; return(PostJsonAsync <PostPaymentInfoResponse>(path, paymentDetails, requestorInfo)); }