Giter Club home page Giter Club logo

iyzipay-php's Introduction

iyzipay-php

Latest Stable Version Coverage Status

You can sign up for an iyzico account at https://iyzico.com

Requirements

PHP 5.6 and later.

Note

Minimum TLS v1.2 will be supported after March 2018. Please upgrade your openssl version to minimum 1.0.1. If you have any questions, please open an issue on Github or contact us at [email protected].

Installation

Composer

You can install the bindings via Composer. Run the following command:

composer require iyzico/iyzipay-php

To use the bindings, use Composer's autoload:

require_once('vendor/autoload.php');

Manual Installation

If you do not wish to use Composer, you can download the latest release. Then, to use the bindings, include the IyzipayBootstrap.php file.

require_once('/path/to/iyzipay-php/IyzipayBootstrap.php');

Usage

$options = new \Iyzipay\Options();
$options->setApiKey("your api key");
$options->setSecretKey("your secret key");
$options->setBaseUrl("https://sandbox-api.iyzipay.com");
        
$request = new \Iyzipay\Request\CreatePaymentRequest();
$request->setLocale(\Iyzipay\Model\Locale::TR);
$request->setConversationId("123456789");
$request->setPrice("1");
$request->setPaidPrice("1.2");
$request->setCurrency(\Iyzipay\Model\Currency::TL);
$request->setInstallment(1);
$request->setBasketId("B67832");
$request->setPaymentChannel(\Iyzipay\Model\PaymentChannel::WEB);
$request->setPaymentGroup(\Iyzipay\Model\PaymentGroup::PRODUCT);

$paymentCard = new \Iyzipay\Model\PaymentCard();
$paymentCard->setCardHolderName("John Doe");
$paymentCard->setCardNumber("5528790000000008");
$paymentCard->setExpireMonth("12");
$paymentCard->setExpireYear("2030");
$paymentCard->setCvc("123");
$paymentCard->setRegisterCard(0);
$request->setPaymentCard($paymentCard);

$buyer = new \Iyzipay\Model\Buyer();
$buyer->setId("BY789");
$buyer->setName("John");
$buyer->setSurname("Doe");
$buyer->setGsmNumber("+905350000000");
$buyer->setEmail("[email protected]");
$buyer->setIdentityNumber("74300864791");
$buyer->setLastLoginDate("2015-10-05 12:43:35");
$buyer->setRegistrationDate("2013-04-21 15:12:09");
$buyer->setRegistrationAddress("Nidakule Göztepe, Merdivenköy Mah. Bora Sok. No:1");
$buyer->setIp("85.34.78.112");
$buyer->setCity("Istanbul");
$buyer->setCountry("Turkey");
$buyer->setZipCode("34732");
$request->setBuyer($buyer);

$shippingAddress = new \Iyzipay\Model\Address();
$shippingAddress->setContactName("Jane Doe");
$shippingAddress->setCity("Istanbul");
$shippingAddress->setCountry("Turkey");
$shippingAddress->setAddress("Nidakule Göztepe, Merdivenköy Mah. Bora Sok. No:1");
$shippingAddress->setZipCode("34742");
$request->setShippingAddress($shippingAddress);

$billingAddress = new \Iyzipay\Model\Address();
$billingAddress->setContactName("Jane Doe");
$billingAddress->setCity("Istanbul");
$billingAddress->setCountry("Turkey");
$billingAddress->setAddress("Nidakule Göztepe, Merdivenköy Mah. Bora Sok. No:1");
$billingAddress->setZipCode("34742");
$request->setBillingAddress($billingAddress);

$basketItems = array();
$firstBasketItem = new \Iyzipay\Model\BasketItem();
$firstBasketItem->setId("BI101");
$firstBasketItem->setName("Binocular");
$firstBasketItem->setCategory1("Collectibles");
$firstBasketItem->setCategory2("Accessories");
$firstBasketItem->setItemType(\Iyzipay\Model\BasketItemType::PHYSICAL);
$firstBasketItem->setPrice("0.3");
$basketItems[0] = $firstBasketItem;

