Subiendo proyecto completo sin restricciones de git ignore

This commit is contained in:
Jose Sanchez
2023-08-17 11:44:02 -04:00
parent a0d4f5ba3b
commit 20f1c60600
19921 changed files with 2509159 additions and 45 deletions

View File

@@ -0,0 +1,32 @@
<?php
namespace Iyzipay;
class ApiResource
{
private static $httpClient;
private $rawResult;
public static function httpClient()
{
if (!self::$httpClient) {
self::$httpClient = DefaultHttpClient::create();
}
return self::$httpClient;
}
public static function setHttpClient($httpClient)
{
self::$httpClient = $httpClient;
}
public function getRawResult()
{
return $this->rawResult;
}
public function setRawResult($rawResult)
{
$this->rawResult = $rawResult;
}
}

View File

@@ -0,0 +1,11 @@
<?php
namespace Iyzipay;
abstract class BaseModel implements JsonConvertible, RequestStringConvertible
{
public function toJsonString()
{
return JsonBuilder::jsonEncode($this->getJsonObject());
}
}

View File

@@ -0,0 +1,8 @@
<?php
namespace Iyzipay;
class Constants
{
const SINGLE_INSTALLMENT = 1;
}

View File

@@ -0,0 +1,13 @@
<?php
namespace Iyzipay;
class Curl
{
public function exec($url, $options)
{
$ch = curl_init($url);
curl_setopt_array($ch, $options);
return curl_exec($ch);
}
}

View File

