npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

chuck-alipay

v0.4.2

Published

支付宝支付

Downloads

22

Readme

chuck-alipay

目前实现了支付宝电脑网页支付和手机端网页支付

安装

npm的安装方式

npm install chuck-alipay

支付宝支付使用方法

手机网站支付参数参考链接

电脑网站支付参数参考链接

调用支付宝APP支付参数参考链接

const { default: Alipay } = require('chuck-alipay'); 

const param = {
    app_id: 'xxx', // 支付宝分配给开发者的应用ID
    return_url: , // 同步返回地址(app支付不需要该参数)
    notify_url,  // 支付宝服务器主动通知商户服务器里指定的页面http/https路径
    privatekeyPath, // 支付宝privatekey.txt文件在服务器上的路径
};

const alipay = new Alipay(param);
const biz_content = {
    subject: '测试',
    out_trade_no: 'DD12345678',
    total_amount: 0.01,        
};
const url = alipay.pay(biz_content, 'mobile') // 手机网站支付第二个参数传mobile
const url = alipay.pay(biz_content, 'pc') // 电脑网站支付第二个参数传pc
const signString = alipay.appPay(biz_content); // 一个签名的字符串用于调用APP支付

网站支付将拿到的这个url返回给浏览器执行location.assign(url),APP支付拿到了签名的string后调用cordova的支付宝支付

支付宝退款

支付宝退款参数参考链接

const { default: Alipay } = require('chuck-alipay'); 

const param = {
    app_id: 'xxx', // 支付宝分配给开发者的应用ID
    privatekeyPath: 'xxx', // 支付宝privatekey.txt文件在服务器上的路径
};

const alipay = new Alipay(param);
const biz_content = {
    out_trade_no: 'DD12345678',
    trade_no: 'xxxxxxx',
    refund_amount: 0.01,        
};
const refundResult = alipay.refund(biz_content);
refundResult.then((ressult) => {
    console.log(ressult);
});

执行成功返回的结果是:

{
    "alipay_trade_refund_response": {
        "code": "10000",
        "msg": "Success",
        "trade_no": "支付宝交易号",
        "out_trade_no": "6823789339978248",
        "buyer_logon_id": "159****5620",
        "fund_change": "Y",
        "refund_fee": 0.01,
        "refund_currency": "USD",
        "gmt_refund_pay": "2014-11-27 15:45:57",
        "refund_detail_item_list": [
            {
                "fund_channel": "ALIPAYACCOUNT",
                "bank_code": "CEB",
                "amount": 10,
                "real_amount": 11.21,
                "fund_type": "DEBIT_CARD"
            }
        ],
        "store_name": "望湘园联洋店",
        "buyer_user_id": "2088101117955611",
        "present_refund_buyer_amount": "88.88",
        "present_refund_discount_amount": "88.88",
        "present_refund_mdiscount_amount": "88.88"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

支付宝交易查询

支付宝交易查询参数参考链接

const { default: Alipay } = require('chuck-alipay'); 

const param = {
    app_id: 'xxx', // 支付宝分配给开发者的应用ID
    privatekeyPath: 'xxx', // 支付宝privatekey.txt文件在服务器上的路径
};

const alipay = new Alipay(param);
const biz_content = {
    out_trade_no: 'DD12345678', // 订单支付时传入的商户订单号,和支付宝交易号不能同时为空。trade_no,out_trade_no如果同时存在优先取trade_no
    trade_no: 'xxxxxxx', 
};
const refundResult = alipay.tradeQuery(biz_content);
refundResult.then((ressult) => {
    console.log(ressult);
});

执行成功返回的结果是:

{
    "alipay_trade_query_response": {
        "code": "10000",
        "msg": "Success",
        "trade_no": "2013112011001004330000121536",
        "out_trade_no": "6823789339978248",
        "buyer_logon_id": "159****5620",
        "trade_status": "TRADE_CLOSED",
        "total_amount": 88.88,
        "trans_currency": "TWD",
        "settle_currency": "USD",
        "settle_amount": 2.96,
        "pay_currency": 1,
        "pay_amount": "8.88",
        "settle_trans_rate": "30.025",
        "trans_pay_rate": "0.264",
        "buyer_pay_amount": 8.88,
        "point_amount": 10,
        "invoice_amount": 12.11,
        "send_pay_date": "2014-11-27 15:45:57",
        "receipt_amount": "15.25",
        "store_id": "NJ_S_001",
        "terminal_id": "NJ_T_001",
        "fund_bill_list": [
            {
                "fund_channel": "ALIPAYACCOUNT",
                "amount": 10,
                "real_amount": 11.21
            }
        ],
        "store_name": "证大五道口店",
        "buyer_user_id": "2088101117955611",
        "charge_amount": "8.88",
        "charge_flags": "bluesea_1",
        "settlement_id": "2018101610032004620239146945",
        "auth_trade_pay_mode": "CREDIT_PREAUTH_PAY",
        "buyer_user_type": "PRIVATE",
        "mdiscount_amount": "88.88",
        "discount_amount": "88.88",
        "buyer_user_name": "菜鸟网络有限公司"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

支付宝退款查询

支付宝退款查询参数参考链接

const { default: Alipay } = require('chuck-alipay'); 

const param = {
    app_id: 'xxx', // 支付宝分配给开发者的应用ID
    privatekeyPath: 'xxx', // 支付宝privatekey.txt文件在服务器上的路径
};

const alipay = new Alipay(param);
const biz_content = {
    out_trade_no: 'DD12345678', // 支付宝交易号
    trade_no: 'xxxxxxx', //订单支付时传入的商户订单号,和支付宝交易号不能同时为空。 trade_no,out_trade_no如果同时存在优先取trade_no
    out_request_no: 'xxxxxx', // 请求退款接口时,传入的退款请求号,如果在退款请求时未传入,则该值为创建交易时的外部交易号
};
const refundResult = alipay.refundQuery(biz_content);
refundResult.then((ressult) => {
    console.log(ressult);
});

执行成功返回的结果是:

{
    "alipay_trade_fastpay_refund_query_response": {
        "code": "10000",
        "msg": "Success",
        "trade_no": "2014112611001004680073956707",
        "out_trade_no": "20150320010101001",
        "out_request_no": "20150320010101001",
        "refund_reason": "用户退款请求",
        "total_amount": 100.2,
        "refund_amount": 12.33,
        "refund_royaltys": [
            {
                "refund_amount": 10,
                "royalty_type": "transfer",
                "result_code": "SUCCESS",
                "trans_out": "2088102210397302",
                "trans_out_email": "[email protected]",
                "trans_in": "2088102210397302",
                "trans_in_email": "[email protected]"
            }
        ],
        "gmt_refund_pay": "2014-11-27 15:45:57",
        "refund_detail_item_list": [
            {
                "fund_channel": "ALIPAYACCOUNT",
                "amount": 10,
                "real_amount": 11.21,
                "fund_type": "DEBIT_CARD"
            }
        ],
        "send_back_fee": "88",
        "refund_charge_amount": "8.88",
        "refund_settlement_id": "2018101610032004620239146945",
        "present_refund_buyer_amount": "88.88",
        "present_refund_discount_amount": "88.88",
        "present_refund_mdiscount_amount": "88.88"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

指定支付宝账户转账

支付宝指定单笔转账接口的参数查询

    const { default: Alipay } = require('chuck-alipay'); 

    const param = {
        app_id: 'xxx', // 支付宝分配给开发者的应用ID
        privatekeyPath: 'xxx', // 支付宝privatekey.txt文件在服务器上的路径
    };

    const alipay = new Alipay(param);
    const biz_content = {
      out_biz_no: 'xxxxx',
      trans_amount: 0.01,
      product_code: 'TRANS_ACCOUNT_NO_PWD',
      biz_scene: 'DIRECT_TRANSFER',
      payee_info: {
        identity: '支付宝账号',
        identity_type: 'ALIPAY_LOGON_ID',
        remark: '备注转账',
      }
    };
    const res = await alipay.singleTranser(biz_content);

    // 执行成功的返回结果是
    {
        "alipay_fund_trans_uni_transfer_response": {
            "code": "10000",
            "msg": "Success",
            "out_biz_no": "201808080001",
            "order_id": "20190801110070000006380000250621",
            "pay_fund_order_id": "20190801110070001506380000251556",
            "status": "SUCCESS",
            "trans_date": "2019-08-21 00:00:00"
        },
        "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
    }