$secondBasketItem = new \Iyzipay\Model\BasketItem();
$secondBasketItem->setId("BI102");
$secondBasketItem->setName("Game code");
$secondBasketItem->setCategory1("Game");
$secondBasketItem->setCategory2("Online Game Items");
$secondBasketItem->setItemType(\Iyzipay\Model\BasketItemType::VIRTUAL);
$secondBasketItem->setPrice("0.5");
$basketItems[1] = $secondBasketItem;

$thirdBasketItem = new \Iyzipay\Model\BasketItem();
$thirdBasketItem->setId("BI103");
$thirdBasketItem->setName("Usb");
$thirdBasketItem->setCategory1("Electronics");
$thirdBasketItem->setCategory2("Usb / Cable");
$thirdBasketItem->setItemType(\Iyzipay\Model\BasketItemType::PHYSICAL);
$thirdBasketItem->setPrice("0.2");
$basketItems[2] = $thirdBasketItem;
$request->setBasketItems($basketItems);

$payment = \Iyzipay\Model\Payment::create($request, $options);

See other samples under samples directory.

Development

Install dependencies:

composer install

Mock test cards

Test cards that can be used to simulate a successful payment:

Card Number Bank Card Type
5890040000000016 Akbank Master Card (Debit)
5526080000000006 Akbank Master Card (Credit)
4766620000000001 Denizbank Visa (Debit)
4603450000000000 Denizbank Visa (Credit)
4729150000000005 Denizbank Bonus Visa (Credit)
4987490000000002 Finansbank Visa (Debit)
5311570000000005 Finansbank Master Card (Credit)
9792020000000001 Finansbank Troy (Debit)
9792030000000000 Finansbank Troy (Credit)
5170410000000004 Garanti Bankası Master Card (Debit)
5400360000000003 Garanti Bankası Master Card (Credit)
374427000000003 Garanti Bankası American Express
4475050000000003 Halkbank Visa (Debit)
5528790000000008 Halkbank Master Card (Credit)
4059030000000009 HSBC Bank Visa (Debit)
5504720000000003 HSBC Bank Master Card (Credit)
5892830000000000 Türkiye İş Bankası Master Card (Debit)
4543590000000006 Türkiye İş Bankası Visa (Credit)
4910050000000006 Vakıfbank Visa (Debit)
4157920000000002 Vakıfbank Visa (Credit)
5168880000000002 Yapı ve Kredi Bankası Master Card (Debit)
5451030000000000 Yapı ve Kredi Bankası Master Card (Credit)

Cross border test cards:

Card Number Country
4054180000000007 Non-Turkish (Debit)
5400010000000004 Non-Turkish (Credit)

Test cards to get specific error codes:

Card Number Description
5406670000000009 Success but cannot be cancelled, refund or post auth
4111111111111129 Not sufficient funds
4129111111111111 Do not honour
4128111111111112 Invalid transaction
4127111111111113 Lost card
4126111111111114 Stolen card
4125111111111115 Expired card
4124111111111116 Invalid cvc2
4123111111111117 Not permitted to card holder
4122111111111118 Not permitted to terminal
4121111111111119 Fraud suspect
4120111111111110 Pickup card
4130111111111118 General error
4131111111111117 Success but mdStatus is 0
4141111111111115 Success but mdStatus is 4
4151111111111112 3dsecure initialize failed

Mock APM Accounts

Mock APM Accounts that can be used to simulate a payment with alternative payment method:

Account Holder Name Description
success Succeeded payment after succeeded initialize
fail-after-init Failed payment after succeeded initialize
error Failed initialize

Testing

Install dependencies as mentioned above (which will resolve PHPUnit), then you can run the test suite:

./vendor/bin/phpunit

Or to run an individual test file:

./vendor/bin/phpunit tests/Iyzipay/Tests/Model/PaymentTest.php

Test file is testing...

iyzipay-php's People

Contributors

alikorkmaz avatar byasarcse avatar caglarp avatar can3ry avatar efekocabas avatar erdemdmr avatar feyzullahdemir avatar iyzico-ci avatar ktoprakucar avatar kurttaylan avatar kurtulussahin avatar mahony0 avatar mehmetselim avatar mersancengiz avatar mgsmus avatar muratunal avatar mustafacantekir avatar nurettinbakkal avatar ramazangirgin avatar ramazanyetis avatar seferov avatar sotuzun avatar umit avatar utkuyildirim avatar yyenigun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iyzipay-php's Issues

