Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

iyzipay-subscription-payments

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

iyzipay-subscription-payments

  • 1.0.2
  • Rubygems
  • Socket score

Version published
Maintainers
2
Created
Source

iyzipay-ruby

Build Status

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

Requirements

  • Ruby 2.1 or newer
  • rest-client

Note

Ruby 1.9.3 will not be supported in March 2018 for TLS 1.2 migration. Please upgrade your Ruby version to minimum 2.1.0. If you have any questions, please open an issue on Github or contact us at integration@iyzico.com.

Installation

gem install iyzipay

Bundler

source 'https://rubygems.org'

gem 'iyzipay'

Usage


before :all do
  @options = Iyzipay::Options.new
  @options.api_key = 'your api key'
  @options.secret_key = 'your secret key'
  @options.base_url = 'https://sandbox-api.iyzipay.com'
end

it 'should create payment' do
    payment_card = {
        cardHolderName: 'John Doe',
        cardNumber: '5528790000000008',
        expireYear: '2030',
        expireMonth: '12',
        cvc: '123',
        registerCard: 0
    }
    buyer = {
        id: 'BY789',
        name: 'John',
        surname: 'Doe',
        identityNumber: '74300864791',
        email: 'email@email.com',
        gsmNumber: '+905350000000',
        registrationDate: '2013-04-21 15:12:09',
        lastLoginDate: '2015-10-05 12:43:35',
        registrationAddress: 'Nidakule Göztepe, Merdivenköy Mah. Bora Sok. No:1',
        city: 'Istanbul',
        country: 'Turkey',
        zipCode: '34732',
        ip: '85.34.78.112'
    }
    address = {
        address: 'Nidakule Göztepe, Merdivenköy Mah. Bora Sok. No:1',
        zipCode: '34732',
        contactName: 'John Doe',
        city: 'Istanbul',
        country: 'Turkey'
    }

    item1 = {
        id: 'BI101',
        name: 'Binocular',
        category1: 'Collectibles',
        category2: 'Accessories',
        itemType: Iyzipay::Model::BasketItemType::PHYSICAL,
        price: '0.3'
    }
    item2 = {
        id: 'BI102',
        name: 'Game code',
        category1: 'Game',
        category2: 'Online Game Items',
        itemType: Iyzipay::Model::BasketItemType::VIRTUAL,
        price: '0.5'
    }
    item3 = {
        id: 'BI103',
        name: 'Usb',
        category1: 'Electronics',
        category2: 'Usb / Cable',
        itemType: Iyzipay::Model::BasketItemType::PHYSICAL,
        price: '0.2'
    }
    request = {
        locale: Iyzipay::Model::Locale::TR,
        conversationId: '123456789',
        price: '1.0',
        paidPrice: '1.1',
        installment: 1,
        paymentChannel: Iyzipay::Model::PaymentChannel::WEB,
        basketId: 'B67832',
        paymentGroup: Iyzipay::Model::PaymentGroup::SUBSCRIPTION,
        currency: Iyzipay::Model::Currency::TRY,
        paymentCard: payment_card,
        buyer: buyer,
        billingAddress: address,
        shippingAddress: address,
        basketItems: [item1, item2, item3]
    }
    payment = Iyzipay::Model::Payment.new.create(request, @options)
    begin
      $stderr.puts payment.inspect
    rescue
      $stderr.puts 'oops'
      raise
    end
  end

See other samples under iyzipay-ruby/spec module.

Testing

You can run specs with RSpec under spec module.

Mock test cards

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

Card NumberBankCard Type
5890040000000016AkbankMaster Card (Debit)
5526080000000006AkbankMaster Card (Credit)
4766620000000001DenizbankVisa (Debit)
4603450000000000DenizbankVisa (Credit)
4729150000000005Denizbank BonusVisa (Credit)
4987490000000002FinansbankVisa (Debit)
5311570000000005FinansbankMaster Card (Credit)
9792020000000001FinansbankTroy (Debit)
9792030000000000FinansbankTroy (Credit)
5170410000000004Garanti BankasıMaster Card (Debit)
5400360000000003Garanti BankasıMaster Card (Credit)
374427000000003Garanti BankasıAmerican Express
4475050000000003HalkbankVisa (Debit)
5528790000000008HalkbankMaster Card (Credit)
4059030000000009HSBC BankVisa (Debit)
5504720000000003HSBC BankMaster Card (Credit)
5892830000000000Türkiye İş BankasıMaster Card (Debit)
4543590000000006Türkiye İş BankasıVisa (Credit)
4910050000000006VakıfbankVisa (Debit)
4157920000000002VakıfbankVisa (Credit)
5168880000000002Yapı ve Kredi BankasıMaster Card (Debit)
5451030000000000Yapı ve Kredi BankasıMaster Card (Credit)

Cross border test cards:

Card NumberCountry
4054180000000007Non-Turkish (Debit)
5400010000000004Non-Turkish (Credit)

Test cards to get specific error codes:

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

FAQs

Package last updated on 04 Oct 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc