/** * @param StripeCharge $stripeCharge * * @return Charge */ public function transform(StripeCharge $stripeCharge) { $charge = new Charge(); $createdAt = new \DateTime($stripeCharge['created']); $charge->setId($stripeCharge['id']); $charge->setCreatedAt($createdAt); $charge->setDescription($stripeCharge['description']); $charge->setCurrency($stripeCharge['currency']); $charge->setLiveMode($stripeCharge['livemode']); $charge->setMetadata($stripeCharge['metadata']->__toArray()); $charge->setAmount(StripeFactory::convertStripeAmountToFloat($stripeCharge['amount'])); $charge->setBalanceTransaction($stripeCharge['balance_transaction']); $charge->setCaptured($stripeCharge['captured']); $charge->setCustomerId($stripeCharge['customer']); $charge->setDescription($stripeCharge['description']); $charge->setFailureCode($stripeCharge['failure_code']); $charge->setFailureMessage($stripeCharge['failure_message']); $charge->setPaid($stripeCharge['paid']); $charge->setReceiptEmail($stripeCharge['receipt_email']); $charge->setReceiptNumber($stripeCharge['receipt_number']); $charge->setRefunded($stripeCharge['refunded']); $charge->setRefundedAmount(StripeFactory::convertStripeAmountToFloat($stripeCharge['amount_refunded'])); $charge->setStatus($stripeCharge['status']); return $charge; }
/** * @covers StripeFactory::convertStripeAmountToFloat */ public function testAmountReverseConverter() { $this->assertEquals(0.01, StripeFactory::convertStripeAmountToFloat(1)); $this->assertEquals(0.1, StripeFactory::convertStripeAmountToFloat(10)); $this->assertEquals(1, StripeFactory::convertStripeAmountToFloat(100)); $this->assertEquals(10, StripeFactory::convertStripeAmountToFloat(1000)); $this->assertEquals(0.01, StripeFactory::convertStripeAmountToFloat(1)); $this->assertEquals(0.12, StripeFactory::convertStripeAmountToFloat(12)); $this->assertEquals(1.23, StripeFactory::convertStripeAmountToFloat(123)); $this->assertEquals(12.34, StripeFactory::convertStripeAmountToFloat(1234)); $this->assertEquals(12345678.9, StripeFactory::convertStripeAmountToFloat(1234567890)); }
/** * @param StripeCustomer $stripeCustomer * * @return Customer */ public function transform(StripeCustomer $stripeCustomer) { $customer = new Customer(); $createdAt = new \DateTime($stripeCustomer['created']); $customer->setId($stripeCustomer['id']); $customer->setCreatedAt($createdAt); $customer->setDescription($stripeCustomer['description']); $customer->setEmail($stripeCustomer['email']); $customer->setAccountBalance(StripeFactory::convertStripeAmountToFloat($stripeCustomer['account_balance'])); $customer->setCurrency($stripeCustomer['currency']); $customer->setDelinquent($stripeCustomer['delinquent']); $customer->setLiveMode($stripeCustomer['livemode']); $customer->setMetadata($stripeCustomer['metadata']->__toArray()); return $customer; }
/** * @param $amount * * @return float */ public function stripeToFloat($amount) { return StripeFactory::convertStripeAmountToFloat($amount); }