/** * Create a payment using a previously obtained * credit card id. The corresponding credit * card is used as the funding instrument. * * @param string $creditCardId credit card id * @param string $total Payment amount with 2 decimal points * @param string $currency 3 letter ISO code for currency * @param string $paymentDesc */ function makePaymentUsingCC($creditCardId, $total, $currency, $paymentDesc) { $ccToken = new CreditCardToken(); $ccToken->setCreditCardId($creditCardId); $fi = new FundingInstrument(); $fi->setCreditCardToken($ccToken); $payer = new Payer(); $payer->setPaymentMethod("credit_card"); $payer->setFundingInstruments(array($fi)); // Specify the payment amount. $amount = new Amount(); $amount->setCurrency($currency); $amount->setTotal($total); // ###Transaction // A transaction defines the contract of a // payment - what is the payment for and who // is fulfilling it. Transaction is created with // a `Payee` and `Amount` types $transaction = new Transaction(); $transaction->setAmount($amount); $transaction->setDescription($paymentDesc); $payment = new Payment(); $payment->setIntent("sale"); $payment->setPayer($payer); $payment->setTransactions(array($transaction)); $payment->create(new Paypalinit()); return $payment; }
public static function createFundingInstrument() { $fi = new FundingInstrument(); $fi->setCreditCard(CreditCardTest::createCreditCard()); $fi->setCreditCardToken(CreditCardTokenTest::createCreditCardToken()); return $fi; }
public function createPayer($creditCardId, $userId) { $ccToken = new CreditCardToken(); $ccToken->setCreditCardId($creditCardId)->setPayerId($userId); $fi = new FundingInstrument(); $fi->setCreditCardToken($ccToken); //$payerInfo = new PayerInfo(); //$payerInfo->setPayerId($userId); $payer = new Payer(); $payer->setPaymentMethod("credit_card")->setFundingInstruments(array($fi)); return $payer; }
use PayPal\Api\Payer; use PayPal\Api\Payment; use PayPal\Api\FundingInstrument; use PayPal\Api\Transaction; use PayPal\Api\CreditCard; // ### Credit card token // Saved credit card id from a previous call to // CreateCreditCard.php $creditCardToken = new CreditCardToken(); $creditCardToken->setCreditCardId($card->getId()); // ### FundingInstrument // A resource representing a Payer's funding instrument. // For stored credit card payments, set the CreditCardToken // field on this object. $fi = new FundingInstrument(); $fi->setCreditCardToken($creditCardToken); // ### Payer // A resource representing a Payer that funds a payment // For stored credit card payments, set payment method // to 'credit_card'. $payer = new Payer(); $payer->setPaymentMethod("credit_card")->setFundingInstruments(array($fi)); // ### Itemized information // (Optional) Lets you specify item wise // information $item1 = new Item(); $item1->setName('Ground Coffee 40 oz')->setCurrency('USD')->setQuantity(1)->setPrice(7.5); $item2 = new Item(); $item2->setName('Granola bars')->setCurrency('USD')->setQuantity(5)->setPrice(2); $itemList = new ItemList(); $itemList->setItems(array($item1, $item2));
public function doSaleAPI($creditCardId, $total) { $apiContext = new ApiContext(new OAuthTokenCredential(self::CLIENT_ID, self::SECRET)); // $card = new CreditCard(); // $card->setType($payment_type); // $card->setNumber($card_number); // $card->setExpire_month($exp_month); // $card->setExpire_year($exp_year); // $card->setCvv2($csc); // $card->setFirst_name($first_name); // $card->setLast_name($last_name); $creditCardToken = new CreditCardToken(); $creditCardToken->setCreditCardId($creditCardId); $fundingInstrument = new FundingInstrument(); $fundingInstrument->setCreditCardToken($creditCardToken); $payer = new Payer(); $payer->setPayment_method("credit_card"); $payer->setFunding_instruments(array($fundingInstrument)); $amount = new Amount(); $amount->setCurrency("USD"); $amount->setTotal($total); $transaction = new Transaction(); $transaction->setAmount($amount); $transaction->setDescription("creating a direct payment with credit card"); $payment = new Payment(); $payment->setIntent("sale"); $payment->setPayer($payer); $payment->setTransactions(array($transaction)); try { $payment->create($apiContext); //$card->create($apiContext); } catch (\PPConnectionException $ex) { echo "Exception:" . $ex->getMessage() . PHP_EOL; var_dump($ex->getData()); exit(1); } return $payment->getId(); }
public function newPaymentFromStored($creditCardToken, array $items, Details $shippingDetails, $paymentIntent = PaymentConst::INTENT_SALE) { $apiContext = $this->connectionService->getApiContext(); $dispatcher = $this->connectionService->getDispatcher(); $dispatcher->dispatch(PaymentEvent::NEW_SETUP); $creditCard = $this->getDetails($creditCardToken); $creditCardToken = new CreditCardToken(); $creditCardToken->setCreditCardId($creditCard->getId()); $fi = new FundingInstrument(); $fi->setCreditCardToken($creditCardToken); $payment = PaymentService::create($items, $shippingDetails, $paymentIntent, PaymentConst::METHOD_CREDIT_CARD, $fi); $paymentEvent = new PaymentEvent($payment, PaymentConst::METHOD_CREDIT_CARD); $dispatcher->dispatch(PaymentEvent::NEW_START, $paymentEvent); $result = $payment->create($apiContext); $paymentEvent = new PaymentEvent($result, PaymentConst::METHOD_CREDIT_CARD); $dispatcher->dispatch(PaymentEvent::NEW_END, $paymentEvent); return $result; }