0.3.1 • Published 10 years ago

node-webpay v0.3.1

Weekly downloads
3
License
MIT
Repository
github
Last release
10 years ago

node-webpay

Node.jsでWebPayを使用するためのラッパーモジュールです。設定するパラメータの種類と内容については、https://webpay.jp/docs/api を参照してください。

セットアップ

npm install node-webpay
// auth文字列を渡して初期化
var auth = 'test_secret';
var webpay = require('node-webpay')(auth);

// authには文字列の代わりにデフォルトパラメータを渡すこともできる
var webpay_ja_jpy = require('node-webpay')({
	auth: auth,
	currency: 'jpy',
	lang: 'ja'
});

WebPayの各処理は以下の形式で実行します。

webpay(command, params, callback);

// 例
webpay('charge', { /* 課金パラメータオブジェクト */ }, function(data){
	console.log(data);
});
  • command - 後述するコマンド名の文字列。params.commandで代用もできます(次の例参照)。
  • params - 各コマンドに渡すパラメータ(オブジェクト)。パラメータの種類や内容は公式ドキュメントを参照。
  • callback - サーバから返答が返ってきた際、またはnode-webpayがエラーを返す際に実行されるコールバック関数。サーバからの返答またはnode-webpayのエラー(両方ともオブジェクト形式)が引数として渡される。

以下はcommand文字列をparams.commandに入れて実行する例です。

webpay(params, callback);

// 実行例
webpay({ command: 'charge', /* 他の課金パラメータ */ }, function(data){
	console.log(data);
});

パラメータオブジェクト(デフォルトパラメータ、コマンドパラメータ)

初期化時に渡すデフォルトパラメータオブジェクト、もしくはコマンドごとに渡すパラメータオブジェクト(params)には、取引の関するパラメータの他に以下のパラメータを引数として渡すことができます。最初に設定したデフォルトパラメータは、各コマンドの実行時にオーバーライドできません(0.3.0から。0.3.0以前はオーバーライド可能)

  • auth - 認証キー。デフォルトパラメータでのみ有効かつ必須項目
  • command - コマンド。実行時、webpayの1つ目の引数に文字列でコマンドが与えられている場合は無効。
  • lang - Webpayサーバから返されるエラーメッセージの言語。デフォルトは'en'。現在対応している言語は英語('en')と日本語('ja')。
// デフォルトパラメータを与える場合、authパラメータは必須
// ここで与えたデフォルトパラメータは各コマンド発行時の上書き不可
var webpay_ja_jpy = require('node-webpay')({
	auth: auth,
	currency: 'jpy',
	lang: 'ja'
});

コマンド一覧

  • charge - 売上計上
  • auth - 仮売上計上(capture:'false'のショートカット)
  • refund - 払い戻し
  • capture - 仮売上の売上化
  • getCharge - 売上イベント取得・売上イベントリスト取得
  • createCustomer - customer作成
  • getCustomer - customer取得・customerリスト取得
  • updateCustomer - customer情報更新
  • deleteCustomer - customer削除
  • deleteActiveCard - customerからactive_cardのみ削除
  • createToken - token作成
  • getToken - token取得
  • createRecursion - 定期課金作成
  • getRecursion - 定期課金取得・定期課金リスト取得
  • resumeRecursion - 定期課金再開(未テスト)
  • deleteRecursion - 定期課金削除
  • getEvent - イベント取得・イベントリスト取得
  • getAccount - アカウント情報取得
  • deleteTestData - テストデータ削除

実行例

// 売上(charge)
var params = {
	amount: 1000,
	currency: 'jpy',
	'card[number]': '4242424242424242',
	'card[exp_month]': '11',
	'card[exp_year]': '2020',
	'card[cvc]': '1234',
	'card[name]': 'test taro'
};

webpay('charge', params, function(data){
	// コールバック
});


// paramに与えるcardプロパティをオブジェクトとして渡すこともできます。
// リスト取得時のcreatedプロパティも同様の記法ができます。
var params = {
	command: 'charge',
	amount: 1000,
	currency: 'jpy',
	card: {
		number: '4242424242424242',
		exp_month: 11,
		exp_year: 2020,
		cvc: 1234,
		name: 'test taro'
	}
};

webpay(params, function(data){
	// コールバック
});


// 仮売上(auth)

var params = {
	command: 'auth',
	amount: 1000,
	currency: 'jpy',
	'card[number]': '4242424242424242',
	'card[exp_month]': '11',
	'card[exp_year]': '2020',
	'card[cvc]': '1234',
	'card[name]': 'test taro'
};

webpay(params, function(data){
	// コールバック
});


// 課金情報・課金リストの取得(getCharge)
// getChargeコマンドを使用し、パラメータにidを設定すると課金情報が返されます。
// パラメータにidを設定しない場合は課金リストが返されます。
// これはgetCustomer、getRecursion、getEventの各コマンドでも同様です。(getTokens単一トークンの取得のみ)

var params = {
	command: 'getCharge',
	id: 'ch_3pV2bF7uZfVg7HW'
};

webpay(params, function(data){
	// コールバック
});

履歴

  • 0.0.1 初回リリース
  • 0.0.2, 0.0.3 npm publishでの問題回避など細かいアップデート
  • 0.1.0 オブジェクトネスト構造でパラメータを渡せるように修正
  • 0.2.0b1 デフォルトパラメータ追加
  • 0.2.0b2 エラー言語対応追加
  • 0.2.0b3 バグ対応
  • 0.2.0 バグ対応、テストスクリプト追加
  • 0.3.0b1 定期課金(Recursion)追加、デフォルトパラメータ仕様変更、エラー仕様変更
  • 0.3.0b2, b5, b6 マイナーバグ修正
  • 0.3.1 カード削除コマンド(deleteActiveCard)追加

todo

  • 独立したパラメータチェック機構
  • まともなテストスクリプト
  • サンプルページ
  • 時間サポート、uuidサポートの検討
  • 部分的APIサポートの検討
  • tokenオンリーモード(クライアントサイドでトークンを生成する場合など)
0.3.1

10 years ago

0.3.0

10 years ago

0.3.0-b6

10 years ago

0.3.0-b5

10 years ago

0.3.0-b4

10 years ago

0.3.0-b2

10 years ago

0.3.0-b1

10 years ago

0.2.0

10 years ago

0.2.0-b5

10 years ago

0.2.0-b4

10 years ago

0.2.0-b3

10 years ago

0.2.0-b2

10 years ago

0.2.0-b1

10 years ago

0.1.0

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago