public CreditCardVerification(NodeWrapper node, BraintreeGateway gateway) { if (node == null) return; AvsErrorResponseCode = node.GetString("avs-error-response-code"); AvsPostalCodeResponseCode = node.GetString("avs-postal-code-response-code"); AvsStreetAddressResponseCode = node.GetString("avs-street-address-response-code"); CvvResponseCode = node.GetString("cvv-response-code"); GatewayRejectionReason = (TransactionGatewayRejectionReason)CollectionUtil.Find( TransactionGatewayRejectionReason.ALL, node.GetString("gateway-rejection-reason"), null ); ProcessorResponseCode = node.GetString("processor-response-code"); ProcessorResponseText = node.GetString("processor-response-text"); MerchantAccountId = node.GetString("merchant-account-id"); Status = (VerificationStatus)CollectionUtil.Find(VerificationStatus.ALL, node.GetString("status"), VerificationStatus.UNRECOGNIZED); Id = node.GetString("id"); BillingAddress = new Address(node.GetNode("billing")); CreditCard = new CreditCard(node.GetNode("credit-card"), gateway); CreatedAt = node.GetDateTime("created-at"); var riskDataNode = node.GetNode("risk-data"); if (riskDataNode != null) { RiskData = new RiskData(riskDataNode); } }
internal Customer(NodeWrapper node, BraintreeService service) { if (node == null) return; Id = node.GetString("id"); FirstName = node.GetString("first-name"); LastName = node.GetString("last-name"); Company = node.GetString("company"); Email = node.GetString("email"); Phone = node.GetString("phone"); Fax = node.GetString("fax"); Website = node.GetString("website"); CreatedAt = node.GetDateTime("created-at"); UpdatedAt = node.GetDateTime("updated-at"); var creditCardXmlNodes = node.GetList("credit-cards/credit-card"); CreditCards = new CreditCard[creditCardXmlNodes.Count]; for (int i = 0; i < creditCardXmlNodes.Count; i++) { CreditCards[i] = new CreditCard(creditCardXmlNodes[i], service); } var addressXmlNodes = node.GetList("addresses/address"); Addresses = new Address[addressXmlNodes.Count]; for (int i = 0; i < addressXmlNodes.Count; i++) { Addresses[i] = new Address(addressXmlNodes[i]); } CustomFields = node.GetDictionary("custom-fields"); }
public void Setup() { gateway = new BraintreeGateway { Environment = Environment.DEVELOPMENT, MerchantId = "integration_merchant_id", PublicKey = "integration_public_key", PrivateKey = "integration_private_key" }; CustomerRequest request = new CustomerRequest { CreditCard = new CreditCardRequest { CardholderName = "Fred Jones", Number = "5105105105105100", ExpirationDate = "05/12" } }; customer = gateway.Customer.Create(request).Target; creditCard = customer.CreditCards[0]; }
protected internal Customer(NodeWrapper node, BraintreeGateway gateway) { if (node == null) return; Id = node.GetString("id"); FirstName = node.GetString("first-name"); LastName = node.GetString("last-name"); Company = node.GetString("company"); Email = node.GetString("email"); Phone = node.GetString("phone"); Fax = node.GetString("fax"); Website = node.GetString("website"); CreatedAt = node.GetDateTime("created-at"); UpdatedAt = node.GetDateTime("updated-at"); var creditCardXmlNodes = node.GetList("credit-cards/credit-card"); CreditCards = new CreditCard[creditCardXmlNodes.Count]; for (int i = 0; i < creditCardXmlNodes.Count; i++) { CreditCards[i] = new CreditCard(creditCardXmlNodes[i], gateway); } var paypalXmlNodes = node.GetList("paypal-accounts/paypal-account"); PayPalAccounts = new PayPalAccount[paypalXmlNodes.Count]; for (int i = 0; i < paypalXmlNodes.Count; i++) { PayPalAccounts[i] = new PayPalAccount(paypalXmlNodes[i], gateway); } var applePayXmlNodes = node.GetList("apple-pay-cards/apple-pay-card"); ApplePayCards = new ApplePayCard[applePayXmlNodes.Count]; for (int i = 0; i < applePayXmlNodes.Count; i++) { ApplePayCards[i] = new ApplePayCard(applePayXmlNodes[i], gateway); } var androidPayCardXmlNodes = node.GetList("android-pay-cards/android-pay-card"); AndroidPayCards = new AndroidPayCard[androidPayCardXmlNodes.Count]; for (int i = 0; i < androidPayCardXmlNodes.Count; i++) { AndroidPayCards[i] = new AndroidPayCard(androidPayCardXmlNodes[i], gateway); } var amexExpressCheckoutCardXmlNodes = node.GetList("amex-express-checkout-cards/amex-express-checkout-card"); AmexExpressCheckoutCards = new AmexExpressCheckoutCard[amexExpressCheckoutCardXmlNodes.Count]; for (int i = 0; i < amexExpressCheckoutCardXmlNodes.Count; i++) { AmexExpressCheckoutCards[i] = new AmexExpressCheckoutCard(amexExpressCheckoutCardXmlNodes[i], gateway); } var coinbaseXmlNodes = node.GetList("coinbase-accounts/coinbase-account"); CoinbaseAccounts = new CoinbaseAccount[coinbaseXmlNodes.Count]; for (int i = 0; i < coinbaseXmlNodes.Count; i++) { CoinbaseAccounts[i] = new CoinbaseAccount(coinbaseXmlNodes[i], gateway); } var venmoAccountXmlNodes = node.GetList("venmo-accounts/venmo-account"); VenmoAccounts = new VenmoAccount[venmoAccountXmlNodes.Count]; for (int i = 0; i < venmoAccountXmlNodes.Count; i++) { VenmoAccounts[i] = new VenmoAccount(venmoAccountXmlNodes[i], gateway); } PaymentMethods = new PaymentMethod[ CreditCards.Length + PayPalAccounts.Length + ApplePayCards.Length + CoinbaseAccounts.Length + AndroidPayCards.Length + AmexExpressCheckoutCards.Length + VenmoAccounts.Length ]; CreditCards.CopyTo(PaymentMethods, 0); PayPalAccounts.CopyTo(PaymentMethods, CreditCards.Length); ApplePayCards.CopyTo(PaymentMethods, CreditCards.Length + PayPalAccounts.Length); CoinbaseAccounts.CopyTo(PaymentMethods, CreditCards.Length + PayPalAccounts.Length + ApplePayCards.Length); AndroidPayCards.CopyTo(PaymentMethods, CreditCards.Length + PayPalAccounts.Length + ApplePayCards.Length + CoinbaseAccounts.Length); AmexExpressCheckoutCards.CopyTo(PaymentMethods, CreditCards.Length + PayPalAccounts.Length + ApplePayCards.Length + CoinbaseAccounts.Length + AndroidPayCards.Length); VenmoAccounts.CopyTo(PaymentMethods, CreditCards.Length + PayPalAccounts.Length + ApplePayCards.Length + CoinbaseAccounts.Length + AndroidPayCards.Length + AmexExpressCheckoutCards.Length); var addressXmlNodes = node.GetList("addresses/address"); Addresses = new Address[addressXmlNodes.Count]; for (int i = 0; i < addressXmlNodes.Count; i++) { Addresses[i] = new Address(addressXmlNodes[i]); } CustomFields = node.GetDictionary("custom-fields"); }
internal Transaction(NodeWrapper node, BraintreeService service) { Service = service; if (node == null) return; Id = node.GetString("id"); Amount = node.GetDecimal("amount"); AvsErrorResponseCode = node.GetString("avs-error-response-code"); AvsPostalCodeResponseCode = node.GetString("avs-postal-code-response-code"); AvsStreetAddressResponseCode = node.GetString("avs-street-address-response-code"); GatewayRejectionReason = (TransactionGatewayRejectionReason)CollectionUtil.Find( TransactionGatewayRejectionReason.ALL, node.GetString("gateway-rejection-reason"), null ); OrderId = node.GetString("order-id"); Status = (TransactionStatus)CollectionUtil.Find(TransactionStatus.ALL, node.GetString("status"), TransactionStatus.UNRECOGNIZED); List<NodeWrapper> statusNodes = node.GetList("status-history/status-event"); StatusHistory = new StatusEvent[statusNodes.Count]; for (int i = 0; i < statusNodes.Count; i++) { StatusHistory[i] = new StatusEvent(statusNodes[i]); } Type = (TransactionType)CollectionUtil.Find(TransactionType.ALL, node.GetString("type"), TransactionType.UNRECOGNIZED); MerchantAccountId = node.GetString("merchant-account-id"); ProcessorAuthorizationCode = node.GetString("processor-authorization-code"); ProcessorResponseCode = node.GetString("processor-response-code"); ProcessorResponseText = node.GetString("processor-response-text"); PurchaseOrderNumber = node.GetString("purchase-order-number"); RefundedTransactionId = node.GetString("refunded-transaction-id"); #pragma warning disable 0618 RefundId = node.GetString("refund-id"); #pragma warning restore 0618 RefundIds = node.GetStrings("refund-ids/*"); SettlementBatchId = node.GetString("settlement-batch-id"); SubscriptionId = node.GetString("subscription-id"); TaxAmount = node.GetDecimal("tax-amount"); TaxExempt = node.GetBoolean("tax-exempt"); CustomFields = node.GetDictionary("custom-fields"); CreditCard = new CreditCard(node.GetNode("credit-card"), service); Subscription = new Subscription(node.GetNode("subscription"), service); Customer = new Customer(node.GetNode("customer"), service); CurrencyIsoCode = node.GetString("currency-iso-code"); CvvResponseCode = node.GetString("cvv-response-code"); Descriptor = new Descriptor(node.GetNode("descriptor")); BillingAddress = new Address(node.GetNode("billing")); ShippingAddress = new Address(node.GetNode("shipping")); CreatedAt = node.GetDateTime("created-at"); UpdatedAt = node.GetDateTime("updated-at"); AddOns = new List<AddOn>(); foreach (NodeWrapper addOnResponse in node.GetList("add-ons/add-on")) { AddOns.Add(new AddOn(addOnResponse)); } Discounts = new List<Discount>(); foreach (NodeWrapper discountResponse in node.GetList("discounts/discount")) { Discounts.Add(new Discount(discountResponse)); } }
protected internal Transaction(NodeWrapper node, BraintreeGateway gateway) { Gateway = gateway; if (node == null) return; Id = node.GetString("id"); Amount = node.GetDecimal("amount"); AvsErrorResponseCode = node.GetString("avs-error-response-code"); AvsPostalCodeResponseCode = node.GetString("avs-postal-code-response-code"); AvsStreetAddressResponseCode = node.GetString("avs-street-address-response-code"); GatewayRejectionReason = (TransactionGatewayRejectionReason)CollectionUtil.Find( TransactionGatewayRejectionReason.ALL, node.GetString("gateway-rejection-reason"), TransactionGatewayRejectionReason.UNRECOGNIZED ); PaymentInstrumentType = (PaymentInstrumentType)CollectionUtil.Find( PaymentInstrumentType.ALL, node.GetString("payment-instrument-type"), PaymentInstrumentType.UNKNOWN ); Channel = node.GetString("channel"); OrderId = node.GetString("order-id"); Status = (TransactionStatus)CollectionUtil.Find(TransactionStatus.ALL, node.GetString("status"), TransactionStatus.UNRECOGNIZED); EscrowStatus = (TransactionEscrowStatus)CollectionUtil.Find( TransactionEscrowStatus.ALL, node.GetString("escrow-status"), TransactionEscrowStatus.UNRECOGNIZED ); List<NodeWrapper> statusNodes = node.GetList("status-history/status-event"); StatusHistory = new StatusEvent[statusNodes.Count]; for (int i = 0; i < statusNodes.Count; i++) { StatusHistory[i] = new StatusEvent(statusNodes[i]); } Type = (TransactionType)CollectionUtil.Find(TransactionType.ALL, node.GetString("type"), TransactionType.UNRECOGNIZED); MerchantAccountId = node.GetString("merchant-account-id"); ProcessorAuthorizationCode = node.GetString("processor-authorization-code"); ProcessorResponseCode = node.GetString("processor-response-code"); ProcessorResponseText = node.GetString("processor-response-text"); ProcessorSettlementResponseCode = node.GetString("processor-settlement-response-code"); ProcessorSettlementResponseText = node.GetString("processor-settlement-response-text"); AdditionalProcessorResponse = node.GetString("additional-processor-response"); VoiceReferralNumber = node.GetString("voice-referral-number"); PurchaseOrderNumber = node.GetString("purchase-order-number"); Recurring = node.GetBoolean("recurring"); RefundedTransactionId = node.GetString("refunded-transaction-id"); #pragma warning disable 0618 RefundId = node.GetString("refund-id"); #pragma warning restore 0618 RefundIds = node.GetStrings("refund-ids/*"); PartialSettlementTransactionIds = node.GetStrings("partial-settlement-transaction-ids/*"); AuthorizedTransactionId = node.GetString("authorized-transaction-id"); SettlementBatchId = node.GetString("settlement-batch-id"); PlanId = node.GetString("plan-id"); SubscriptionId = node.GetString("subscription-id"); TaxAmount = node.GetDecimal("tax-amount"); TaxExempt = node.GetBoolean("tax-exempt"); CustomFields = node.GetDictionary("custom-fields"); CreditCard = new CreditCard(node.GetNode("credit-card"), gateway); Subscription = new Subscription(node.GetNode("subscription"), gateway); Customer = new Customer(node.GetNode("customer"), gateway); CurrencyIsoCode = node.GetString("currency-iso-code"); CvvResponseCode = node.GetString("cvv-response-code"); Descriptor = new Descriptor(node.GetNode("descriptor")); ServiceFeeAmount = node.GetDecimal("service-fee-amount"); DisbursementDetails = new DisbursementDetails(node.GetNode("disbursement-details")); var paypalNode = node.GetNode("paypal"); if (paypalNode != null) { PayPalDetails = new PayPalDetails(paypalNode); } var coinbaseNode = node.GetNode("coinbase-account"); if (coinbaseNode != null) { CoinbaseDetails = new CoinbaseDetails(coinbaseNode); } var applePayNode = node.GetNode("apple-pay"); if (applePayNode != null) { ApplePayDetails = new ApplePayDetails(applePayNode); } var androidPayNode = node.GetNode("android-pay-card"); if (androidPayNode != null) { AndroidPayDetails = new AndroidPayDetails(androidPayNode); } BillingAddress = new Address(node.GetNode("billing")); ShippingAddress = new Address(node.GetNode("shipping")); CreatedAt = node.GetDateTime("created-at"); UpdatedAt = node.GetDateTime("updated-at"); AddOns = new List<AddOn>(); foreach (var addOnResponse in node.GetList("add-ons/add-on")) { AddOns.Add(new AddOn(addOnResponse)); } Discounts = new List<Discount>(); foreach (var discountResponse in node.GetList("discounts/discount")) { Discounts.Add(new Discount(discountResponse)); } Disputes = new List<Dispute>(); foreach (var dispute in node.GetList("disputes/dispute")) { Disputes.Add(new Dispute(dispute)); } var riskDataNode = node.GetNode("risk-data"); if (riskDataNode != null){ RiskData = new RiskData(riskDataNode); } var threeDSecureInfoNode = node.GetNode("three-d-secure-info"); if (threeDSecureInfoNode != null && !threeDSecureInfoNode.IsEmpty()){ ThreeDSecureInfo = new ThreeDSecureInfo(threeDSecureInfoNode); } }
protected internal Transaction(NodeWrapper node, IBraintreeGateway gateway) { Gateway = gateway; if (node == null) { return; } Id = node.GetString("id"); Amount = node.GetDecimal("amount"); AvsErrorResponseCode = node.GetString("avs-error-response-code"); AvsPostalCodeResponseCode = node.GetString("avs-postal-code-response-code"); AvsStreetAddressResponseCode = node.GetString("avs-street-address-response-code"); GatewayRejectionReason = (TransactionGatewayRejectionReason)CollectionUtil.Find( TransactionGatewayRejectionReason.ALL, node.GetString("gateway-rejection-reason"), TransactionGatewayRejectionReason.UNRECOGNIZED ); PaymentInstrumentType = (PaymentInstrumentType)CollectionUtil.Find( PaymentInstrumentType.ALL, node.GetString("payment-instrument-type"), PaymentInstrumentType.UNKNOWN ); Channel = node.GetString("channel"); OrderId = node.GetString("order-id"); Status = (TransactionStatus)CollectionUtil.Find(TransactionStatus.ALL, node.GetString("status"), TransactionStatus.UNRECOGNIZED); EscrowStatus = (TransactionEscrowStatus)CollectionUtil.Find( TransactionEscrowStatus.ALL, node.GetString("escrow-status"), TransactionEscrowStatus.UNRECOGNIZED ); List <NodeWrapper> statusNodes = node.GetList("status-history/status-event"); StatusHistory = new StatusEvent[statusNodes.Count]; for (int i = 0; i < statusNodes.Count; i++) { StatusHistory[i] = new StatusEvent(statusNodes[i]); } Type = (TransactionType)CollectionUtil.Find(TransactionType.ALL, node.GetString("type"), TransactionType.UNRECOGNIZED); MerchantAccountId = node.GetString("merchant-account-id"); ProcessorAuthorizationCode = node.GetString("processor-authorization-code"); ProcessorResponseCode = node.GetString("processor-response-code"); ProcessorResponseText = node.GetString("processor-response-text"); ProcessorSettlementResponseCode = node.GetString("processor-settlement-response-code"); ProcessorSettlementResponseText = node.GetString("processor-settlement-response-text"); AdditionalProcessorResponse = node.GetString("additional-processor-response"); VoiceReferralNumber = node.GetString("voice-referral-number"); PurchaseOrderNumber = node.GetString("purchase-order-number"); Recurring = node.GetBoolean("recurring"); RefundedTransactionId = node.GetString("refunded-transaction-id"); #pragma warning disable 0618 RefundId = node.GetString("refund-id"); #pragma warning restore 0618 RefundIds = node.GetStrings("refund-ids/*"); PartialSettlementTransactionIds = node.GetStrings("partial-settlement-transaction-ids/*"); AuthorizedTransactionId = node.GetString("authorized-transaction-id"); SettlementBatchId = node.GetString("settlement-batch-id"); PlanId = node.GetString("plan-id"); SubscriptionId = node.GetString("subscription-id"); TaxAmount = node.GetDecimal("tax-amount"); TaxExempt = node.GetBoolean("tax-exempt"); CustomFields = node.GetDictionary("custom-fields"); CreditCard = new CreditCard(node.GetNode("credit-card"), gateway); Subscription = new Subscription(node.GetNode("subscription"), gateway); Customer = new Customer(node.GetNode("customer"), gateway); CurrencyIsoCode = node.GetString("currency-iso-code"); CvvResponseCode = node.GetString("cvv-response-code"); Descriptor = new Descriptor(node.GetNode("descriptor")); ServiceFeeAmount = node.GetDecimal("service-fee-amount"); DisbursementDetails = new DisbursementDetails(node.GetNode("disbursement-details")); var paypalNode = node.GetNode("paypal"); if (paypalNode != null) { PayPalDetails = new PayPalDetails(paypalNode); } var coinbaseNode = node.GetNode("coinbase-account"); if (coinbaseNode != null) { CoinbaseDetails = new CoinbaseDetails(coinbaseNode); } var applePayNode = node.GetNode("apple-pay"); if (applePayNode != null) { ApplePayDetails = new ApplePayDetails(applePayNode); } var androidPayNode = node.GetNode("android-pay-card"); if (androidPayNode != null) { AndroidPayDetails = new AndroidPayDetails(androidPayNode); } var amexExpressCheckoutNode = node.GetNode("amex-express-checkout-card"); if (amexExpressCheckoutNode != null) { AmexExpressCheckoutDetails = new AmexExpressCheckoutDetails(amexExpressCheckoutNode); } var venmoAccountNode = node.GetNode("venmo-account"); if (venmoAccountNode != null) { VenmoAccountDetails = new VenmoAccountDetails(venmoAccountNode); } var usBankAccountNode = node.GetNode("us-bank-account"); if (usBankAccountNode != null) { UsBankAccountDetails = new UsBankAccountDetails(usBankAccountNode); } var idealPaymentNode = node.GetNode("ideal-payment"); if (idealPaymentNode != null) { IdealPaymentDetails = new IdealPaymentDetails(idealPaymentNode); } var visaCheckoutNode = node.GetNode("visa-checkout-card"); if (visaCheckoutNode != null) { VisaCheckoutCardDetails = new VisaCheckoutCardDetails(visaCheckoutNode); } var masterpassNode = node.GetNode("masterpass-card"); if (masterpassNode != null) { MasterpassCardDetails = new MasterpassCardDetails(masterpassNode); } BillingAddress = new Address(node.GetNode("billing")); ShippingAddress = new Address(node.GetNode("shipping")); CreatedAt = node.GetDateTime("created-at"); UpdatedAt = node.GetDateTime("updated-at"); AddOns = new List <AddOn>(); foreach (var addOnResponse in node.GetList("add-ons/add-on")) { AddOns.Add(new AddOn(addOnResponse)); } Discounts = new List <Discount>(); foreach (var discountResponse in node.GetList("discounts/discount")) { Discounts.Add(new Discount(discountResponse)); } Disputes = new List <Dispute>(); foreach (var dispute in node.GetList("disputes/dispute")) { Disputes.Add(new Dispute(dispute)); } AuthorizationAdjustments = new List <AuthorizationAdjustment>(); foreach (var authorizationAdjustment in node.GetList("authorization-adjustments/authorization-adjustment")) { AuthorizationAdjustments.Add(new AuthorizationAdjustment(authorizationAdjustment)); } var riskDataNode = node.GetNode("risk-data"); if (riskDataNode != null) { RiskData = new RiskData(riskDataNode); } var threeDSecureInfoNode = node.GetNode("three-d-secure-info"); if (threeDSecureInfoNode != null && !threeDSecureInfoNode.IsEmpty()) { ThreeDSecureInfo = new ThreeDSecureInfo(threeDSecureInfoNode); } var facilitatedDetailsNode = node.GetNode("facilitated-details"); if (facilitatedDetailsNode != null && !facilitatedDetailsNode.IsEmpty()) { FacilitatedDetails = new FacilitatedDetails(facilitatedDetailsNode); } var facilitatorDetailsNode = node.GetNode("facilitator-details"); if (facilitatorDetailsNode != null && !facilitatorDetailsNode.IsEmpty()) { FacilitatorDetails = new FacilitatorDetails(facilitatorDetailsNode); } }