@@ -0,0 +1,79 @@
<?php
namespace Iyzipay;
class DefaultHttpClient implements HttpClient
{
private $curl;
public function __construct($curl = null)
{
if (!$curl) {
$curl = new Curl();
}
$this->curl = $curl;
}
public static function create($curl = null)
{
return new DefaultHttpClient($curl);
}
public function get($url)
{
return $this->curl->exec($url, array(
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_VERBOSE => false,
CURLOPT_HEADER => false
));
}
public function getV2($url, $header)
{
return $this->curl->exec($url, array(
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_VERBOSE => false,
CURLOPT_HEADER => false,
CURLOPT_HTTPHEADER => $header
));
}
public function post($url, $header, $content)
{
return $this->curl->exec($url, array(
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $content,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_VERBOSE => false,
CURLOPT_HEADER => false,
CURLOPT_HTTPHEADER => $header
));
}
public function put($url, $header, $content)
{
return $this->curl->exec($url, array(
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => $content,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_VERBOSE => false,
CURLOPT_HEADER => false,
CURLOPT_HTTPHEADER => $header
));
}
public function delete($url, $header, $content = null)
{
return $this->curl->exec($url, array(
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => $content,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_VERBOSE => false,
CURLOPT_HEADER => false,
CURLOPT_HTTPHEADER => $header
));
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay;
class FileBase64Encoder
{
public static function encode($filePath)
{
$imageBinary = fread(fopen($filePath, "r"), filesize($filePath));
$base64Binary = base64_encode($imageBinary);
return $base64Binary;
}
}

View File

@@ -0,0 +1,12 @@
<?php
namespace Iyzipay;
class HashGenerator
{
public static function generateHash($apiKey, $secretKey, $randomString, Request $request)
{
$hashStr = $apiKey . $randomString . $secretKey . $request->toPKIRequestString();
return base64_encode(sha1($hashStr, true));
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay;
interface HttpClient
{
public function get($url);
public function getV2($url, $header);
public function post($url, $header, $content);
public function put($url, $header, $content);
public function delete($url, $header, $content = null);
}

View File

@@ -0,0 +1,46 @@
<?php
namespace Iyzipay;
class IyziAuthV2Generator
{
public static function generateAuthContent($uri, $apiKey, $secretKey, $randomString, Request $request = null)
{
$hashStr = "apiKey:" . $apiKey . "&randomKey:" . $randomString ."&signature:" . self::getHmacSHA256Signature($uri, $secretKey, $randomString, $request);
$hashStr = base64_encode($hashStr);
return $hashStr;
}
public static function getHmacSHA256Signature($uri, $secretKey, $randomString, Request $request = null)
{
$dataToEncrypt = $randomString . self::getPayload($uri, $request);
$hash = hash_hmac('sha256', $dataToEncrypt, $secretKey, true);
$token = bin2hex($hash);
return $token;
}
public static function getPayload($uri, Request $request = null)
{
$startNumber = strpos($uri, '/v2');
$endNumber = strpos($uri, '?');
if(strpos($uri,"subscription") || strpos($uri,"ucs")){
$endNumber = strlen($uri);
if(strpos($uri,'?')){
$endNumber = strpos($uri, '?');
}
}
$endNumber-= $startNumber;
$uriPath = substr($uri, $startNumber, $endNumber);
if (!empty($request) && $request->toJsonString() != '[]')
$uriPath = $uriPath.$request->toJsonString();
return $uriPath;
}
}

View File

@@ -0,0 +1,126 @@
<?php
namespace Iyzipay;
class IyzipayResource extends ApiResource
{
private $status;
private $errorCode;
private $errorMessage;
private $errorGroup;
private $locale;
private $systemTime;
private $conversationId;
protected static function getHttpHeaders(Request $request, Options $options)
{
$header = array(
"Accept: application/json",
"Content-type: application/json",
);
$rnd = uniqid();
array_push($header, "Authorization: " . self::prepareAuthorizationString($request, $options, $rnd));
array_push($header, "x-iyzi-rnd: " . $rnd);
array_push($header, "x-iyzi-client-version: " . "iyzipay-php-2.0.53");
return $header;
}
protected static function getHttpHeadersV2($uri, Request $request = null, Options $options)
{
$header = array(
"Accept: application/json",
"Content-type: application/json",
);
$rnd = uniqid();
array_push($header, "Authorization: " . self::prepareAuthorizationStringV2($uri, $request, $options, $rnd));
array_push($header, "x-iyzi-client-version: " . "iyzipay-php-2.0.43");
return $header;
}
protected static function prepareAuthorizationString(Request $request, Options $options, $rnd)
{
$authContent = HashGenerator::generateHash($options->getApiKey(), $options->getSecretKey(), $rnd, $request);
return vsprintf("IYZWS %s:%s", array($options->getApiKey(), $authContent));
}
protected static function prepareAuthorizationStringV2($uri, Request $request = null, Options $options, $rnd)
{
$hash = IyziAuthV2Generator::generateAuthContent($uri, $options->getApiKey(), $options->getSecretKey(), $rnd, $request);
return 'IYZWSv2'.' '.$hash;
}
public function getStatus()
{
return $this->status;
}
public function setStatus($status)
{
$this->status = $status;
}
public function getErrorCode()
{
return $this->errorCode;
}
public function setErrorCode($errorCode)
{
$this->errorCode = $errorCode;
}
public function getErrorMessage()
{
return $this->errorMessage;
}
public function setErrorMessage($errorMessage)
{
$this->errorMessage = $errorMessage;
}
public function getErrorGroup()
{
return $this->errorGroup;
}
public function setErrorGroup($errorGroup)
{
$this->errorGroup = $errorGroup;
}
public function getLocale()
{
return $this->locale;
}
public function setLocale($locale)
{
$this->locale = $locale;
}
public function getSystemTime()
{
return $this->systemTime;
}
public function setSystemTime($systemTime)
{
$this->systemTime = $systemTime;
}
public function getConversationId()
{
return $this->conversationId;
}
public function setConversationId($conversationId)
{
$this->conversationId = $conversationId;
}
}

View File

@@ -0,0 +1,87 @@
<?php
namespace Iyzipay;
class JsonBuilder
{
private $json;
function __construct($json)
{
$this->json = $json;
}
public static function create()
{
return new JsonBuilder(array());
}
public static function fromJsonObject($json)
{
return new JsonBuilder($json);
}
/**
* @param $key
* @param $value
* @return JsonBuilder
*/
public function add($key, $value = null)
{
if (isset($value)) {
if ($value instanceof JsonConvertible) {
$this->json[$key] = $value->getJsonObject();
} else {
$this->json[$key] = $value;
}
}
return $this;
}
/**
* @param $key
* @param $value
* @return JsonBuilder
*/
public function addPrice($key, $value = null)
{
if (isset($value)) {
$this->json[$key] = RequestFormatter::formatPrice($value);
}
return $this;
}
/**
* @param $key
* @param array $array
* @return JsonBuilder
*/
public function addArray($key, array $array = null)
{
if (isset($array)) {
foreach ($array as $index => $value) {
if ($value instanceof JsonConvertible) {
$this->json[$key][$index] = $value->getJsonObject();
} else {
$this->json[$key][$index] = $value;
}
}
}
return $this;
}
public function getObject()
{
return $this->json;
}
public static function jsonEncode($jsonObject)
{
return json_encode($jsonObject);
}
public static function jsonDecode($rawResult)
{
return json_decode($rawResult);
}
}

View File

@@ -0,0 +1,10 @@
<?php
namespace Iyzipay;
interface JsonConvertible
{
public function getJsonObject();
public function toJsonString();
}

View File

@@ -0,0 +1,88 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class Address extends BaseModel
{
private $address;
private $zipCode;
private $contactName;
private $city;
private $country;
public function getAddress()
{
return $this->address;
}
public function setAddress($address)
{
$this->address = $address;
}
public function getZipCode()
{
return $this->zipCode;
}
public function setZipCode($zipCode)
{
$this->zipCode = $zipCode;
}
public function getContactName()
{
return $this->contactName;
}
public function setContactName($contactName)
{
$this->contactName = $contactName;
}
public function getCity()
{
return $this->city;
}
public function setCity($city)
{
$this->city = $city;
}
public function getCountry()
{
return $this->country;
}
public function setCountry($country)
{
$this->country = $country;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("address", $this->getAddress())
->add("zipCode", $this->getZipCode())
->add("contactName", $this->getContactName())
->add("city", $this->getCity())
->add("country", $this->getCountry())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("address", $this->getAddress())
->append("zipCode", $this->getZipCode())
->append("contactName", $this->getContactName())
->append("city", $this->getCity())
->append("country", $this->getCountry())
->getRequestString();
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\IyzipayResourceMapper;
use Iyzipay\Options;
class ApiTest extends IyzipayResource
{
public static function retrieve(Options $options)
{
$rawResult = parent::httpClient()->get($options->getBaseUrl() . "/payment/test");
return IyzipayResourceMapper::create($rawResult)->jsonDecode()->mapResource(new IyzipayResource());
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\ApmMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateApmInitializeRequest;
use Iyzipay\Request\RetrieveApmRequest;
class Apm extends ApmResource
{
public static function create(CreateApmInitializeRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/apm/initialize", parent::getHttpHeaders($request, $options), $request->toJsonString());
return ApmMapper::create($rawResult)->jsonDecode()->mapApm(new Apm());
}
public static function retrieve(RetrieveApmRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/apm/retrieve", parent::getHttpHeaders($request, $options), $request->toJsonString());
return ApmMapper::create($rawResult)->jsonDecode()->mapApm(new Apm());
}
}

View File

@@ -0,0 +1,262 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
class ApmResource extends IyzipayResource
{
private $redirectUrl;
private $price;
private $paidPrice;
private $paymentId;
private $merchantCommissionRate;
private $merchantCommissionRateAmount;
private $iyziCommissionRateAmount;
private $iyziCommissionFee;
private $basketId;
private $currency;
private $paymentItems;
private $phase;
private $accountHolderName;
private $accountNumber;
private $bankName;
private $bankCode;
private $bic;
private $paymentPurpose;
private $iban;
private $countryCode;
private $apm;
private $mobilePhone;
private $paymentStatus;
public function getRedirectUrl()
{
return $this->redirectUrl;
}
public function setRedirectUrl($redirectUrl)
{
$this->redirectUrl = $redirectUrl;
}
public function getPrice()
{
return $this->price;
}
public function setPrice($price)
{
$this->price = $price;
}
public function getPaidPrice()
{
return $this->paidPrice;
}
public function setPaidPrice($paidPrice)
{
$this->paidPrice = $paidPrice;
}
public function getPaymentId()
{
return $this->paymentId;
}
public function setPaymentId($paymentId)
{
$this->paymentId = $paymentId;
}
public function getMerchantCommissionRate()
{
return $this->merchantCommissionRate;
}
public function setMerchantCommissionRate($merchantCommissionRate)
{
$this->merchantCommissionRate = $merchantCommissionRate;
}
public function getMerchantCommissionRateAmount()
{
return $this->merchantCommissionRateAmount;
}
public function setMerchantCommissionRateAmount($merchantCommissionRateAmount)
{
$this->merchantCommissionRateAmount = $merchantCommissionRateAmount;
}
public function getIyziCommissionRateAmount()
{
return $this->iyziCommissionRateAmount;
}
public function setIyziCommissionRateAmount($iyziCommissionRateAmount)
{
$this->iyziCommissionRateAmount = $iyziCommissionRateAmount;
}
public function getIyziCommissionFee()
{
return $this->iyziCommissionFee;
}
public function setIyziCommissionFee($iyziCommissionFee)
{
$this->iyziCommissionFee = $iyziCommissionFee;
}
public function getBasketId()
{
return $this->basketId;
}
public function setBasketId($basketId)
{
$this->basketId = $basketId;
}
public function getCurrency()
{
return $this->currency;
}
public function setCurrency($currency)
{
$this->currency = $currency;
}
public function getPaymentItems()
{
return $this->paymentItems;
}
public function setPaymentItems($paymentItems)
{
$this->paymentItems = $paymentItems;
}
public function getPhase()
{
return $this->phase;
}
public function setPhase($phase)
{
$this->phase = $phase;
}
public function getAccountHolderName()
{
return $this->accountHolderName;
}
public function setAccountHolderName($accountHolderName)
{
$this->accountHolderName = $accountHolderName;
}
public function getAccountNumber()
{
return $this->accountNumber;
}
public function setAccountNumber($accountNumber)
{
$this->accountNumber = $accountNumber;
}
public function getBankName()
{
return $this->bankName;
}
public function setBankName($bankName)
{
$this->bankName = $bankName;
}
public function getBankCode()
{
return $this->bankCode;
}
public function setBankCode($bankCode)
{
$this->bankCode = $bankCode;
}
public function getBic()
{
return $this->bic;
}
public function setBic($bic)
{
$this->bic = $bic;
}
public function getPaymentPurpose()
{
return $this->paymentPurpose;
}
public function setPaymentPurpose($paymentPurpose)
{
$this->paymentPurpose = $paymentPurpose;
}
public function getIban()
{
return $this->iban;
}
public function setIban($iban)
{
$this->iban = $iban;
}
public function getCountryCode()
{
return $this->countryCode;
}
public function setCountryCode($countryCode)
{
$this->countryCode = $countryCode;
}
public function getApm()
{
return $this->apm;
}
public function setApm($apm)
{
$this->apm = $apm;
}
public function getMobilePhone()
{
return $this->mobilePhone;
}
public function setMobilePhone($mobilePhone)
{
$this->mobilePhone = $mobilePhone;
}
public function getPaymentStatus()
{
return $this->paymentStatus;
}
public function setPaymentStatus($paymentStatus)
{
$this->paymentStatus = $paymentStatus;
}
}

View File

@@ -0,0 +1,11 @@
<?php
namespace Iyzipay\Model;
class ApmType
{
const SOFORT = "SOFORT";
const IDEAL = "IDEAL";
const QIWI = "QIWI";
const GIROPAY = "GIROPAY";
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\ApprovalMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateApprovalRequest;
class Approval extends IyzipayResource
{
private $paymentTransactionId;
public static function create(CreateApprovalRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/item/approve", parent::getHttpHeaders($request, $options), $request->toJsonString());
return ApprovalMapper::create($rawResult)->jsonDecode()->mapApproval(new Approval());
}
public function getPaymentTransactionId()
{
return $this->paymentTransactionId;
}
public function setPaymentTransactionId($paymentTransactionId)
{
$this->paymentTransactionId = $paymentTransactionId;
}
}

View File

@@ -0,0 +1,73 @@
<?php
namespace Iyzipay\Model;
class BankTransfer
{
private $subMerchantKey;
private $iban;
private $contactName;
private $contactSurname;
private $legalCompanyTitle;
private $marketplaceSubMerchantType;
public function getSubMerchantKey()
{
return $this->subMerchantKey;
}
public function setSubMerchantKey($subMerchantKey)
{
$this->subMerchantKey = $subMerchantKey;
}
public function getIban()
{
return $this->iban;
}
public function setIban($iban)
{
$this->iban = $iban;
}
public function getContactName()
{
return $this->contactName;
}
public function setContactName($contactName)
{
$this->contactName = $contactName;
}
public function getContactSurname()
{
return $this->contactSurname;
}
public function setContactSurname($contactSurname)
{
$this->contactSurname = $contactSurname;
}
public function getLegalCompanyTitle()
{
return $this->legalCompanyTitle;
}
public function setLegalCompanyTitle($legalCompanyTitle)
{
$this->legalCompanyTitle = $legalCompanyTitle;
}
public function getMarketplaceSubMerchantType()
{
return $this->marketplaceSubMerchantType;
}
public function setMarketplaceSubMerchantType($marketplaceSubMerchantType)
{
$this->marketplaceSubMerchantType = $marketplaceSubMerchantType;
}
}

View File

@@ -0,0 +1,50 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\BasicBkmMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveBkmRequest;
class BasicBkm extends BasicPaymentResource
{
private $token;
private $callbackUrl;
private $paymentStatus;
public static function retrieve(RetrieveBkmRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/bkm/auth/detail/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicBkmMapper::create($rawResult)->jsonDecode()->mapBasicBkm(new BasicBkm());
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getCallbackUrl()
{
return $this->callbackUrl;
}
public function setCallbackUrl($callbackUrl)
{
$this->callbackUrl = $callbackUrl;
}
public function getPaymentStatus()
{
return $this->paymentStatus;
}
public function setPaymentStatus($paymentStatus)
{
$this->paymentStatus = $paymentStatus;
}
}

View File

@@ -0,0 +1,40 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\BasicBkmInitializeMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateBasicBkmInitializeRequest;
class BasicBkmInitialize extends IyzipayResource
{
private $htmlContent;
private $token;
public static function create(CreateBasicBkmInitializeRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/bkm/initialize/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicBkmInitializeMapper::create($rawResult)->jsonDecode()->mapBasicBkmInitialize(new BasicBkmInitialize());
}
public function getHtmlContent()
{
return $this->htmlContent;
}
public function setHtmlContent($htmlContent)
{
$this->htmlContent = $htmlContent;
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\BasicPaymentMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateBasicPaymentRequest;
class BasicPayment extends BasicPaymentResource
{
public static function create(CreateBasicPaymentRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/auth/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicPaymentMapper::create($rawResult)->jsonDecode()->mapBasicPayment(new BasicPayment());
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\BasicPaymentPostAuthMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreatePaymentPostAuthRequest;
class BasicPaymentPostAuth extends BasicPaymentResource
{
public static function create(CreatePaymentPostAuthRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/postauth/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicPaymentPostAuthMapper::create($rawResult)->jsonDecode()->mapBasicPaymentPostAuth(new BasicPaymentPostAuth());
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\BasicPaymentPreAuthMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateBasicPaymentRequest;
class BasicPaymentPreAuth extends BasicPaymentResource
{
public static function create(CreateBasicPaymentRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/preauth/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicPaymentPreAuthMapper::create($rawResult)->jsonDecode()->mapBasicPaymentPreAuth(new BasicPaymentPreAuth());
}
}

View File

@@ -0,0 +1,207 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
class BasicPaymentResource extends IyzipayResource
{
private $price;
private $paidPrice;
private $installment;
private $currency;
private $paymentId;
private $merchantCommissionRate;
private $merchantCommissionRateAmount;
private $iyziCommissionFee;
private $cardType;
private $cardAssociation;
private $cardFamily;
private $cardToken;
private $cardUserKey;
private $binNumber;
private $paymentTransactionId;
private $authCode;
private $connectorName;
private $phase;
public function getPrice()
{
return $this->price;
}
public function setPrice($price)
{
$this->price = $price;
}
public function getPaidPrice()
{
return $this->paidPrice;
}
public function setPaidPrice($paidPrice)
{
$this->paidPrice = $paidPrice;
}
public function getInstallment()
{
return $this->installment;
}
public function setInstallment($installment)
{
$this->installment = $installment;
}
public function getCurrency()
{
return $this->currency;
}
public function setCurrency($currency)
{
$this->currency = $currency;
}
public function getPaymentId()
{
return $this->paymentId;
}
public function setPaymentId($paymentId)
{
$this->paymentId = $paymentId;
}
public function getMerchantCommissionRate()
{
return $this->merchantCommissionRate;
}
public function setMerchantCommissionRate($merchantCommissionRate)
{
$this->merchantCommissionRate = $merchantCommissionRate;
}
public function getMerchantCommissionRateAmount()
{
return $this->merchantCommissionRateAmount;
}
public function setMerchantCommissionRateAmount($merchantCommissionRateAmount)
{
$this->merchantCommissionRateAmount = $merchantCommissionRateAmount;
}
public function getIyziCommissionFee()
{
return $this->iyziCommissionFee;
}
public function setIyziCommissionFee($iyziCommissionFee)
{
$this->iyziCommissionFee = $iyziCommissionFee;
}
public function getCardType()
{
return $this->cardType;
}
public function setCardType($cardType)
{
$this->cardType = $cardType;
}
public function getCardAssociation()
{
return $this->cardAssociation;
}
public function setCardAssociation($cardAssociation)
{
$this->cardAssociation = $cardAssociation;
}
public function getCardFamily()
{
return $this->cardFamily;
}
public function setCardFamily($cardFamily)
{
$this->cardFamily = $cardFamily;
}
public function getCardToken()
{
return $this->cardToken;
}
public function setCardToken($cardToken)
{
$this->cardToken = $cardToken;
}
public function getCardUserKey()
{
return $this->cardUserKey;
}
public function setCardUserKey($cardUserKey)
{
$this->cardUserKey = $cardUserKey;
}
public function getBinNumber()
{
return $this->binNumber;
}
public function setBinNumber($binNumber)
{
$this->binNumber = $binNumber;
}
public function getPaymentTransactionId()
{
return $this->paymentTransactionId;
}
public function setPaymentTransactionId($paymentTransactionId)
{
$this->paymentTransactionId = $paymentTransactionId;
}
public function getAuthCode()
{
return $this->authCode;
}
public function setAuthCode($authCode)
{
$this->authCode = $authCode;
}
public function getConnectorName()
{
return $this->connectorName;
}
public function setConnectorName($connectorName)
{
$this->connectorName = $connectorName;
}
public function getPhase()
{
return $this->phase;
}
public function setPhase($phase)
{
$this->phase = $phase;
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\BasicThreedsInitializeMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateBasicPaymentRequest;
class BasicThreedsInitialize extends IyzipayResource
{
private $htmlContent;
public static function create(CreateBasicPaymentRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/3dsecure/initialize/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicThreedsInitializeMapper::create($rawResult)->jsonDecode()->mapBasicThreedsInitialize(new BasicThreedsInitialize());
}
public function getHtmlContent()
{
return $this->htmlContent;
}
public function setHtmlContent($htmlContent)
{
$this->htmlContent = $htmlContent;
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\BasicThreedsInitializePreAuthMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateBasicPaymentRequest;
class BasicThreedsInitializePreAuth extends IyzipayResource
{
private $htmlContent;
public static function create(CreateBasicPaymentRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/3dsecure/initialize/preauth/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicThreedsInitializePreAuthMapper::create($rawResult)->jsonDecode()->mapBasicThreedsInitializePreAuth(new BasicThreedsInitializePreAuth());
}
public function getHtmlContent()
{
return $this->htmlContent;
}
public function setHtmlContent($htmlContent)
{
$this->htmlContent = $htmlContent;
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\BasicThreedsPaymentMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateThreedsPaymentRequest;
class BasicThreedsPayment extends BasicPaymentResource
{
public static function create(CreateThreedsPaymentRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/3dsecure/auth/basic", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BasicThreedsPaymentMapper::create($rawResult)->jsonDecode()->mapBasicThreedsPayment(new BasicThreedsPayment());
}
}

View File

@@ -0,0 +1,127 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class BasketItem extends BaseModel
{
private $id;
private $price;
private $name;
private $category1;
private $category2;
private $itemType;
private $subMerchantKey;
private $subMerchantPrice;
public function getId()
{
return $this->id;
}
public function setId($id)
{
$this->id = $id;
}
public function getPrice()
{
return $this->price;
}
public function setPrice($price)
{
$this->price = $price;
}
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
public function getCategory1()
{
return $this->category1;
}
public function setCategory1($category1)
{
$this->category1 = $category1;
}
public function getCategory2()
{
return $this->category2;
}
public function setCategory2($category2)
{
$this->category2 = $category2;
}
public function getItemType()
{
return $this->itemType;
}
public function setItemType($itemType)
{
$this->itemType = $itemType;
}
public function getSubMerchantKey()
{
return $this->subMerchantKey;
}
public function setSubMerchantKey($subMerchantKey)
{
$this->subMerchantKey = $subMerchantKey;
}
public function getSubMerchantPrice()
{
return $this->subMerchantPrice;
}
public function setSubMerchantPrice($subMerchantPrice)
{
$this->subMerchantPrice = $subMerchantPrice;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("id", $this->getId())
->addPrice("price", $this->getPrice())
->add("name", $this->getName())
->add("category1", $this->getCategory1())
->add("category2", $this->getCategory2())
->add("itemType", $this->getItemType())
->add("subMerchantKey", $this->getSubMerchantKey())
->addPrice("subMerchantPrice", $this->getSubMerchantPrice())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("id", $this->getId())
->appendPrice("price", $this->getPrice())
->append("name", $this->getName())
->append("category1", $this->getCategory1())
->append("category2", $this->getCategory2())
->append("itemType", $this->getItemType())
->append("subMerchantKey", $this->getSubMerchantKey())
->appendPrice("subMerchantPrice", $this->getSubMerchantPrice())
->getRequestString();
}
}

View File

@@ -0,0 +1,9 @@
<?php
namespace Iyzipay\Model;
class BasketItemType
{
const PHYSICAL = "PHYSICAL";
const VIRTUAL = "VIRTUAL";
}

View File

@@ -0,0 +1,95 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\BinNumberMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveBinNumberRequest;
class BinNumber extends IyzipayResource
{
private $binNumber;
private $cardType;
private $cardAssociation;
private $cardFamily;
private $bankName;
private $bankCode;
private $commercial;
public static function retrieve(RetrieveBinNumberRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/bin/check", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BinNumberMapper::create($rawResult)->jsonDecode()->mapBinNumber(new BinNumber());
}
public function getBinNumber()
{
return $this->binNumber;
}
public function setBinNumber($binNumber)
{
$this->binNumber = $binNumber;
}
public function getCardType()
{
return $this->cardType;
}
public function setCardType($cardType)
{
$this->cardType = $cardType;
}
public function getCardAssociation()
{
return $this->cardAssociation;
}
public function setCardAssociation($cardAssociation)
{
$this->cardAssociation = $cardAssociation;
}
public function getCardFamily()
{
return $this->cardFamily;
}
public function setCardFamily($cardFamily)
{
$this->cardFamily = $cardFamily;
}
public function getBankName()
{
return $this->bankName;
}
public function setBankName($bankName)
{
$this->bankName = $bankName;
}
public function getBankCode()
{
return $this->bankCode;
}
public function setBankCode($bankCode)
{
$this->bankCode = $bankCode;
}
public function getCommercial()
{
return $this->commercial;
}
public function setCommercial($commercial)
{
$this->commercial = $commercial;
}
}

View File

@@ -0,0 +1,39 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\BkmMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveBkmRequest;
class Bkm extends PaymentResource
{
private $token;
private $callbackUrl;
public static function retrieve(RetrieveBkmRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/bkm/auth/detail", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BkmMapper::create($rawResult)->jsonDecode()->mapBkm(new Bkm());
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getCallbackUrl()
{
return $this->callbackUrl;
}
public function setCallbackUrl($callbackUrl)
{
$this->callbackUrl = $callbackUrl;
}
}

View File

@@ -0,0 +1,40 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\BkmInitializeMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateBkmInitializeRequest;
class BkmInitialize extends IyzipayResource
{
private $htmlContent;
private $token;
public static function create(CreateBkmInitializeRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/bkm/initialize", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BkmInitializeMapper::create($rawResult)->jsonDecode()->mapBkmInitialize(new BkmInitialize());
}
public function getHtmlContent()
{
return $this->htmlContent;
}
public function setHtmlContent($htmlContent)
{
$this->htmlContent = $htmlContent;
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
}

View File

@@ -0,0 +1,49 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class BkmInstallment extends BaseModel
{
private $bankId;
private $installmentPrices;
public function getBankId()
{
return $this->bankId;
}
public function setBankId($bankId)
{
$this->bankId = $bankId;
}
public function getInstallmentPrices()
{
return $this->installmentPrices;
}
public function setInstallmentPrices($installmentPrices)
{
$this->installmentPrices = $installmentPrices;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("bankId", $this->getBankId())
->addArray("installmentPrices", $this->getInstallmentPrices())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("bankId", $this->getBankId())
->appendArray("installmentPrices", $this->getInstallmentPrices())
->getRequestString();
}
}

View File

@@ -0,0 +1,49 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class BkmInstallmentPrice extends BaseModel
{
private $installmentNumber;
private $totalPrice;
public function getInstallmentNumber()
{
return $this->installmentNumber;
}
public function setInstallmentNumber($installmentNumber)
{
$this->installmentNumber = $installmentNumber;
}
public function getTotalPrice()
{
return $this->totalPrice;
}
public function setTotalPrice($totalPrice)
{
$this->totalPrice = $totalPrice;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("installmentNumber", $this->getInstallmentNumber())
->addPrice("totalPrice", $this->getTotalPrice())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("installmentNumber", $this->getInstallmentNumber())
->appendPrice("totalPrice", $this->getTotalPrice())
->getRequestString();
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\BouncedBankTransferListMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveTransactionsRequest;
class BouncedBankTransferList extends IyzipayResource
{
private $bankTransfers;
public static function retrieve(RetrieveTransactionsRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/reporting/settlement/bounced", parent::getHttpHeaders($request, $options), $request->toJsonString());
return BouncedBankTransferListMapper::create($rawResult)->jsonDecode()->mapBouncedBankTransferList(new BouncedBankTransferList());
}
public function getBankTransfers()
{
return $this->bankTransfers;
}
public function setBankTransfers($bankTransfers)
{
$this->bankTransfers = $bankTransfers;
}
}

View File

@@ -0,0 +1,192 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class Buyer extends BaseModel
{
private $id;
private $name;
private $surname;
private $identityNumber;
private $email;
private $gsmNumber;
private $registrationDate;
private $lastLoginDate;
private $registrationAddress;
private $city;
private $country;
private $zipCode;
private $ip;
public function getId()
{
return $this->id;
}
public function setId($id)
{
$this->id = $id;
}
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
public function getSurname()
{
return $this->surname;
}
public function setSurname($surname)
{
$this->surname = $surname;
}
public function getIdentityNumber()
{
return $this->identityNumber;
}
public function setIdentityNumber($identityNumber)
{
$this->identityNumber = $identityNumber;
}
public function getEmail()
{
return $this->email;
}
public function setEmail($email)
{
$this->email = $email;
}
public function getGsmNumber()
{
return $this->gsmNumber;
}
public function setGsmNumber($gsmNumber)
{
$this->gsmNumber = $gsmNumber;
}
public function getRegistrationDate()
{
return $this->registrationDate;
}
public function setRegistrationDate($registrationDate)
{
$this->registrationDate = $registrationDate;
}
public function getLastLoginDate()
{
return $this->lastLoginDate;
}
public function setLastLoginDate($lastLoginDate)
{
$this->lastLoginDate = $lastLoginDate;
}
public function getRegistrationAddress()
{
return $this->registrationAddress;
}
public function setRegistrationAddress($registrationAddress)
{
$this->registrationAddress = $registrationAddress;
}
public function getCity()
{
return $this->city;
}
public function setCity($city)
{
$this->city = $city;
}
public function getCountry()
{
return $this->country;
}
public function setCountry($country)
{
$this->country = $country;
}
public function getZipCode()
{
return $this->zipCode;
}
public function setZipCode($zipCode)
{
$this->zipCode = $zipCode;
}
public function getIp()
{
return $this->ip;
}
public function setIp($ip)
{
$this->ip = $ip;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("id", $this->getId())
->add("name", $this->getName())
->add("surname", $this->getSurname())
->add("identityNumber", $this->getIdentityNumber())
->add("email", $this->getEmail())
->add("gsmNumber", $this->getGsmNumber())
->add("registrationDate", $this->getRegistrationDate())
->add("lastLoginDate", $this->getLastLoginDate())
->add("registrationAddress", $this->getRegistrationAddress())
->add("city", $this->getCity())
->add("country", $this->getCountry())
->add("zipCode", $this->getZipCode())
->add("ip", $this->getIp())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("id", $this->getId())
->append("name", $this->getName())
->append("surname", $this->getSurname())
->append("identityNumber", $this->getIdentityNumber())
->append("email", $this->getEmail())
->append("gsmNumber", $this->getGsmNumber())
->append("registrationDate", $this->getRegistrationDate())
->append("lastLoginDate", $this->getLastLoginDate())
->append("registrationAddress", $this->getRegistrationAddress())
->append("city", $this->getCity())
->append("country", $this->getCountry())
->append("zipCode", $this->getZipCode())
->append("ip", $this->getIp())
->getRequestString();
}
}

View File

@@ -0,0 +1,73 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\CancelMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateCancelRequest;
class Cancel extends IyzipayResource
{
private $paymentId;
private $price;
private $currency;
private $connectorName;
private $authCode;
public static function create(CreateCancelRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/cancel", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CancelMapper::create($rawResult)->jsonDecode()->mapCancel(new Cancel());
}
public function getPaymentId()
{
return $this->paymentId;
}
public function setPaymentId($paymentId)
{
$this->paymentId = $paymentId;
}
public function getPrice()
{
return $this->price;
}
public function setPrice($price)
{
$this->price = $price;
}
public function getCurrency()
{
return $this->currency;
}
public function setCurrency($currency)
{
$this->currency = $currency;
}
public function getConnectorName()
{
return $this->connectorName;
}
public function setConnectorName($connectorName)
{
$this->connectorName = $connectorName;
}
public function getAuthCode()
{
return $this->authCode;
}
public function setAuthCode($authCode)
{
$this->authCode = $authCode;
}
}

View File

@@ -0,0 +1,146 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\CardMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateCardRequest;
use Iyzipay\Request\DeleteCardRequest;
class Card extends IyzipayResource
{
private $externalId;
private $email;
private $cardUserKey;
private $cardToken;
private $cardAlias;
private $binNumber;
private $cardType;
private $cardAssociation;
private $cardFamily;
private $cardBankCode;
private $cardBankName;
public static function create(CreateCardRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/cardstorage/card", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CardMapper::create($rawResult)->jsonDecode()->mapCard(new Card());
}
public static function delete(DeleteCardRequest $request, Options $options)
{
$rawResult = parent::httpClient()->delete($options->getBaseUrl() . "/cardstorage/card", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CardMapper::create($rawResult)->jsonDecode()->mapCard(new Card());
}
public function getExternalId()
{
return $this->externalId;
}
public function setExternalId($externalId)
{
$this->externalId = $externalId;
}
public function getEmail()
{
return $this->email;
}
public function setEmail($email)
{
$this->email = $email;
}
public function getCardUserKey()
{
return $this->cardUserKey;
}
public function setCardUserKey($cardUserKey)
{
$this->cardUserKey = $cardUserKey;
}
public function getCardToken()
{
return $this->cardToken;
}
public function setCardToken($cardToken)
{
$this->cardToken = $cardToken;
}
public function getCardAlias()
{
return $this->cardAlias;
}
public function setCardAlias($cardAlias)
{
$this->cardAlias = $cardAlias;
}
public function getBinNumber()
{
return $this->binNumber;
}
public function setBinNumber($binNumber)
{
$this->binNumber = $binNumber;
}
public function getCardType()
{
return $this->cardType;
}
public function setCardType($cardType)
{
$this->cardType = $cardType;
}
public function getCardAssociation()
{
return $this->cardAssociation;
}
public function setCardAssociation($cardAssociation)
{
$this->cardAssociation = $cardAssociation;
}
public function getCardFamily()
{
return $this->cardFamily;
}
public function setCardFamily($cardFamily)
{
$this->cardFamily = $cardFamily;
}
public function getCardBankCode()
{
return $this->cardBankCode;
}
public function setCardBankCode($cardBankCode)
{
$this->cardBankCode = $cardBankCode;
}
public function getCardBankName()
{
return $this->cardBankName;
}
public function setCardBankName($cardBankName)
{
$this->cardBankName = $cardBankName;
}
}

View File

@@ -0,0 +1,88 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class CardInformation extends BaseModel
{
private $cardAlias;
private $cardNumber;
private $expireYear;
private $expireMonth;
private $cardHolderName;
public function getCardAlias()
{
return $this->cardAlias;
}
public function setCardAlias($cardAlias)
{
$this->cardAlias = $cardAlias;
}
public function getCardNumber()
{
return $this->cardNumber;
}
public function setCardNumber($cardNumber)
{
$this->cardNumber = $cardNumber;
}
public function getExpireYear()
{
return $this->expireYear;
}
public function setExpireYear($expireYear)
{
$this->expireYear = $expireYear;
}
public function getExpireMonth()
{
return $this->expireMonth;
}
public function setExpireMonth($expireMonth)
{
$this->expireMonth = $expireMonth;
}
public function getCardHolderName()
{
return $this->cardHolderName;
}
public function setCardHolderName($cardHolderName)
{
$this->cardHolderName = $cardHolderName;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("cardAlias", $this->getCardAlias())
->add("cardNumber", $this->getCardNumber())
->add("expireYear", $this->getExpireYear())
->add("expireMonth", $this->getExpireMonth())
->add("cardHolderName", $this->getCardHolderName())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("cardAlias", $this->getCardAlias())
->append("cardNumber", $this->getCardNumber())
->append("expireYear", $this->getExpireYear())
->append("expireMonth", $this->getExpireMonth())
->append("cardHolderName", $this->getCardHolderName())
->getRequestString();
}
}

View File

@@ -0,0 +1,40 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\CardListMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveCardListRequest;
class CardList extends IyzipayResource
{
private $cardUserKey;
private $cardDetails;
public static function retrieve(RetrieveCardListRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/cardstorage/cards", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CardListMapper::create($rawResult)->jsonDecode()->mapCardList(new CardList());
}
public function getCardUserKey()
{
return $this->cardUserKey;
}
public function setCardUserKey($cardUserKey)
{
$this->cardUserKey = $cardUserKey;
}
public function getCardDetails()
{
return $this->cardDetails;
}
public function setCardDetails($cardDetails)
{
$this->cardDetails = $cardDetails;
}
}

View File

@@ -0,0 +1,39 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\CheckoutFormMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveCheckoutFormRequest;
class CheckoutForm extends PaymentResource
{
private $token;
private $callbackUrl;
public static function retrieve(RetrieveCheckoutFormRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/checkoutform/auth/ecom/detail", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CheckoutFormMapper::create($rawResult)->jsonDecode()->mapCheckoutForm(new CheckoutForm());
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getCallbackUrl()
{
return $this->callbackUrl;
}
public function setCallbackUrl($callbackUrl)
{
$this->callbackUrl = $callbackUrl;
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\CheckoutFormInitializeMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateCheckoutFormInitializeRequest;
class CheckoutFormInitialize extends CheckoutFormInitializeResource
{
public static function create(CreateCheckoutFormInitializeRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/checkoutform/initialize/auth/ecom", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CheckoutFormInitializeMapper::create($rawResult)->jsonDecode()->mapCheckoutFormInitialize(new CheckoutFormInitialize());
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\CheckoutFormInitializePreAuthMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateCheckoutFormInitializeRequest;
class CheckoutFormInitializePreAuth extends CheckoutFormInitializeResource
{
public static function create(CreateCheckoutFormInitializeRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/checkoutform/initialize/preauth/ecom", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CheckoutFormInitializePreAuthMapper::create($rawResult)->jsonDecode()->mapCheckoutFormInitializePreAuth(new CheckoutFormInitializePreAuth());
}
}

View File

@@ -0,0 +1,53 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
class CheckoutFormInitializeResource extends IyzipayResource
{
private $token;
private $checkoutFormContent;
private $tokenExpireTime;
private $paymentPageUrl;
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getCheckoutFormContent()
{
return $this->checkoutFormContent;
}
public function setCheckoutFormContent($checkoutFormContent)
{
$this->checkoutFormContent = $checkoutFormContent;
}
public function getTokenExpireTime()
{
return $this->tokenExpireTime;
}
public function setTokenExpireTime($tokenExpireTime)
{
$this->tokenExpireTime = $tokenExpireTime;
}
public function getPaymentPageUrl()
{
return $this->paymentPageUrl;
}
public function setPaymentPageUrl($paymentPageUrl)
{
$this->paymentPageUrl = $paymentPageUrl;
}
}

View File

@@ -0,0 +1,62 @@
<?php
namespace Iyzipay\Model;
class Consumer
{
private $name;
private $surname;
private $identityNumber;
private $email;
private $gsmNumber;
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
public function getSurname()
{
return $this->surname;
}
public function setSurname($surname)
{
$this->surname = $surname;
}
public function getIdentityNumber()
{
return $this->identityNumber;
}
public function setIdentityNumber($identityNumber)
{
$this->identityNumber = $identityNumber;
}
public function getEmail()
{
return $this->email;
}
public function setEmail($email)
{
$this->email = $email;
}
public function getGsmNumber()
{
return $this->gsmNumber;
}
public function setGsmNumber($gsmNumber)
{
$this->gsmNumber = $gsmNumber;
}
}

View File

@@ -0,0 +1,117 @@
<?php
namespace Iyzipay\Model;
class ConvertedPayout
{
private $paidPrice;
private $iyziCommissionRateAmount;
private $iyziCommissionFee;
private $blockageRateAmountMerchant;
private $blockageRateAmountSubMerchant;
private $subMerchantPayoutAmount;
private $merchantPayoutAmount;
private $iyziConversionRate;
private $iyziConversionRateAmount;
private $currency;
public function getPaidPrice()
{
return $this->paidPrice;
}
public function setPaidPrice($paidPrice)
{
$this->paidPrice = $paidPrice;
}
public function getIyziCommissionRateAmount()
{
return $this->iyziCommissionRateAmount;
}
public function setIyziCommissionRateAmount($iyziCommissionRateAmount)
{
$this->iyziCommissionRateAmount = $iyziCommissionRateAmount;
}
public function getIyziCommissionFee()
{
return $this->iyziCommissionFee;
}
public function setIyziCommissionFee($iyziCommissionFee)
{
$this->iyziCommissionFee = $iyziCommissionFee;
}
public function getBlockageRateAmountMerchant()
{
return $this->blockageRateAmountMerchant;
}
public function setBlockageRateAmountMerchant($blockageRateAmountMerchant)
{
$this->blockageRateAmountMerchant = $blockageRateAmountMerchant;
}
public function getBlockageRateAmountSubMerchant()
{
return $this->blockageRateAmountSubMerchant;
}
public function setBlockageRateAmountSubMerchant($blockageRateAmountSubMerchant)
{
$this->blockageRateAmountSubMerchant = $blockageRateAmountSubMerchant;
}
public function getSubMerchantPayoutAmount()
{
return $this->subMerchantPayoutAmount;
}
public function setSubMerchantPayoutAmount($subMerchantPayoutAmount)
{
$this->subMerchantPayoutAmount = $subMerchantPayoutAmount;
}
public function getMerchantPayoutAmount()
{
return $this->merchantPayoutAmount;
}
public function setMerchantPayoutAmount($merchantPayoutAmount)
{
$this->merchantPayoutAmount = $merchantPayoutAmount;
}
public function getIyziConversionRate()
{
return $this->iyziConversionRate;
}
public function setIyziConversionRate($iyziConversionRate)
{
$this->iyziConversionRate = $iyziConversionRate;
}
public function getIyziConversionRateAmount()
{
return $this->iyziConversionRateAmount;
}
public function setIyziConversionRateAmount($iyziConversionRateAmount)
{
$this->iyziConversionRateAmount = $iyziConversionRateAmount;
}
public function getCurrency()
{
return $this->currency;
}
public function setCurrency($currency)
{
$this->currency = $currency;
}
}

View File

@@ -0,0 +1,17 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\CrossBookingFromSubMerchantMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateCrossBookingRequest;
class CrossBookingFromSubMerchant extends IyzipayResource
{
public static function create(CreateCrossBookingRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/crossbooking/receive", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CrossBookingFromSubMerchantMapper::create($rawResult)->jsonDecode()->mapCrossBookingFromSubMerchant(new CrossBookingFromSubMerchant());
}
}

View File

@@ -0,0 +1,17 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\CrossBookingToSubMerchantMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateCrossBookingRequest;
class CrossBookingToSubMerchant extends IyzipayResource
{
public static function create(CreateCrossBookingRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/crossbooking/send", parent::getHttpHeaders($request, $options), $request->toJsonString());
return CrossBookingToSubMerchantMapper::create($rawResult)->jsonDecode()->mapCrossBookingToSubMerchant(new CrossBookingToSubMerchant());
}
}

View File

@@ -0,0 +1,15 @@
<?php
namespace Iyzipay\Model;
class Currency
{
const TL = "TRY";
const EUR = "EUR";
const USD = "USD";
const GBP = "GBP";
const IRR = "IRR";
const NOK = "NOK";
const RUB = "RUB";
const CHF = "CHF";
}

View File

@@ -0,0 +1,263 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class Customer extends BaseModel
{
private $name;
private $surname;
private $identityNumber;
private $email;
private $gsmNumber;
private $shippingContactName;
private $shippingCity;
private $shippingDistrict;
private $shippingCountry;
private $shippingAddress;
private $shippingZipCode;
private $billingContactName;
private $billingCity;
private $billingDistrict;
private $billingCountry;
private $billingAddress;
private $billingZipCode;
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
public function getSurname()
{
return $this->surname;
}
public function setSurname($surname)
{
$this->surname = $surname;
}
public function getIdentityNumber()
{
return $this->identityNumber;
}
public function setIdentityNumber($identityNumber)
{
$this->identityNumber = $identityNumber;
}
public function getEmail()
{
return $this->email;
}
public function setEmail($email)
{
$this->email = $email;
}
public function getGsmNumber()
{
return $this->gsmNumber;
}
public function setGsmNumber($gsmNumber)
{
$this->gsmNumber = $gsmNumber;
}
public function getShippingContactName(){
return $this->shippingContactName;
}
public function setShippingContactName($shippingContactName){
return $this->shippingContactName = $shippingContactName;
}
public function getShippingCity(){
return $this->shippingCity;
}
public function setShippingCity($shippingCity){
return $this->shippingCity = $shippingCity;
}
public function getShippingCountry(){
return $this->shippingCountry;
}
public function setShippingCountry($shippingCountry){
return $this->shippingCountry = $shippingCountry;
}
public function getShippingAddress(){
return $this->shippingAddress;
}
public function setShippingAddress($shippingAddress){
return $this->shippingAddress = $shippingAddress;
}
public function getShippingZipCode(){
return $this->shippingZipCode;
}
public function setShippingZipCode($shippingZipCode){
return $this->shippingZipCode = $shippingZipCode;
}
public function getBillingContactName(){
return $this->billingContactName;
}
public function setBillingContactName($billingContactName){
return $this->billingContactName = $billingContactName;
}
public function getBillingCity(){
return $this->billingCity;
}
public function setBillingCity($billingCity){
return $this->billingCity = $billingCity;
}
public function getBillingCountry(){
return $this->billingCountry;
}
public function setBillingCountry($billingCountry){
return $this->billingCountry = $billingCountry;
}
public function getBillingAddress(){
return $this->billingAddress;
}
public function setBillingAddress($billingAddress){
return $this->billingAddress = $billingAddress;
}
public function getBillingZipCode(){
return $this->billingZipCode;
}
public function setBillingZipCode($billingZipCode){
return $this->billingZipCode = $billingZipCode;
}
public function getShippingDistrict()
{
return $this->shippingDistrict;
}
public function setShippingDistrict($shippingDistrict)
{
$this->shippingDistrict = $shippingDistrict;
}
public function getBillingDistrict()
{
return $this->billingDistrict;
}
public function setBillingDistrict($billingDistrict)
{
$this->billingDistrict = $billingDistrict;
}
public function getJsonObject($locale = null,$conversationId = null,$customerReferenceCode = null)
{
return JsonBuilder::create()
->add("locale", $locale)
->add("conversationId", $conversationId)
->add("customerReferenceCode", $customerReferenceCode)
->add("name", $this->getName())
->add("surname", $this->getSurname())
->add("identityNumber", $this->getIdentityNumber())
->add("email", $this->getEmail())
->add("gsmNumber", $this->getGsmNumber())
->add("billingAddress",
JsonBuilder::create()
->add("contactName", $this->getBillingContactName())
->add("city", $this->getBillingCity())
->add("district", $this->getBillingDistrict())
->add("country", $this->getBillingCountry())
->add("address", $this->getBillingAddress())
->add("zipCode", $this->getBillingZipCode())
->getObject()
)
->add("shippingAddress",
JsonBuilder::create()
->add("contactName", $this->getShippingContactName())
->add("city", $this->getShippingCity())
->add("district", $this->getShippingDistrict())
->add("country", $this->getShippingCountry())
->add("address", $this->getShippingAddress())
->add("zipCode", $this->getShippingZipCode())
->getObject()
)
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("name", $this->getName())
->append("surname", $this->getSurname())
->append("identityNumber", $this->getIdentityNumber())
->append("email", $this->getEmail())
->append("gsmNumber", $this->getGsmNumber())
->append("billingAddress",
RequestStringBuilder::create()
->append("contactName", $this->getBillingContactName())
->append("city", $this->getBillingCity())
->append("district", $this->getBillingDistrict())
->append("country", $this->getBillingCountry())
->append("address", $this->getBillingAddress())
->append("zipCode", $this->getBillingZipCode())
->getRequestString()
)
->append("shippingAddress",
RequestStringBuilder::create()
->append("contactName", $this->getShippingContactName())
->append("city", $this->getShippingCity())
->append("district", $this->getShippingDistrict())
->append("country", $this->getShippingCountry())
->append("address", $this->getShippingAddress())
->append("zipCode", $this->getShippingZipCode())
->getRequestString()
)
->getRequestString();
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\DisapprovalMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateApprovalRequest;
class Disapproval extends IyzipayResource
{
private $paymentTransactionId;
public static function create(CreateApprovalRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/item/disapprove", parent::getHttpHeaders($request, $options), $request->toJsonString());
return DisapprovalMapper::create($rawResult)->jsonDecode()->mapDisapproval(new Disapproval());
}
public function getPaymentTransactionId()
{
return $this->paymentTransactionId;
}
public function setPaymentTransactionId($paymentTransactionId)
{
$this->paymentTransactionId = $paymentTransactionId;
}
}

View File

@@ -0,0 +1,88 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class InitialConsumer extends BaseModel
{
private $name;
private $surname;
private $email;
private $gsmNumber;
private $addressList;
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
public function getSurname()
{
return $this->surname;
}
public function setSurname($surname)
{
$this->surname = $surname;
}
public function getEmail()
{
return $this->email;
}
public function setEmail($email)
{
$this->email = $email;
}
public function getGsmNumber()
{
return $this->gsmNumber;
}
public function setGsmNumber($gsmNumber)
{
$this->gsmNumber = $gsmNumber;
}
public function getAddressList()
{
return $this->addressList;
}
public function setAddressList($addressList)
{
$this->addressList = $addressList;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("name", $this->getName())
->add("surname", $this->getSurname())
->add("email", $this->getEmail())
->add("gsmNumber", $this->getGsmNumber())
->addArray("addressList", $this->getAddressList())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("name", $this->getName())
->append("surname", $this->getSurname())
->append("email", $this->getEmail())
->append("gsmNumber", $this->getGsmNumber())
->appendArray("addressList", $this->getAddressList())
->getRequestString();
}
}

View File

@@ -0,0 +1,128 @@
<?php
namespace Iyzipay\Model;
class InstallmentDetail
{
private $binNumber;
private $price;
private $cardType;
private $cardAssociation;
private $cardFamilyName;
private $force3ds;
private $bankCode;
private $bankName;
private $forceCvc;
private $commercial;
private $installmentPrices;
public function getBinNumber()
{
return $this->binNumber;
}
public function setBinNumber($binNumber)
{
$this->binNumber = $binNumber;
}
public function getPrice()
{
return $this->price;
}
public function setPrice($price)
{
$this->price = $price;
}
public function getCardType()
{
return $this->cardType;
}
public function setCardType($cardType)
{
$this->cardType = $cardType;
}
public function getCardAssociation()
{
return $this->cardAssociation;
}
public function setCardAssociation($cardAssociation)
{
$this->cardAssociation = $cardAssociation;
}
public function getCardFamilyName()
{
return $this->cardFamilyName;
}
public function setCardFamilyName($cardFamilyName)
{
$this->cardFamilyName = $cardFamilyName;
}
public function getForce3ds()
{
return $this->force3ds;
}
public function setForce3ds($force3ds)
{
$this->force3ds = $force3ds;
}
public function getBankCode()
{
return $this->bankCode;
}
public function setBankCode($bankCode)
{
$this->bankCode = $bankCode;
}
public function getBankName()
{
return $this->bankName;
}
public function setBankName($bankName)
{
$this->bankName = $bankName;
}
public function getForceCvc()
{
return $this->forceCvc;
}
public function setForceCvc($forceCvc)
{
$this->forceCvc = $forceCvc;
}
public function getCommercial()
{
return $this->commercial;
}
public function setCommercial($commercial)
{
$this->commercial = $commercial;
}
public function getInstallmentPrices()
{
return $this->installmentPrices;
}
public function setInstallmentPrices($installmentPrices)
{
$this->installmentPrices = $installmentPrices;
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\InstallmentHtmlMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveInstallmentInfoRequest;
class InstallmentHtml extends IyzipayResource
{
private $htmlContent;
public static function retrieve(RetrieveInstallmentInfoRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/installment/html/horizontal", parent::getHttpHeaders($request, $options), $request->toJsonString());
return InstallmentHtmlMapper::create($rawResult)->jsonDecode()->mapInstallmentHtml(new InstallmentHtml());
}
public function getHtmlContent()
{
return $this->htmlContent;
}
public function setHtmlContent($htmlContent)
{
$this->htmlContent = $htmlContent;
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\InstallmentInfoMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveInstallmentInfoRequest;
class InstallmentInfo extends IyzipayResource
{
private $installmentDetails;
public static function retrieve(RetrieveInstallmentInfoRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/iyzipos/installment", parent::getHttpHeaders($request, $options), $request->toJsonString());
return InstallmentInfoMapper::create($rawResult)->jsonDecode()->mapInstallmentInfo(new InstallmentInfo());
}
public function getInstallmentDetails()
{
return $this->installmentDetails;
}
public function setInstallmentDetails($installmentDetails)
{
$this->installmentDetails = $installmentDetails;
}
}

View File

@@ -0,0 +1,40 @@
<?php
namespace Iyzipay\Model;
class InstallmentPrice
{
private $installmentPrice;
private $totalPrice;
private $installmentNumber;
public function getInstallmentPrice()
{
return $this->installmentPrice;
}
public function setInstallmentPrice($installmentPrice)
{
$this->installmentPrice = $installmentPrice;
}
public function getTotalPrice()
{
return $this->totalPrice;
}
public function setTotalPrice($totalPrice)
{
$this->totalPrice = $totalPrice;
}
public function getInstallmentNumber()
{
return $this->installmentNumber;
}
public function setInstallmentNumber($installmentNumber)
{
$this->installmentNumber = $installmentNumber;
}
}

View File

@@ -0,0 +1,19 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\Model\Mapper\Iyzilink\IyziLinkDeleteProductMapper;
use Iyzipay\Options;
use Iyzipay\Request;
use Iyzipay\RequestStringBuilder;
class IyziLinkDeleteProduct extends IyziLinkDeleteProductResource
{
public static function create(Request $request, Options $options, $token)
{
$uri = $options->getBaseUrl() . "/v2/iyzilink/products/" . $token . RequestStringBuilder::requestToStringQuery($request, null);
$rawResult = parent::httpClient()->delete($uri, parent::getHttpHeadersV2($uri, null, $options));
return IyziLinkDeleteProductMapper::create($rawResult)->jsonDecode()->mapIyziLinkDeleteProduct(new IyziLinkDeleteProduct());
}
}

View File

@@ -0,0 +1,10 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\IyzipayResource;
class IyziLinkDeleteProductResource extends IyzipayResource
{
}

View File

@@ -0,0 +1,18 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\Model\Mapper\Iyzilink\IyziLinkRetrieveAllProductMapper;
use Iyzipay\Options;
use Iyzipay\Request\PagininRequest;
use Iyzipay\RequestStringBuilder;
class IyziLinkRetrieveAllProduct extends IyziLinkRetrieveAllProductResource
{
public static function create(PagininRequest $request, Options $options)
{
$uri = $options->getBaseUrl() . "/v2/iyzilink/products" . RequestStringBuilder::requestToStringQuery($request, 'pages');
$rawResult = parent::httpClient()->getV2($uri, parent::getHttpHeadersV2($uri, null, $options));
return IyziLinkRetrieveAllProductMapper::create($rawResult)->jsonDecode()->mapIyziLinkRetriveAllProduct(new IyziLinkRetrieveAllProduct());
}
}

View File

@@ -0,0 +1,64 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\IyzipayResource;
class IyziLinkRetrieveAllProductResource extends IyzipayResource
{
private $listingReviewed;
private $totalCount;
private $currentPage;
private $pageCount;
private $items;
public function getListingReviewed()
{
return $this->listingReviewed;
}
public function setListingReviewed($listingReviewed)
{
$this->listingReviewed = $listingReviewed;
}
public function getTotalCount()
{
return $this->totalCount;
}
public function setTotalCount($totalCount)
{
$this->totalCount = $totalCount;
}
public function getCurrentPage()
{
return $this->currentPage;
}
public function setCurrentPage($currentPage)
{
$this->currentPage = $currentPage;
}
public function getPageCount()
{
return $this->pageCount;
}
public function setPageCount($pageCount)
{
$this->pageCount = $pageCount;
}
public function getItems()
{
return $this->items;
}
public function setItems($items)
{
$this->items = $items;
}
}

View File

@@ -0,0 +1,18 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\Model\Mapper\Iyzilink\IyziLinkRetrieveProductMapper;
use Iyzipay\Options;
use Iyzipay\Request;
use Iyzipay\RequestStringBuilder;
class IyziLinkRetrieveProduct extends IyziLinkRetrieveProductResource
{
public static function create(Request $request, Options $options, $token)
{
$uri = $options->getBaseUrl() . "/v2/iyzilink/products/" . $token. RequestStringBuilder::requestToStringQuery($request, null);
$rawResult = parent::httpClient()->getV2($uri, parent::getHttpHeadersV2($uri, null, $options));
return IyziLinkRetrieveProductMapper::create($rawResult)->jsonDecode()->mapIyziLinkRetriveProduct(new IyziLinkRetrieveProduct());
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\IyzipayResource;
class IyziLinkRetrieveProductResource extends IyzipayResource
{
private $item;
public function getItem()
{
return $this->item;
}
public function setItem($item)
{
$this->item = $item;
}
}

View File

@@ -0,0 +1,18 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\Model\Mapper\Iyzilink\IyziLinkSaveProductMapper;
use Iyzipay\Request\Iyzilink\IyziLinkSaveProductRequest;
use Iyzipay\Options;
use Iyzipay\RequestStringBuilder;
class IyziLinkSaveProduct extends IyziLinkSaveProductResource
{
public static function create(IyziLinkSaveProductRequest $request, Options $options)
{
$uri = $options->getBaseUrl() . "/v2/iyzilink/products/". RequestStringBuilder::requestToStringQuery($request, null);
$rawResult = parent::httpClient()->post($uri, parent::getHttpHeadersV2($uri, $request, $options), $request->toJsonString());
return IyziLinkSaveProductMapper::create($rawResult)->jsonDecode()->mapIyziLinkSaveProduct(new IyziLinkSaveProduct());
}
}

View File

@@ -0,0 +1,74 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\IyzipayResource;
class IyziLinkSaveProductResource extends IyzipayResource
{
private $base64EncodedImage;
private $price;
private $currency;
private $addressIgnorable;
private $soldLimit;
private $installmentRequested;
private $token;
private $url;
private $imageUrl;
public function getBase64EncodedImage()
{
return $this->base64EncodedImage;
}
public function getPrice()
{
return $this->price;
}
public function getCurrency()
{
return $this->currency;
}
public function getAddressIgnorable()
{
return $this->addressIgnorable;
}
public function getSoldLimit()
{
return $this->soldLimit;
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getUrl()
{
return $this->url;
}
public function setUrl($url)
{
$this->url = $url;
}
public function getImageUrl()
{
return $this->imageUrl;
}
public function setImageUrl($imageUrl)
{
$this->imageUrl = $imageUrl;
}
}

View File

@@ -0,0 +1,18 @@
<?php
namespace Iyzipay\Model\Iyzilink;
use Iyzipay\Model\Mapper\Iyzilink\IyziLinkSaveProductMapper;
use Iyzipay\Request\Iyzilink\IyziLinkSaveProductRequest;
use Iyzipay\Options;
use Iyzipay\RequestStringBuilder;
class IyziLinkUpdateProduct extends IyziLinkSaveProductResource
{
public static function create(IyziLinkSaveProductRequest $request, Options $options, $token)
{
$uri = $options->getBaseUrl() . "/v2/iyzilink/products/" . $token . RequestStringBuilder::requestToStringQuery($request, null);
$rawResult = parent::httpClient()->put($uri, parent::getHttpHeadersV2($uri, $request, $options), $request->toJsonString());
return IyziLinkSaveProductMapper::create($rawResult)->jsonDecode()->mapIyziLinkSaveProduct(new IyziLinkSaveProduct());
}
}

View File

@@ -0,0 +1,114 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\BaseModel;
use Iyzipay\JsonBuilder;
use Iyzipay\RequestStringBuilder;
class IyziupAddress extends BaseModel
{
private $alias;
private $addressLine1;
private $addressLine2;
private $zipCode;
private $contactName;
private $city;
private $country;
public function getAlias()
{
return $this->alias;
}
public function setAlias($alias)
{
$this->alias = $alias;
}
public function getAddressLine1()
{
return $this->addressLine1;
}
public function setAddressLine1($addressLine1)
{
$this->addressLine1 = $addressLine1;
}
public function getAddressLine2()
{
return $this->addressLine2;
}
public function setAddressLine2($addressLine2)
{
$this->addressLine2 = $addressLine2;
}
public function getZipCode()
{
return $this->zipCode;
}
public function setZipCode($zipCode)
{
$this->zipCode = $zipCode;
}
public function getContactName()
{
return $this->contactName;
}
public function setContactName($contactName)
{
$this->contactName = $contactName;
}
public function getCity()
{
return $this->city;
}
public function setCity($city)
{
$this->city = $city;
}
public function getCountry()
{
return $this->country;
}
public function setCountry($country)
{
$this->country = $country;
}
public function getJsonObject()
{
return JsonBuilder::create()
->add("alias", $this->getAlias())
->add("addressLine1", $this->getAddressLine1())
->add("addressLine2", $this->getAddressLine2())
->add("zipCode", $this->getZipCode())
->add("contactName", $this->getContactName())
->add("city", $this->getCity())
->add("country", $this->getCountry())
->getObject();
}
public function toPKIRequestString()
{
return RequestStringBuilder::create()
->append("alias", $this->getAlias())
->append("addressLine1", $this->getAddressLine1())
->append("addressLine2", $this->getAddressLine2())
->append("zipCode", $this->getZipCode())
->append("contactName", $this->getContactName())
->append("city", $this->getCity())
->append("country", $this->getCountry())
->getRequestString();
}
}

View File

@@ -0,0 +1,96 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\IyziupFormMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveIyziupFormRequest;
class IyziupForm extends IyzipayResource
{
private $orderResponseStatus;
private $token;
private $callbackUrl;
private $consumer;
private $shippingAddress;
private $billingAddress;
private $paymentDetail;
public static function retrieve(RetrieveIyziupFormRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/v1/iyziup/form/order/retrieve", parent::getHttpHeaders($request, $options), $request->toJsonString());
return IyziupFormMapper::create($rawResult)->jsonDecode()->mapIyziupForm(new IyziupForm());
}
public function getOrderResponseStatus()
{
return $this->orderResponseStatus;
}
public function setOrderResponseStatus($orderResponseStatus)
{
$this->orderResponseStatus = $orderResponseStatus;
}
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getCallbackUrl()
{
return $this->callbackUrl;
}
public function setCallbackUrl($callbackUrl)
{
$this->callbackUrl = $callbackUrl;
}
public function getConsumer()
{
return $this->consumer;
}
public function setConsumer($consumer)
{
$this->consumer = $consumer;
}
public function getShippingAddress()
{
return $this->shippingAddress;
}
public function setShippingAddress($shippingAddress)
{
$this->shippingAddress = $shippingAddress;
}
public function getBillingAddress()
{
return $this->billingAddress;
}
public function setBillingAddress($billingAddress)
{
$this->billingAddress = $billingAddress;
}
public function getPaymentDetail()
{
return $this->paymentDetail;
}
public function setPaymentDetail($paymentDetail)
{
$this->paymentDetail = $paymentDetail;
}
}

View File

@@ -0,0 +1,16 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\Model\Mapper\IyziupFormInitializeMapper;
use Iyzipay\Options;
use Iyzipay\Request\CreateIyziupFormInitializeRequest;
class IyziupFormInitialize extends IyziupFormInitializeResource
{
public static function create(CreateIyziupFormInitializeRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/v1/iyziup/form/initialize", parent::getHttpHeaders($request, $options), $request->toJsonString());
return IyziupFormInitializeMapper::create($rawResult)->jsonDecode()->mapIyziupFormInitialize(new IyziupFormInitialize());
}
}

View File

@@ -0,0 +1,42 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
class IyziupFormInitializeResource extends IyzipayResource
{
private $token;
private $content;
private $tokenExpireTime;
public function getToken()
{
return $this->token;
}
public function setToken($token)
{
$this->token = $token;
}
public function getContent()
{
return $this->content;
}
public function setContent($content)
{
$this->content = $content;
}
public function getTokenExpireTime()
{
return $this->tokenExpireTime;
}
public function setTokenExpireTime($tokenExpireTime)
{
$this->tokenExpireTime = $tokenExpireTime;
}
}

View File

@@ -0,0 +1,9 @@
<?php
namespace Iyzipay\Model;
class Locale
{
const TR = "tr";
const EN = "en";
}

View File

@@ -0,0 +1,73 @@
<?php
namespace Iyzipay\Model;
use Iyzipay\IyzipayResource;
use Iyzipay\Model\Mapper\LoyaltyMapper;
use Iyzipay\Options;
use Iyzipay\Request\RetrieveLoyaltyRequest;
class Loyalty extends IyzipayResource
{
public static function retrieve(RetrieveLoyaltyRequest $request, Options $options)
{
$rawResult = parent::httpClient()->post($options->getBaseUrl() . "/payment/loyalty/inquire", parent::getHttpHeaders($request, $options), $request->toJsonString());
return LoyaltyMapper::create($rawResult)->jsonDecode()->mapLoyalty(new Loyalty());
}
private $points;
private $amount;
private $cardBank;
private $cardFamily;
private $currency;
public function getPoints()
{
return $this->points;
}
public function setPoints($points)
{
$this->points = $points;
}
public function getAmount()
{
return $this->amount;
}
public function setAmount($amount)
{
$this->amount = $amount;
}
public function getCardBank()
{
return $this->cardBank;
}
public function setCardBank($cardBank)
{
$this->cardBank = $cardBank;
}
public function getCardFamily()
{
return $this->cardFamily;
}
public function setCardFamily($cardFamily)
{
$this->cardFamily = $cardFamily;
}
public function getCurrency()
{
return $this->currency;
}
public function setCurrency($currency)
{
$this->currency = $currency;
}
}

View File

@@ -0,0 +1,33 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Address;
class AddressMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new AddressMapper($rawResult);
}
public function mapAddressFrom(Address $address, $jsonObject)
{
if (isset($jsonObject->address)) {
$address->setAddress($jsonObject->address);
}
if (isset($jsonObject->zipCode)) {
$address->setZipCode($jsonObject->zipCode);
}
if (isset($jsonObject->contactName)) {
$address->setContactName($jsonObject->contactName);
}
if (isset($jsonObject->city)) {
$address->setCity($jsonObject->city);
}
if (isset($jsonObject->country)) {
$address->setCountry($jsonObject->country);
}
return $address;
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Apm;
class ApmMapper extends ApmResourceMapper
{
public static function create($rawResult = null)
{
return new ApmMapper($rawResult);
}
public function mapApmFrom(Apm $apm, $jsonObject)
{
parent::mapApmResourceFrom($apm, $jsonObject);
return $apm;
}
public function mapApm(Apm $apm)
{
return $this->mapApmFrom($apm, $this->jsonObject);
}
}

View File

@@ -0,0 +1,94 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\ApmResource;
class ApmResourceMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new ApmResourceMapper($rawResult);
}
public function mapApmResourceFrom(ApmResource $apmResource, $jsonObject)
{
parent::mapResourceFrom($apmResource, $jsonObject);
if (isset($jsonObject->redirectUrl)) {
$apmResource->setRedirectUrl($jsonObject->redirectUrl);
}
if (isset($jsonObject->price)) {
$apmResource->setPrice($jsonObject->price);
}
if (isset($jsonObject->paidPrice)) {
$apmResource->setPaidPrice($jsonObject->paidPrice);
}
if (isset($jsonObject->paymentId)) {
$apmResource->setPaymentId($jsonObject->paymentId);
}
if (isset($jsonObject->merchantCommissionRate)) {
$apmResource->setMerchantCommissionRate($jsonObject->merchantCommissionRate);
}
if (isset($jsonObject->merchantCommissionRateAmount)) {
$apmResource->setMerchantCommissionRateAmount($jsonObject->merchantCommissionRateAmount);
}
if (isset($jsonObject->iyziCommissionRateAmount)) {
$apmResource->setIyziCommissionRateAmount($jsonObject->iyziCommissionRateAmount);
}
if (isset($jsonObject->iyziCommissionFee)) {
$apmResource->setIyziCommissionFee($jsonObject->iyziCommissionFee);
}
if (isset($jsonObject->basketId)) {
$apmResource->setBasketId($jsonObject->basketId);
}
if (isset($jsonObject->currency)) {
$apmResource->setCurrency($jsonObject->currency);
}
if (isset($jsonObject->itemTransactions)) {
$apmResource->setPaymentItems(PaymentItemMapper::create()->mapPaymentItems($jsonObject->itemTransactions));
}
if (isset($jsonObject->phase)) {
$apmResource->setPhase($jsonObject->phase);
}
if (isset($jsonObject->accountHolderName)) {
$apmResource->setAccountHolderName($jsonObject->accountHolderName);
}
if (isset($jsonObject->accountNumber)) {
$apmResource->setAccountNumber($jsonObject->accountNumber);
}
if (isset($jsonObject->bankName)) {
$apmResource->setBankName($jsonObject->bankName);
}
if (isset($jsonObject->bankCode)) {
$apmResource->setBankCode($jsonObject->bankCode);
}
if (isset($jsonObject->bic)) {
$apmResource->setBic($jsonObject->bic);
}
if (isset($jsonObject->paymentPurpose)) {
$apmResource->setPaymentPurpose($jsonObject->paymentPurpose);
}
if (isset($jsonObject->iban)) {
$apmResource->setIban($jsonObject->iban);
}
if (isset($jsonObject->countryCode)) {
$apmResource->setCountryCode($jsonObject->countryCode);
}
if (isset($jsonObject->apm)) {
$apmResource->setApm($jsonObject->apm);
}
if (isset($jsonObject->mobilePhone)) {
$apmResource->setMobilePhone($jsonObject->mobilePhone);
}
if (isset($jsonObject->paymentStatus)) {
$apmResource->setPaymentStatus($jsonObject->paymentStatus);
}
return $apmResource;
}
public function mapApmResource(ApmResource $apmResource)
{
return $this->mapApmResourceFrom($apmResource, $this->jsonObject);
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Approval;
class ApprovalMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new ApprovalMapper($rawResult);
}
public function mapApprovalFrom(Approval $approval, $jsonObject)
{
parent::mapResourceFrom($approval, $jsonObject);
if (isset($jsonObject->paymentTransactionId)) {
$approval->setPaymentTransactionId($jsonObject->paymentTransactionId);
}
return $approval;
}
public function mapApproval(Approval $approval)
{
return $this->mapApprovalFrom($approval, $this->jsonObject);
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicBkmInitialize;
class BasicBkmInitializeMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BasicBkmInitializeMapper($rawResult);
}
public function mapBasicBkmInitializeFrom(BasicBkmInitialize $initialize, $jsonObject)
{
parent::mapResourceFrom($initialize, $jsonObject);
if (isset($jsonObject->htmlContent)) {
$initialize->setHtmlContent(base64_decode($jsonObject->htmlContent));
}
if (isset($jsonObject->token)) {
$initialize->setToken($jsonObject->token);
}
return $initialize;
}
public function mapBasicBkmInitialize(BasicBkmInitialize $initialize)
{
return $this->mapBasicBkmInitializeFrom($initialize, $this->jsonObject);
}
}

View File

@@ -0,0 +1,34 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicBkm;
class BasicBkmMapper extends BasicPaymentResourceMapper
{
public static function create($rawResult = null)
{
return new BasicBkmMapper($rawResult);
}
public function mapBasicBkmFrom(BasicBkm $auth, $jsonObject)
{
parent::mapBasicPaymentResourceFrom($auth, $jsonObject);
if (isset($jsonObject->token)) {
$auth->setToken($jsonObject->token);
}
if (isset($jsonObject->callbackUrl)) {
$auth->setCallbackUrl($jsonObject->callbackUrl);
}
if (isset($jsonObject->paymentStatus)) {
$auth->setPaymentStatus($jsonObject->paymentStatus);
}
return $auth;
}
public function mapBasicBkm(BasicBkm $auth)
{
return $this->mapBasicBkmFrom($auth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicPayment;
class BasicPaymentMapper extends BasicPaymentResourceMapper
{
public static function create($rawResult = null)
{
return new BasicPaymentMapper($rawResult);
}
public function mapBasicPaymentFrom(BasicPayment $payment, $jsonObject)
{
parent::mapBasicPaymentResourceFrom($payment, $jsonObject);
return $payment;
}
public function mapBasicPayment(BasicPayment $payment)
{
return $this->mapBasicPaymentFrom($payment, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicPaymentPostAuth;
class BasicPaymentPostAuthMapper extends BasicPaymentResourceMapper
{
public static function create($rawResult = null)
{
return new BasicPaymentPostAuthMapper($rawResult);
}
public function mapBasicPaymentPostAuthFrom(BasicPaymentPostAuth $postAuth, $jsonObject)
{
parent::mapBasicPaymentResourceFrom($postAuth, $jsonObject);
return $postAuth;
}
public function mapBasicPaymentPostAuth(BasicPaymentPostAuth $postAuth)
{
return $this->mapBasicPaymentPostAuthFrom($postAuth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicPaymentPreAuth;
class BasicPaymentPreAuthMapper extends BasicPaymentResourceMapper
{
public static function create($rawResult = null)
{
return new BasicPaymentPreAuthMapper($rawResult);
}
public function mapBasicPaymentPreAuthFrom(BasicPaymentPreAuth $preAuth, $jsonObject)
{
parent::mapBasicPaymentResourceFrom($preAuth, $jsonObject);
return $preAuth;
}
public function mapBasicPaymentPreAuth(BasicPaymentPreAuth $preAuth)
{
return $this->mapBasicPaymentPreAuthFrom($preAuth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,79 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicPaymentResource;
class BasicPaymentResourceMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BasicPaymentResourceMapper($rawResult);
}
public function mapBasicPaymentResourceFrom(BasicPaymentResource $payment, $jsonObject)
{
parent::mapResourceFrom($payment, $jsonObject);
if (isset($jsonObject->price)) {
$payment->setPrice($jsonObject->price);
}
if (isset($jsonObject->paidPrice)) {
$payment->setPaidPrice($jsonObject->paidPrice);
}
if (isset($jsonObject->installment)) {
$payment->setInstallment($jsonObject->installment);
}
if (isset($jsonObject->paymentId)) {
$payment->setPaymentId($jsonObject->paymentId);
}
if (isset($jsonObject->merchantCommissionRate)) {
$payment->setMerchantCommissionRate($jsonObject->merchantCommissionRate);
}
if (isset($jsonObject->merchantCommissionRateAmount)) {
$payment->setMerchantCommissionRateAmount($jsonObject->merchantCommissionRateAmount);
}
if (isset($jsonObject->iyziCommissionFee)) {
$payment->setIyziCommissionFee($jsonObject->iyziCommissionFee);
}
if (isset($jsonObject->cardType)) {
$payment->setCardType($jsonObject->cardType);
}
if (isset($jsonObject->cardAssociation)) {
$payment->setCardAssociation($jsonObject->cardAssociation);
}
if (isset($jsonObject->cardFamily)) {
$payment->setCardFamily($jsonObject->cardFamily);
}
if (isset($jsonObject->cardToken)) {
$payment->setCardToken($jsonObject->cardToken);
}
if (isset($jsonObject->cardUserKey)) {
$payment->setCardUserKey($jsonObject->cardUserKey);
}
if (isset($jsonObject->binNumber)) {
$payment->setBinNumber($jsonObject->binNumber);
}
if (isset($jsonObject->paymentTransactionId)) {
$payment->setPaymentTransactionId($jsonObject->paymentTransactionId);
}
if (isset($jsonObject->authCode)) {
$payment->setAuthCode($jsonObject->authCode);
}
if (isset($jsonObject->connectorName)) {
$payment->setConnectorName($jsonObject->connectorName);
}
if (isset($jsonObject->currency)) {
$payment->setCurrency($jsonObject->currency);
}
if (isset($jsonObject->phase)) {
$payment->setPhase($jsonObject->phase);
}
return $payment;
}
public function mapBasicPaymentResource(BasicPaymentResource $payment)
{
return $this->mapBasicPaymentResourceFrom($payment, $this->jsonObject);
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicThreedsInitialize;
class BasicThreedsInitializeMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BasicThreedsInitializeMapper($rawResult);
}
public function mapBasicThreedsInitializeFrom(BasicThreedsInitialize $initialize, $jsonObject)
{
parent::mapResourceFrom($initialize, $jsonObject);
if (isset($jsonObject->threeDSHtmlContent)) {
$initialize->setHtmlContent(base64_decode($jsonObject->threeDSHtmlContent));
}
return $initialize;
}
public function mapBasicThreedsInitialize(BasicThreedsInitialize $initialize)
{
return $this->mapBasicThreedsInitializeFrom($initialize, $this->jsonObject);
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicThreedsInitializePreAuth;
class BasicThreedsInitializePreAuthMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BasicThreedsInitializePreAuthMapper($rawResult);
}
public function mapBasicThreedsInitializePreAuthFrom(BasicThreedsInitializePreAuth $initializePreAuth, $jsonObject)
{
parent::mapResourceFrom($initializePreAuth, $jsonObject);
if (isset($jsonObject->threeDSHtmlContent)) {
$initializePreAuth->setHtmlContent(base64_decode($jsonObject->threeDSHtmlContent));
}
return $initializePreAuth;
}
public function mapBasicThreedsInitializePreAuth(BasicThreedsInitializePreAuth $initializePreAuth)
{
return $this->mapBasicThreedsInitializePreAuthFrom($initializePreAuth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BasicThreedsPayment;
class BasicThreedsPaymentMapper extends BasicPaymentResourceMapper
{
public static function create($rawResult = null)
{
return new BasicThreedsPaymentMapper($rawResult);
}
public function mapBasicThreedsPaymentFrom(BasicThreedsPayment $auth, $jsonObject)
{
parent::mapBasicPaymentResourceFrom($auth, $jsonObject);
return $auth;
}
public function mapBasicThreedsPayment(BasicThreedsPayment $auth)
{
return $this->mapBasicThreedsPaymentFrom($auth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,46 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BinNumber;
class BinNumberMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BinNumberMapper($rawResult);
}
public function mapBinNumberFrom(BinNumber $binNumber, $jsonObject)
{
parent::mapResourceFrom($binNumber, $jsonObject);
if (isset($jsonObject->binNumber)) {
$binNumber->setBinNumber($jsonObject->binNumber);
}
if (isset($jsonObject->cardType)) {
$binNumber->setCardType($jsonObject->cardType);
}
if (isset($jsonObject->cardAssociation)) {
$binNumber->setCardAssociation($jsonObject->cardAssociation);
}
if (isset($jsonObject->cardFamily)) {
$binNumber->setCardFamily($jsonObject->cardFamily);
}
if (isset($jsonObject->bankName)) {
$binNumber->setBankName($jsonObject->bankName);
}
if (isset($jsonObject->bankCode)) {
$binNumber->setBankCode($jsonObject->bankCode);
}
if (isset($jsonObject->commercial)) {
$binNumber->setCommercial($jsonObject->commercial);
}
return $binNumber;
}
public function mapBinNumber(BinNumber $binNumber)
{
return $this->mapBinNumberFrom($binNumber, $this->jsonObject);
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BkmInitialize;
class BkmInitializeMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BkmInitializeMapper($rawResult);
}
public function mapBkmInitializeFrom(BkmInitialize $initialize, $jsonObject)
{
parent::mapResourceFrom($initialize, $jsonObject);
if (isset($jsonObject->htmlContent)) {
$initialize->setHtmlContent(base64_decode($jsonObject->htmlContent));
}
if (isset($jsonObject->token)) {
$initialize->setToken($jsonObject->token);
}
return $initialize;
}
public function mapBkmInitialize(BkmInitialize $initialize)
{
return $this->mapBkmInitializeFrom($initialize, $this->jsonObject);
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Bkm;
class BkmMapper extends PaymentResourceMapper
{
public static function create($rawResult = null)
{
return new BkmMapper($rawResult);
}
public function mapBkmFrom(Bkm $auth, $jsonObject)
{
parent::mapPaymentResourceFrom($auth, $jsonObject);
if (isset($jsonObject->token)) {
$auth->setToken($jsonObject->token);
}
if (isset($jsonObject->callbackUrl)) {
$auth->setCallbackUrl($jsonObject->callbackUrl);
}
return $auth;
}
public function mapBkm(Bkm $auth)
{
return $this->mapBkmFrom($auth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,59 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\BankTransfer;
use Iyzipay\Model\BouncedBankTransferList;
class BouncedBankTransferListMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new BouncedBankTransferListMapper($rawResult);
}
public function mapBouncedBankTransferListFrom(BouncedBankTransferList $transferList, $jsonObject)
{
parent::mapResourceFrom($transferList, $jsonObject);
if (isset($jsonObject->bouncedRows)) {
$transferList->setBankTransfers($this->mapBankTransfers($jsonObject->bouncedRows));
}
return $transferList;
}
public function mapBouncedBankTransferList(BouncedBankTransferList $transferList)
{
return $this->mapBouncedBankTransferListFrom($transferList, $this->jsonObject);
}
private function mapBankTransfers($bouncedRows)
{
$bankTransfers = array();
foreach ($bouncedRows as $index => $bouncedRow) {
$bankTransfer = new BankTransfer();
if (isset($bouncedRow->subMerchantKey)) {
$bankTransfer->setSubMerchantKey($bouncedRow->subMerchantKey);
}
if (isset($bouncedRow->iban)) {
$bankTransfer->setIban($bouncedRow->iban);
}
if (isset($bouncedRow->contactName)) {
$bankTransfer->setContactName($bouncedRow->contactName);
}
if (isset($bouncedRow->contactSurname)) {
$bankTransfer->setContactSurname($bouncedRow->contactSurname);
}
if (isset($bouncedRow->legalCompanyTitle)) {
$bankTransfer->setLegalCompanyTitle($bouncedRow->legalCompanyTitle);
}
if (isset($bouncedRow->marketplaceSubmerchantType)) {
$bankTransfer->setMarketplaceSubMerchantType($bouncedRow->marketplaceSubmerchantType);
}
$bankTransfers[$index] = $bankTransfer;
}
return $bankTransfers;
}
}

View File

@@ -0,0 +1,40 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Cancel;
class CancelMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new CancelMapper($rawResult);
}
public function mapCancelFrom(Cancel $cancel, $jsonObject)
{
parent::mapResourceFrom($cancel, $jsonObject);
if (isset($jsonObject->paymentId)) {
$cancel->setPaymentId($jsonObject->paymentId);
}
if (isset($jsonObject->price)) {
$cancel->setPrice($jsonObject->price);
}
if (isset($jsonObject->currency)) {
$cancel->setCurrency($jsonObject->currency);
}
if (isset($jsonObject->connectorName)) {
$cancel->setConnectorName($jsonObject->connectorName);
}
if (isset($jsonObject->authCode)) {
$cancel->setAuthCode($jsonObject->authCode);
}
return $cancel;
}
public function mapCancel(Cancel $cancel)
{
return $this->mapCancelFrom($cancel, $this->jsonObject);
}
}

View File

@@ -0,0 +1,42 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Card;
use Iyzipay\Model\CardList;
class CardListMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new CardListMapper($rawResult);
}
public function mapCardListFrom(CardList $cardList, $jsonObject)
{
parent::mapResourceFrom($cardList, $jsonObject);
if (isset($jsonObject->cardUserKey)) {
$cardList->setCardUserKey($jsonObject->cardUserKey);
}
if (isset($jsonObject->cardDetails)) {
$cardList->setCardDetails($this->mapCardDetails($jsonObject->cardDetails));
}
return $cardList;
}
public function mapCardList(CardList $cardList)
{
return $this->mapCardListFrom($cardList, $this->jsonObject);
}
private function mapCardDetails($cardDetails)
{
$cards = array();
foreach ($cardDetails as $index => $cardDetail) {
$cards[$index] = CardMapper::create()->mapCardFrom(new Card(), $cardDetail);
}
return $cards;
}
}

View File

@@ -0,0 +1,58 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Card;
class CardMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new CardMapper($rawResult);
}
public function mapCardFrom(Card $card, $jsonObject)
{
parent::mapResourceFrom($card, $jsonObject);
if (isset($jsonObject->externalId)) {
$card->setExternalId($jsonObject->externalId);
}
if (isset($jsonObject->email)) {
$card->setEmail($jsonObject->email);
}
if (isset($jsonObject->cardUserKey)) {
$card->setCardUserKey($jsonObject->cardUserKey);
}
if (isset($jsonObject->cardToken)) {
$card->setCardToken($jsonObject->cardToken);
}
if (isset($jsonObject->cardAlias)) {
$card->setCardAlias($jsonObject->cardAlias);
}
if (isset($jsonObject->binNumber)) {
$card->setBinNumber($jsonObject->binNumber);
}
if (isset($jsonObject->cardType)) {
$card->setCardType($jsonObject->cardType);
}
if (isset($jsonObject->cardAssociation)) {
$card->setCardAssociation($jsonObject->cardAssociation);
}
if (isset($jsonObject->cardFamily)) {
$card->setCardFamily($jsonObject->cardFamily);
}
if (isset($jsonObject->cardBankCode)) {
$card->setCardBankCode($jsonObject->cardBankCode);
}
if (isset($jsonObject->cardBankName)) {
$card->setCardBankName($jsonObject->cardBankName);
}
return $card;
}
public function mapCard(Card $card)
{
return $this->mapCardFrom($card, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\CheckoutFormInitialize;
class CheckoutFormInitializeMapper extends CheckoutFormInitializeResourceMapper
{
public static function create($rawResult = null)
{
return new CheckoutFormInitializeMapper($rawResult);
}
public function mapCheckoutFormInitializeFrom(CheckoutFormInitialize $initialize, $jsonObject)
{
parent::mapCheckoutFormInitializeResourceFrom($initialize, $jsonObject);
return $initialize;
}
public function mapCheckoutFormInitialize(CheckoutFormInitialize $initialize)
{
return $this->mapCheckoutFormInitializeFrom($initialize, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\CheckoutFormInitializePreAuth;
class CheckoutFormInitializePreAuthMapper extends CheckoutFormInitializeResourceMapper
{
public static function create($rawResult = null)
{
return new CheckoutFormInitializePreAuthMapper($rawResult);
}
public function mapCheckoutFormInitializePreAuthFrom(CheckoutFormInitializePreAuth $initialize, $jsonObject)
{
parent::mapCheckoutFormInitializeResourceFrom($initialize, $jsonObject);
return $initialize;
}
public function mapCheckoutFormInitializePreAuth(CheckoutFormInitializePreAuth $initialize)
{
return $this->mapCheckoutFormInitializePreAuthFrom($initialize, $this->jsonObject);
}
}

View File

@@ -0,0 +1,37 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\CheckoutFormInitializeResource;
class CheckoutFormInitializeResourceMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new CheckoutFormInitializeMapper($rawResult);
}
public function mapCheckoutFormInitializeResourceFrom(CheckoutFormInitializeResource $initialize, $jsonObject)
{
parent::mapResourceFrom($initialize, $jsonObject);
if (isset($jsonObject->token)) {
$initialize->setToken($jsonObject->token);
}
if (isset($jsonObject->checkoutFormContent)) {
$initialize->setCheckoutFormContent($jsonObject->checkoutFormContent);
}
if (isset($jsonObject->tokenExpireTime)) {
$initialize->setTokenExpireTime($jsonObject->tokenExpireTime);
}
if (isset($jsonObject->paymentPageUrl)) {
$initialize->setPaymentPageUrl($jsonObject->paymentPageUrl);
}
return $initialize;
}
public function mapCheckoutFormInitializeResource(CheckoutFormInitializeResource $initialize)
{
return $this->mapCheckoutFormInitializeResourceFrom($initialize, $this->jsonObject);
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\CheckoutForm;
class CheckoutFormMapper extends PaymentResourceMapper
{
public static function create($rawResult = null)
{
return new CheckoutFormMapper($rawResult);
}
public function mapCheckoutFormFrom(CheckoutForm $auth, $jsonObject)
{
parent::mapPaymentResourceFrom($auth, $jsonObject);
if (isset($jsonObject->token)) {
$auth->setToken($jsonObject->token);
}
if (isset($jsonObject->callbackUrl)) {
$auth->setCallbackUrl($jsonObject->callbackUrl);
}
return $auth;
}
public function mapCheckoutForm(CheckoutForm $auth)
{
return $this->mapCheckoutFormFrom($auth, $this->jsonObject);
}
}

View File

@@ -0,0 +1,33 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Consumer;
class ConsumerMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new ConsumerMapper($rawResult);
}
public function mapConsumerFrom(Consumer $consumer, $jsonObject)
{
if (isset($jsonObject->name)) {
$consumer->setName($jsonObject->name);
}
if (isset($jsonObject->surname)) {
$consumer->setSurname($jsonObject->surname);
}
if (isset($jsonObject->identityNumber)) {
$consumer->setIdentityNumber($jsonObject->identityNumber);
}
if (isset($jsonObject->email)) {
$consumer->setEmail($jsonObject->email);
}
if (isset($jsonObject->gsmNumber)) {
$consumer->setGsmNumber($jsonObject->gsmNumber);
}
return $consumer;
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\CrossBookingFromSubMerchant;
class CrossBookingFromSubMerchantMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new CrossBookingFromSubMerchantMapper($rawResult);
}
public function mapCrossBookingFromSubMerchantFrom(CrossBookingFromSubMerchant $booking, $jsonObject)
{
parent::mapResourceFrom($booking, $jsonObject);
return $booking;
}
public function mapCrossBookingFromSubMerchant(CrossBookingFromSubMerchant $booking)
{
return $this->mapCrossBookingFromSubMerchantFrom($booking, $this->jsonObject);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\CrossBookingToSubMerchant;
class CrossBookingToSubMerchantMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new CrossBookingToSubMerchantMapper($rawResult);
}
public function mapCrossBookingToSubMerchantFrom(CrossBookingToSubMerchant $booking, $jsonObject)
{
parent::mapResourceFrom($booking, $jsonObject);
return $booking;
}
public function mapCrossBookingToSubMerchant(CrossBookingToSubMerchant $booking)
{
return $this->mapCrossBookingToSubMerchantFrom($booking, $this->jsonObject);
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace Iyzipay\Model\Mapper;
use Iyzipay\Model\Disapproval;
class DisapprovalMapper extends IyzipayResourceMapper
{
public static function create($rawResult = null)
{
return new DisapprovalMapper($rawResult);
}
public function mapDisapprovalFrom(Disapproval $disapproval, $jsonObject)
{
parent::mapResourceFrom($disapproval, $jsonObject);
if (isset($jsonObject->paymentTransactionId)) {
$disapproval->setPaymentTransactionId($jsonObject->paymentTransactionId);
}
return $disapproval;
}
public function mapDisapproval(Disapproval $disapproval)
{
return $this->mapDisapprovalFrom($disapproval, $this->jsonObject);
}
}

Some files were not shown because too many files have changed in this diff Show More