Sistem hatası when creating new Subscription

I have been downloading and install this repo.
Test single charge products are working fine.
However tests with subscriptions are failing.

This is my code:

require('../app/Iyzipay/Config.php');

$request = new \Iyzipay\Request\Subscription\SubscriptionCreateProductRequest();
$request->setLocale("tr");
$request->setConversationId("1234567889");
$request->setName("subscrition1");
$request->setDescription("DescriptionOfProduct");

$result = \Iyzipay\Model\Subscription\SubscriptionProduct::create($request,Config::options());
dd($result);

This is the outcome:

SubscriptionProduct {#318 ▼
  -name: null
  -description: null
  -referenceCode: null
  -productStatus: null
  -pricingPlans: null
  -createdDate: null
  -status: "failure"
  -errorCode: "100001"
  -errorMessage: "Sistem hatası"
  -errorGroup: null
  -locale: null
  -systemTime: 1580137754176
  -conversationId: null
  -rawResult: "{"status":"failure","errorCode":"100001","errorMessage":"Sistem hatası","systemTime":1580137754176}"
}

I am using a Sandbox account. Is it this perhaps the reason?

[Request] Checkout Form callback as target="top"

Hi,

In the previous system the checkout form was posting to callback with target "top". This was enabling the checkout form to be used in iframe with no problem. In the new system Checkout form is posting to current window (if used in iframe the callback is called in iframe)

Can you implement the callback posting with target "top" as it was in the prior system.

Thanks

Composer Empty PSR-4 Namespace Problem

Merhaba,
composer/composer#5092 ve briannesbitt/Carbon#1374 konularında tartışılan empty namespace sorununu, biz de iyzipay entegrasyonu ile yaşıyoruz. Laravel tabanlı bir CMS sistemi üzerinde kullandığımız iyzipay-php eklentisinde de PHP kaynaklı empty namespace sorunu bulunuyor.

Bu sorunu composer i aşağıdaki şekilde güncelleyerek çözmek mümkün:

  "autoload": {
    "psr-4": {
      "Iyzipay\\": "src/Iyzipay/"
    }
  },

eğer bu düzenleme plugin için uygunsa PR gönderebilirim.
Teşekkürler

No feedback when SubscriptionCreateCheckoutForm::create() fails

When SubscriptionCreateCheckoutForm::create() fails it doesn't return any error message.

It simply return an empty object.
And the getToken() and getCheckoutFormContent() functions simply return null.

In this way it's not easy to figure out what went wrong.
I need each time to check each input field one by one.

For instance if I pass a fake phone number, SubscriptionCreateCheckoutForm::create() will fail, but it won't give any explanation on why it failed.

If there is input validation, is it possible to return the error messages in the response?

Throw "Email gönderilmesi zorunludur" error when card user key not sent

I'm not sure if this is an error or not but in my project I was trying to add second card to the user but I got this error. Then I realized I forgot to send CardUserKey parameter (I was sending null or empty value). But API responded with "Email gönderilmesi zorunludur.". I don't know why API throwing this error but If you can respond it with error like "Email veya Card User Key gönderilmesi zorunludur." or "Card User Key gönderilmesi zorunludur." It'll be more clear error message.

Btw, great Library and really clear code. Big congratulations to Iyzico team.

Iyzipay\Model\Payment::create() fonskiyonunda tüm değerler Null dönüyor.

Usage kısmında belirtildiği üzere tüm değerleri girerek request oluşturma fonksiyonunu çalışyırıyorum ama sonucunda paymentId dahil tüm her şey null olarak dönüyor.
var_dump() ile $request'i debug ettiğimde tüm verilerin uygun biçimde yerleştiğini gördüm.
create() fonksiyonunun içindeki $rawResult'u var_dump() ile debug ettiğimde false döndürdü.

Teşekkürler.

I am getting 1000 Geçersiz İmza Error

I am getting 1000 "geçersiz imza" error but cannot see why I am getting this error on CreateCheckoutFormInitializeRequest.
I am sending price with dot(.) as decimal seperator like 14.90

Method chaining for objects

I would like to use method chaining for objects. Example:

