alipay

0.17.0last stable release 1 year ago
Complexity Score
Low
Open Issues
0
Dependent Projects
2
Weekly Downloadsglobal
25

License

  • MIT
    • Yesattribution
    • Permissivelinking
    • Permissivedistribution
    • Permissivemodification
    • Nopatent grant
    • Yesprivate use
    • Permissivesublicensing
    • Notrademark grant

Downloads

Readme

Alipay

Unofficial Alipay ruby gem.

Note: Alipay::Client API does not have enough feedback in production yet, please fully test in your staging environment before production. You can find legacy API document here.

You should read https://doc.open.alipay.com before using this gem.

Installation

To install using Bundler. Add this line to your application’s Gemfile:

gem 'alipay'

Then run:

$ bundle

Or you can manually install using RubyGems:

$ gem install alipay

Getting Started

This gem needs to be configured with your application’s private key for Alipay and Alipay’s public key. Here is a quick guide on generating RSA key for use with this gem to get you started.

Setup

require 'alipay'

# setup the client to communicate with either production API or sandbox API
# https://openapi.alipay.com/gateway.do (Production)
# https://openapi.alipaydev.com/gateway.do (Sandbox)
API_URL =  'https://openapi.alipaydev.com/gateway.do'

# setup your own credentials and certificates
APP_ID = '2016xxxxxxxxxxxx'
APP_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----\nxkbt...4Wt7tl\n-----END RSA PRIVATE KEY-----\n"
ALIPAY_PUBLIC_KEY="-----BEGIN PUBLIC KEY-----\nTq43T5...OVUAQb3R\n-----END PUBLIC KEY-----\n"

# initialize a client to communicate with the Alipay API
@alipay_client = Alipay::Client.new(
  url: API_URL,
  app_id: APP_ID,
  app_private_key: APP_PRIVATE_KEY,
  alipay_public_key: ALIPAY_PUBLIC_KEY
)

Create a payment

@alipay_client.page_execute_url(
  method: 'alipay.trade.page.pay',
  biz_content: JSON.generate({
    out_trade_no: '20160401000000',
    product_code: 'FAST_INSTANT_TRADE_PAY',
    total_amount: '0.01',
    subject: 'test'
  }, ascii_only: true), # ascii_only is important!
  timestamp: '2016-04-01 00:00:00'
)

# This method will then return a payment url
# => 'https://openapi.alipaydev.com/gateway.do?app_id=201600...'

Read Alipay::Client or the Quick Start Guide for usage detail.

Contributing

Bug report or pull request are welcome.

Make a pull request

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Please write unit test with your code if necessary.

License

MIT License

Dependencies

No runtime dependency information found for this package.

CVE IssuesActive
0
Scorecards Score
3.70
Test Coverage
No Data
Follows Semver
No
Github Stars
731
Dependenciestotal
4
DependenciesOutdated
0
DependenciesDeprecated
0
Threat Modelling
No
Repo Audits
No

Learn how to distribute alipay in your own private RubyGems registry

gem install alipay
Processing...
Done

30 Releases

RubyGems on Cloudsmith

Getting started with RubyGems on Cloudsmith is fast and easy.