Exemple #1
0
 public function testAmountRefundedAccessors()
 {
     $charge = new Charge('charge');
     $charge->setAmountRefunded(new Money(5000.0, 'JPY'));
     $this->assertEquals(new Money(5000.0, 'JPY'), $charge->getAmountRefunded());
     $charge->setAmountRefunded(300.5, 'USD');
     $this->assertEquals(new Money(300.5, 'USD'), $charge->getAmountRefunded());
 }
Exemple #2
0
 /**
  * {@inheritdoc}
  */
 public function create(array $data)
 {
     $charge = new Charge($data['id']);
     $charge->setCreated($this->dateTimeUtil->createDateTimeByUnixTime($data['created']))->setPaid($data['paid'])->setCaptured($data['captured'])->setAmount(new Money(floatval($data['amount']), $data['currency']))->setSource($data['source'] ?: null)->setRefunded($data['refunded'])->setAmountRefunded(new Money(floatval($data['amount_refunded']), $data['currency']))->setDispute($data['dispute']);
     foreach ($data['refunds'] as $refund) {
         $charge->addRefund($refund);
     }
     return $charge;
 }