$paymentCard = (new \Iyzipay\Model\PaymentCard())
    ->setCardHolderName("John Doe")
    ->setCardNumber("5528790000000008")
    ->setExpireMonth("12")
    ->setExpireYear("2030")
    ->setCvc("123")
    ->setRegisterCard(0)
    ->setPaymentCard($paymentCard);

How about adding return $this to setters?

Card details on response

Hey,

Is it possible to have the following returned with response. They used to be present in the old API (as account object).

  • expire_month
  • expire_year
  • last_4_digits
  • cardholder

Thanks

paidPrice BKM Express ile ödemede bulunmuyor

Merhabalar,

Php ile entegrasyonunu yaptım ve kullanıyorum. BKM dökümanında paidPrice olup gönderimi zorunlu denmesine rağmen php kodlarında bunu göremedim.

Bilgilendirebilir misiniz?

Teşekkürler.

Setlocale problem

Merhaba,

Fonksiyon dosyasında setlocale(LC_ALL, 'tr_TR.UTF-8'); kullandığım esnada tüm iyzico cevapları boş dönüyor.

Geçici çözüm olarak bunu kullandığım tek yer olan tarih biçimlerine özel LC_TIME olarak güncelledim.

cardType problem

Hi there,

today we have noticed that when we use a common credit card php throws undefined property : cardType. Before we could use this code without issue.

The code

$installmentRequest = new Iyzipay\Request\RetrieveInstallmentInfoRequest();
        $installmentRequest->setLocale(Iyzipay\Model\Locale::TR);
        $installmentRequest->setConversationId($user->id . '-' . random_int(1, 10000));
        $installmentRequest->setBinNumber(substr($info->cc_no, 0, 6)); //bin
        $installmentRequest->setPrice($info->credit); // fiyat

        $installmentInfo    = Iyzipay\Model\InstallmentInfo::retrieve($installmentRequest, $this->Options());
        $installmentDetails = $installmentInfo->getRawResult();
        $installmentResult  = json_decode($installmentDetails);

        if ($installmentResult->installmentDetails[0]->cardType === 'DEBIT_CARD')

So what would be the issue?

Thanks in advance.

DefaultHttpClient missing curl parameters

When i use or test the php client for local environments (for me), http requests doesn't work as expected. No response is return from api server.

When i examine the code, found missing parameters for curl in DefaultHttpClient.php file. Perhaps the CURLOPT_SSL_VERIFYHOST and CURLOPT_SSL_VERIFYPEER parameters must set false for local using.

My environment:
Server: IIS 7.0
PHP: PHP for IIS 5.6.0

İngilizce için kusura bakmayın. :)

Re-record with registered card

Hi, I am trying to create a subscription system with your register card feature. But there are a problem. Your system is trying to re-record the same card even though the card information has already been saved in the system. Can u prevent it?

3ds base 64 decode

Diğer clientlarda 3dshtmlcontent client içinde base64 decode varken, node.js clientında bulunmuyor, ekleyebilir miyiz?

[Request] Disabling the installment per request

Hi,

Do you have plans to disable "Installment" when generating "Checkout Form" by request. This was present in the prior system. Thus enabling us to generate the form with no installment option when needed. The need for disabling the installment may rely on local logic for some merchants. For example in our system there is a configuration for merchants as "Taksitli satış için minumum sepet tutarı". By depending on the local logic and settings for the merchant we were able to generate the "Checkout Form" with no installment option.

Thanks.

Deprecation Notice: Class Iyzipay\Model\Mapper\Subscription\SubscriptionPricingplanMapper

Iyzico PHP kütüphanesini (v2.0.47) Laravel projemde "Generating optimized autoload files" işleminden sonra artık aşağıdaki uyarıyı vermeye başladı. Daha önce vermiyordu.

Deprecation Notice: Class Iyzipay\Model\Mapper\Subscription\SubscriptionPricingplanMapper located in /vendor/iyzico/iyzipay-php/src\Iyzipay\Model\Mapper\Subscription\SubscriptionPricingPlanMapper.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar://C:/ProgramData/ComposerSetup/bin/composer.phar/src/Composer/Autoload/ClassMapGenerator.php:201

What is ErrorCode 1001 "Api Bilgileri Bulunamadı"?

All the request information sent properly but i am taking that response back :

Iyzipay\Client\Ecom\Payment\Response\EcomPaymentCheckoutFormInitializeResponse::__set_state(array(
'token' => NULL,
'checkoutFormContent' => NULL,
'tokenExpireTime' => NULL,
'rawResult' => '{"status":"failure","errorCode":"1001","errorMessage":"api bilgileri bulunamadı","locale":"tr","systemTime":1486938124223,"conversationId":"58a0e00bbe06f_228"}',
'status' => 'failure',
'errorCode' => '1001',
'errorMessage' => 'api bilgileri bulunamadı',
'errorGroup' => NULL,
'locale' => 'tr',
'systemTime' => 1486938124223,
'conversationId' => '58a0e00bbe06f_228',
))

Please explain what is error code 1001. I didn't find it on api documentation.

Woocommerce plugin php7 error

Warning: Declaration of Iyzipay\Client\Ecom\Payment\Response\Mapper\EcomPaymentCheckoutFormInitializeResponseMapper::mapResponse(Iyzipay\Client\Ecom\Payment\Response\EcomPaymentCheckoutFormInitializeResponse $response, $jsonResult) should be compatible with Iyzipay\Client\ResponseMapper::mapResponse(Iyzipay\Client\Response $response, $jsonResult)

wp-content/plugins/iyzico-woocommerce-checkout-form/src/Iyzipay/Client/Ecom/Payment/Response/Mapper/EcomPaymentCheckoutFormInitializeResponseMapper.php on line 8

Iyzipay\Model\Payment::create() function returns empty

Hello,
I know there is another issue like that. But it's solution is not working for me.

I am using Laravel/Valet on macOS and I am trying to use Iyzipay\Model\Payment::create() function. But when I debug it, it returns empty.

I configured curl with a valid curl certificate. Also, I checked it with this command:
curl --cacert /Usr/local/etc/php/7.3/cacert.pem https://google.com
it seems it is working properly.

And my php.ini file like that
curl.cainfo = /Usr/local/etc/php/7.3/cacert.pem

But with this configuration, it still returns empty on my code.

Also, I tried

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

but it is not working, too. But I checked my sandbox account and noticed that all payments created successfully. But I need to verify payments on my side programmatically according to Iyzipay\Model\Payment::create()'s response.

I am waiting for your help. Thank you.

How to get the subscriptionReferenceCode?

For the API endpoints that concern subscriptions - retrieve, update, cancel subscription etc.. - the subscriptionReferenceCode is required.

I can easily see it in the dashboard - when I click to SUBSCRIPTIONS - Then click a item in the list - and in the Detail page I can see the reference code.

But the question is: How can I get it dynamically? In order to save it in the User table and use it afterwards for API request?

Sepet kırılım fiyatı, hesaplamalar, kargo fiyatı vb. koşullarda?

Merhabalar,

Diyelim ki elimizde A ürünü var. Fiyatı 79 TL. Bir diğer ürünümüz de B olsun ve yine fiyatı 79 TL fakat x opsiyonu ile eklendiğinde (+5 TL ) fiyatı 84 TL oluyor.

Sepetimizde Ara toplamımız 163 TL oldu. Diyelim ki 200 TL altı alışverişlerde sabit 5 TL kargo uygulamamız var. Böylelikle sepetimiz 168 TL oldu.

Merak ettiğim husus;

  • requeste hangi price ve paid price 'ı set etmeliyiz?
  • setBasketItems içine gönderdiğimiz her bir item için fiyatı kaça set etmeliyiz?

Devamlı sepet kırılımı ile ilgili failure mesajını almaktayım.

Teşekkürler

Card::create cevabı

Mehaba,

Kart kaydederken, hata döndüğünde hata ile ilgili mesajı alabildiğimiz bir metod bulunmuyor. Örnek olarak aşağıdaki değerler private olarak Iyzipay\Model\Card içerisinde bulunurken bunlara erişebileceğimiz herhangi bir metod bulunmuyor:

  -status: "failure"
  -errorCode: "12"
  -errorMessage: "Kart numarası geçersizdir"

Trying to subscribe. Get error: Müşterinin kartı olmalı

I am testing the API endpoints.

I have successfully created a customer:

