0

I just have a simple question, if i want my website to allow users to filling there credit card information rather than going to paypal for payment, do i need to pay for this service?

public ActionResult Checkout() { //create and item for which you are taking payment //if you need to add more items in the list //Then you will need to create multiple item objects or use some loop to instantiate object Item item = new Item(); item.name = "Demo Item"; item.currency = "USD"; item.price = "5"; item.quantity = "1"; item.sku = "sku"; //Now make a List of Item and add the above item to it //you can create as many items as you want and add to this list List<Item> itms = new List<Item>(); itms.Add(item); ItemList itemList = new ItemList(); itemList.items = itms; //Address for the payment Address billingAddress = new Address(); billingAddress.city = "NewYork"; billingAddress.country_code = "US"; billingAddress.line1 = "23rd street kew gardens"; billingAddress.postal_code = "43210"; billingAddress.state = "NY"; //Now Create an object of credit card and add above details to it //Please replace your credit card details over here which you got from paypal CreditCard crdtCard = new CreditCard(); crdtCard.billing_address = billingAddress; crdtCard.cvv2 = "874"; //card cvv2 number crdtCard.expire_month = 7; //card expire date crdtCard.expire_year = 2025; //card expire year crdtCard.first_name = "Aman"; crdtCard.last_name = "Thakur"; crdtCard.number = "4137354036661279"; //enter your credit card number here crdtCard.type = "visa"; //credit card type here paypal allows 4 types // Specify details of your payment amount. Details details = new Details(); details.shipping = "1"; details.subtotal = "5"; details.tax = "1"; // Specify your total payment amount and assign the details object Amount amnt = new Amount(); amnt.currency = "USD"; // Total = shipping tax + subtotal. amnt.total = "7"; amnt.details = details; // Now make a transaction object and assign the Amount object Transaction tran = new Transaction(); tran.amount = amnt; tran.description = "Description about the payment amount."; tran.item_list = itemList; tran.invoice_number = Guid.NewGuid().ToString().Replace("-", ""); // Now, we have to make a list of transaction and add the transactions object // to this list. You can create one or more object as per your requirements List<Transaction> transactions = new List<Transaction>(); transactions.Add(tran); // Now we need to specify the FundingInstrument of the Payer // for credit card payments, set the CreditCard which we made above FundingInstrument fundInstrument = new FundingInstrument(); fundInstrument.credit_card = crdtCard; // The Payment creation API requires a list of FundingIntrument List<FundingInstrument> fundingInstrumentList = new List<FundingInstrument>(); fundingInstrumentList.Add(fundInstrument); // Now create Payer object and assign the fundinginstrument list to the object Payer payr = new Payer(); payr.funding_instruments = fundingInstrumentList; payr.payment_method = "credit_card"; // finally create the payment object and assign the payer object & transaction list to it Payment pymnt = new Payment(); pymnt.intent = "sale"; pymnt.payer = payr; pymnt.transactions = transactions; try { //getting context from the paypal //basically we are sending the clientID and clientSecret key in this function //to the get the context from the paypal API to make the payment //for which we have created the object above. //Basically, apiContext object has a accesstoken which is sent by the paypal //to authenticate the payment to facilitator account. //An access token could be an alphanumeric string APIContext apiContext = PayPalConfiguration.GetAPIContext(); //Create is a Payment class function which actually sends the payment details //to the paypal API for the payment. The function is passed with the ApiContext //which we received above. Payment createdPayment = pymnt.Create(apiContext); //if the createdPayment.state is "approved" it means the payment was successful else not if (createdPayment.state.ToLower() != "approved") { return View("FailureView"); } } catch (PayPal.PayPalException ex) { return View("FailureView"); } return View(); } 

I implemented this code and the sandbox is retrieving the payments, so this works, but my question is that do i need to pay paypal for this service allowing users to insert there card information and submit?

It says that Website Payment Pro or something.

5
  • Does your bank allow you to process credit card data? Some banks have API that allow business customers to submit credit card payments. Commented Jun 16, 2020 at 15:56
  • @jdweng, yes i was told that too at a monthly cost, but is it right you have to pay $30 a month to use direct payments using paypal api Commented Jun 16, 2020 at 15:57
  • just wanted to know if direct payments using paypal api is free or payed for? Commented Jun 16, 2020 at 15:58
  • If its paid for then i will just use express checkout Commented Jun 16, 2020 at 15:59
  • See : paypal.com/en/webapps/mpp/…. Commented Jun 16, 2020 at 16:05

1 Answer 1

1

Gateways like Payments Pro, Payflow Pro, or the newer and better Braintree Payments gateway can certainly options, with advanced features (which you may not need)

Depending on your needs, you may be satisfied with the newest JavaScript PayPal Checkout, which has a black Debit/Credit card button that expands.

Sign up to request clarification or add additional context in comments.

1 Comment

Thx @Preston does the credit / debit button only allow PayPal accounts

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.