iyzipay php
iyzipay-php 2.0.58
https://iyzico.com에서 iyzico 계정에 가입할 수 있습니다.
PHP 7.4 이상.
최소 TLS v1.2는 2018년 3월 이후 지원됩니다. openssl 버전을 최소 1.0.1로 업그레이드하세요. 질문이 있는 경우 Github에서 문제를 열거나 [email protected]으로 문의해 주세요.
Composer를 통해 바인딩을 설치할 수 있습니다. 다음 명령을 실행하십시오.
composer require iyzico/iyzipay-php
바인딩을 사용하려면 Composer의 자동 로드를 사용하세요.
require_once ( ' vendor/autoload.php ' );
Composer를 사용하고 싶지 않은 경우 최신 릴리스를 다운로드할 수 있습니다. 그런 다음 바인딩을 사용하려면 IyzipayBootstrap.php
파일을 포함하십시오.
require_once ( ' /path/to/iyzipay-php/IyzipayBootstrap.php ' );
$ 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 );
샘플 디렉터리에서 다른 샘플을 참조하세요.
종속성을 설치합니다.
composer install
성공적인 결제를 시뮬레이션하는 데 사용할 수 있는 테스트 카드:
카드번호 | 은행 | 카드 종류 |
---|---|---|
5890040000000016 | 아크뱅크 | 마스터카드(직불) |
5526080000000006 | 아크뱅크 | 마스터카드(신용) |
4766620000000001 | 데니즈뱅크 | 비자(직불) |
4603450000000000 | 데니즈뱅크 | 비자(신용) |
4729150000000005 | 데니즈뱅크 보너스 | 비자(신용) |
4987490000000002 | 금융은행 | 비자(직불) |
5311570000000005 | 금융은행 | 마스터카드(신용) |
9792020000000001 | 금융은행 | 트로이(직불) |
9792030000000000 | 금융은행 | 트로이 (제공) |
5170410000000004 | 가란티 방카시 | 마스터카드(직불) |
5400360000000003 | 가란티 방카시 | 마스터카드(신용) |
374427000000003 | 가란티 방카시 | 아멕스 카드 |
4475050000000003 | 할크뱅크 | 비자(직불) |
5528790000000008 | 할크뱅크 | 마스터카드(신용) |
4059030000000009 | HSBC은행 | 비자(직불) |
5504720000000003 | HSBC은행 | 마스터카드(신용) |
5892830000000000 | 터키 이스탄불 은행카시 | 마스터카드(직불) |
4543590000000006 | 터키 이스탄불 은행카시 | 비자(신용) |
4910050000000006 | 바키프방크 | 비자(직불) |
4157920000000002 | 바키프방크 | 비자(신용) |
5168880000000002 | Yapı ve Kredi Bankası | 마스터카드(직불) |
5451030000000000 | Yapı ve Kredi Bankası | 마스터카드(신용) |
국경 간 테스트 카드:
카드번호 | 국가 |
---|---|
4054180000000007 | 비터키어(직불) |
5400010000000004 | 비 터키인 (크레딧) |
특정 오류 코드를 얻으려면 카드를 테스트하세요.
카드번호 | 설명 |
---|---|
5406670000000009 | 성공했지만 취소, 환불 또는 사후 인증이 불가능합니다. |
4111111111111129 | 자금이 충분하지 않음 |
4129111111111111 | 존경하지 마십시오 |
4128111111111112 | 잘못된 거래 |
4127111111111113 | 분실된 카드 |
4126111111111114 | 도난당한 카드 |
4125111111111115 | 만료된 카드 |
4124111111111116 | 잘못된 cvc2 |
4123111111111117 | 카드 소지자에게는 허용되지 않습니다. |
4122111111111118 | 터미널 출입 불가 |
4121111111111119 | 사기 용의자 |
4120111111111110 | 픽업카드 |
4130111111111118 | 일반 오류 |
4131111111111117 | 성공했지만 mdStatus는 0입니다. |
4141111111111115 | 성공했지만 mdStatus는 4입니다. |
4151111111111112 | 3dsecure 초기화 실패 |
대체 결제 방법으로 결제를 시뮬레이션하는 데 사용할 수 있는 모의 APM 계정:
계좌 소유자 이름 | 설명 |
---|---|
성공 | 초기화 성공 후 결제 성공 |
초기화 후 실패 | 초기화 성공 후 결제 실패 |
오류 | 초기화 실패 |
위에서 언급한 대로 종속성을 설치하면(PHPUnit이 해결됨) 테스트 스위트를 실행할 수 있습니다.
./vendor/bin/phpunit
또는 개별 테스트 파일을 실행하려면:
./vendor/bin/phpunit tests/Iyzipay/Tests/Model/PaymentTest.php
테스트 파일을 테스트 중입니다...