# NICEPay Ruby Binding ## Ruby SDK API Operation Test ### Virtual Account ``` $ ruby test-va.rb ``` ``` ---------------------------------------------------------------------- Virtual Account Number : 7001400000000631 Description : Payment of Invoice-7834 Reference No : Invoice-7834 Transaction ID : VACCTCLOSE02201606061649584906 ---------------------------------------------------------------------- ``` ### Card Checkout ``` $ ruby test-card.rb ``` ``` ----------------------------------------------------------------------------------------------------- Redirect Customer to : https://www.nicepay.co.id/nicepay/api/orderInquiry.do?tXid=IONPAYTEST01201606061651114907 tXid : IONPAYTEST01201606061651114907 ----------------------------------------------------------------------------------------------------- ``` ### Check Transaction Status ``` $ ruby test-status.rb ``` ``` ---------------------------------------------------------------------- Transaction Status : 3 Amount : 3000 Reference No : Invoice-7834 Transaction ID : VACCTCLOSE02201606061354204825 ---------------------------------------------------------------------- ``` ## Ruby on Rails 1. Install NICEPay Gem ``` $ gem install nicepay ``` or build from source ``` $ gem build nicepay.gemspec ``` 2. Create checkout controller ``` $ rails g controller checkout ``` 3. Add action to controller ``` def new end def create # Amount in cents @amount = 500 requestVa= Nicepay::Api::RequestVa.new(Nicepay.requestParam) chargeCard= Nicepay::Api::ChargeCard.new(Nicepay.requestParam) checkStatus=Nicepay::Api::CheckStatus.new(Nicepay.requestParam) end ``` 4. Define Route ``` resources :checkout ``` 5. Configure application ``` Rails.configuration.nicepay = { :iMid=> ENV['I_MID'], :merchantKey=> ENV['MERCHANT_KEY'] } Nicepay.merchantKey= Rails.configuration.nicepay[:merchantKey] Nicepay.iMid= Rails.configuration.nicepay[:iMid] ``` 6. Create view Create a checkout.html.erb layout under app/views/layouts: ``` <%= yield %> ``` and so on...