public Charge Charge(CreditCard card, string reference, string currency, decimal amount) { var endpointParams = new Dictionary<string, string>(); endpointParams.Add("currency", currency); endpointParams.Add("amount", amount.ToString()); endpointParams.Add("reference", reference); endpointParams.Add("card[name]", card.CardName); endpointParams.Add("card[number]", card.Number); endpointParams.Add("card[expiry_month]", card.ExpiryMonth.ToString()); endpointParams.Add("card[expiry_year]", card.ExpiryYear.ToString()); endpointParams.Add("card[cvv]", card.CVV); var response = client.Post(chargeEndpoint, endpointParams); var message = response.ConvertResponseTo<ApiMessage>(); if (message.HasError) { throw new PaychoiceException(message.Error); } return message.Charge; }
public StoredCreditCard Store(CreditCard card) { var endpointParams = new Dictionary<string, string>(); endpointParams.Add("card[name]", card.CardName); endpointParams.Add("card[number]", card.Number); endpointParams.Add("card[expiry_month]", card.ExpiryMonth.ToString()); endpointParams.Add("card[expiry_year]", card.ExpiryYear.ToString()); endpointParams.Add("card[cvv]", card.CVV); var response = client.Post(tokenEndpoint, endpointParams); var message = response.ConvertResponseTo<ApiMessage>(); if (message.HasError) { throw new PaychoiceException(message.Error); } return message.Card; }