diff --git a/lib/Payplug/Core/APIRoutes.php b/lib/Payplug/Core/APIRoutes.php index 106e2db..61c526a 100644 --- a/lib/Payplug/Core/APIRoutes.php +++ b/lib/Payplug/Core/APIRoutes.php @@ -121,7 +121,7 @@ public static function setHostedFieldsResource($hostedFieldsUrl){ * @return void */ public static function setHostedFieldsResourceRetrieve($hostedFieldsRetrieveUrl){ - self::$HOSTED_FIELDS_RESOURCE = $hostedFieldsRetrieveUrl; + self::$HOSTED_FIELDS_RESOURCE_RETRIEVE = $hostedFieldsRetrieveUrl; } /** diff --git a/lib/Payplug/Responses/HostedFieldTransactionResource.php b/lib/Payplug/Responses/HostedFieldTransactionResource.php index 54f08f0..6711754 100644 --- a/lib/Payplug/Responses/HostedFieldTransactionResource.php +++ b/lib/Payplug/Responses/HostedFieldTransactionResource.php @@ -52,6 +52,13 @@ class HostedFieldTransactionResource public function __construct($data = []) { + // Accept raw JSON string + if (is_string($data)) { + $decoded = json_decode($data, true); + if (json_last_error() === JSON_ERROR_NONE) { + $data = $decoded; + } + } if (empty($data) || !is_array($data)) { return; } @@ -63,10 +70,11 @@ public function __construct($data = []) $this->currency = !empty($payment_data['CURRENCY']) ? $payment_data['CURRENCY'] : 'EUR'; $this->created_at = !empty($payment_data['DATE']) ? $payment_data['DATE'] : null; $this->description = !empty($payment_data['DESCRIPTION']) ? $payment_data['DESCRIPTION'] : ''; - $this->is_paid = !empty($payment_data['DATE']) ? $payment_data['DATE'] : false; + $this->is_paid = $data['EXECCODE']=='0000'; $this->paid_at = !empty($payment_data['DATE']) ? $payment_data['DATE'] : null; $this->is_3ds = !empty($payment_data['3DSECURE']) ? $payment_data['3DSECURE'] : false; $this->card = [ + 'id'=> null, 'last4' => null, 'exp_month' => null, 'exp_year' => null,