$request = new \Iyzipay\Request\Subscription\SubscriptionCreateCustomerRequest();
$request->setLocale("tr");
$request->setConversationId("1234567789");
$customer = new \Iyzipay\Model\Customer();
$customer->setName("John");
$customer->setSurname("Doe");
$customer->setGsmNumber("+905555555555");
$customer->setEmail("[email protected]");
$customer->setIdentityNumber("11111111111");
$customer->setShippingContactName("John Doe");
$customer->setShippingCity("Istanbul");
$customer->setShippingCountry("Turkey");
$customer->setShippingAddress("Uskudar Burhaniye Mahallesi iyzico A.S");
$customer->setShippingZipCode("34660");
$customer->setBillingContactName("John Doe");
$customer->setBillingCity("Istanbul");
$customer->setBillingCountry("Turkey");
$customer->setBillingAddress("Uskudar Burhaniye Mahallesi iyzico A.S");
$customer->setBillingZipCode("34660");
$request->setCustomer($customer);

$result = \Iyzipay\Model\Subscription\SubscriptionCustomer::create($request,Config::options());

I have successfully created a card:

$request = new \Iyzipay\Request\CreateCardRequest();
$request->setLocale(\Iyzipay\Model\Locale::TR);
$request->setConversationId("1234567789");
$request->setCardUserKey("aaaaaaaa");

$cardInformation = new \Iyzipay\Model\CardInformation();
$cardInformation->setCardAlias("card alias");
$cardInformation->setCardHolderName("John Doe");
$cardInformation->setCardNumber("5528790000000008");
$cardInformation->setExpireMonth("12");
$cardInformation->setExpireYear("2030");
$request->setCard($cardInformation);

# make request
$card = \Iyzipay\Model\Card::create($request, Config::options());

And I get the cardUserKey in the response.

However when I try to subscribe the customer to a plan, I get the following error:

{"status":"failure","errorCode":"42205","errorMessage":"Ucs müşteri için aktif değil.","systemTime":1580224592946}

This is the code:

$request = new \Iyzipay\Request\Subscription\SubscriptionCreateWithCustomerRequest();
$request->setConversationId("1234567789");
$request->setLocale("tr");
$request->setPricingPlanReferenceCode("09543d2f-c5bb-4c40-8476-a67ab65eb614");
$request->setSubscriptionInitialStatus("ACTIVE");
$request->setCustomerReferenceCode("5ba7d928-181c-4120-9ba0-b395d95f1828");
$result = \Iyzipay\Model\Subscription\SubscriptionCreateWithCustomer::create($request,Config::options());

The question is:
How can I actually link the created card with the previously created user?

readme örneği ile alakalı

Selamlar,

Readme örneği denendiğinde çalışmıyor sanırım update gerek "readme.md" için

PHP message: PHP Fatal error: Uncaught Error: Call to undefined method Iyzipay\Model\Payment::create()

içinde Payment modelinde create static methodunu da göremedim açıkcası belki ben birşeyleri gözden kaçırıyorumdur fakat bunu aradıgımda examples folder'da da yok buradaki Readme.md örneği

PayWithIyzico eksik method

Merhaba,

PayWithIyzico::retrieve ile dönen sonuçlar içinde api dökümanında bahsettiğiniz mdStatus'u alabileceğimiz bir method bulunmuyor. (PaymentResource)

https://dev.iyzipay.com/tr/iyzico-ile-ode/iyzico-ile-odeme-tamamlama

Ek olarak bu durumu sandbox ortamında nasıl deneyebiliriz? Dökümantasyonda belirtmemenize rağmen bir şekilde sandbox iyzico ile öde kısmına girebiliyoruz. ([email protected] - 123456) Sadece seçili kartı kullanabiliyorum. Yeni kartı nasıl yaratabiliriz diğer senaryolar için. (iyzico ile ödemeden 3ds'ye geçme, limit yetersiz v.s.)

Ek olarak ödeme kırılımımız için ürün adedi belirtemiyoruz sanırım?

Bir de ufak bir öneri. IDE'ler için yorum satırına dönecek değerlerin tipini tanımlarsanız entegrasyon yapan yazılımcılar açısından daha verimli olur.


 /**
  *  @return PaymentItem[]
  */
  public function getPaymentItems()
  {
        return $this->paymentItems;
  }

Teşekkürler

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.