NodeJS Yandex.Money API SDK
Requirements
- requests == 2.9.x
Links
Getting started
Installation
Simply run npm install yandex-money-sdk
Payments from the Yandex.Money wallet
Using Yandex.Money API requires following steps
-
Obtain token URL and redirect user's browser to Yandex.Money service. Note:
client_id
,redirect_uri
,client_secret
are constants that you get, when register app in Yandex.Money API.var yandexMoney = ;// scope is array(e.g. scope = ['account-info', 'operation-history'])url = yandexMoneyWallet;// redirect user to url -
After that, user fills Yandex.Money HTML form and user is redirected back to
REDIRECT_URI?code=CODE
. -
You should immediately exchange
CODE
withACCESS_TOKEN
.{iferr// process errorvar access_token = dataaccess_token;// save it to DB, config, etc..}yandexMoneyWallet; -
Now you can use Yandex.Money API.
var api = access_token;// get account infoapi;// fetch last 3 records of operation historyapi;//make request payment and process itvar options ="pattern_id": "p2p""to": "410011161616877""amount_due": "0.02""comment": "test payment comment from yandex-money-nodejs""message": "test payment message from yandex-money-nodejs""label": "testPayment""test_payment": true"test_result": "success";api;{iferr// process error// process status}
Payments from bank cards without authorization
-
Fetch instantce-id(ussually only once for every client. You can store result in DB).
yandexMoneyExternalPayment; -
Make request payment
var externalPayment = instanceIdvar options =// pattern_id, etc..;externalPayment; -
Process the request with process-payment.
externalPayment;
Side notes
- Each API function recieves a callback in args
err
,data
andresponse
. Whereerr
is equal tonull
when status of response is2**
,data
is JSONed response andresponse
is a full server response(you can checkresponse.statusCode
for example).
Running tests
- Clone this repo, install deps and devDeps.
- Create
test/constants.js
usingtest/constants.js.sample
as a template. - Run
npm run test
and check the output.