订单支付

申明

+(void)payOrderWithSign:(NSString *)sign random:(NSString*)random paymentInfo:(HRPaymentInfo *)paymentInfo extraMessage:(NSDictionary *)extraMessage payChannelType:(NSString *)payType delegate:(UIViewController<UIViewControllerTransitioningDelegate> *)delegate;

参数

delegate

  一个继承UIViewControllerTransitioningDelegate的ViewController,会从此viewController present出支付页面,请在此view Controller中实现如下方法:

- (UIPresentationController *)
presentationControllerForPresentedViewController:
(UIViewController *)presented
presentingViewController:
(UIViewController *)presenting
sourceViewController:
(UIViewController *)source{

    return
    [[HRCustomPresentationVc alloc]
    initWithPresentedViewController:presented
    presentingViewController:presenting];

}

若不实现此方法将会收到错误信息。正常展示支付页面效果如下:

sign

  生成sign步骤:

  1.拼接字符串(按照以下字段及顺序拼接):

appID=bc3a54eb-92ab-4cce-ba90-4dbf1183b3fd&body=这是一个商品&mchID=SYT002&outTradeNo=0932409876361760&totalFee=88&random=123456&key=a3ac6835-29e9-4326-804a-5664238362d7

  2.使用MD5签名(所有字母为大写字母),最终生成字段:

675A8455357E6AC355CAC5AD3E968C61

random

  参与签名的随机数

payType

  支付方式: 华瑞极付 为 @"0" ;极时花 为 @"1"

paymentInfo

  支付信息

@interface HRPaymentInfo : NSObject

@property(nonatomic,copy) NSString *attach;//附加数据(非必须)
@property(nonatomic,copy) NSString *body;//商品描述(小于等于128位字节)
@property(nonatomic,copy) NSString *confirmOrder;//是否需要确认支付(暂不支持需要确认模式)
@property(nonatomic,copy) NSString *detail;//商品详情(非必须,小于等于512位字节)
@property(nonatomic,copy) NSString *goodsTag;//商品标记(预留非必须)
@property(nonatomic,copy) NSString *limitPay;//指定支付方式(非必须)
@property(nonatomic,copy) NSString *mchID;//商户号
@property(nonatomic,copy) NSString *outTradeNo;//商户订单号(小于等于32位)
@property(nonatomic,copy) NSString *timeValid;//交易有效时间
@property(nonatomic,copy) NSString *totalFee;//总金额
@property(nonatomic,copy) NSString *deviceInfo;//设备号
@property(nonatomic,copy) NSString *mchName;//商户名字(小于等于128位字节)
@property(nonatomic,copy) NSString *feeType;// 货币类型

//具体商品信息,不能只送sku,可以只送spu或者2个都不送
@property(nonatomic,copy) NSString *SKU;//
@property(nonatomic,copy)NSString *SPU;//

@end

extraMessage

  可包含预填表信息

{
    cardNo: "", // 银行卡号
    revMobile: "", // 银行预留手机
    mobile: "", // 手机号
    checkData:{
    userName:"",
    mobile:"",
    }
}

返回

key

  HR_REQ_KEY_ORDER_PAY_BIND_CARD

callBackResult

  此返回对象为id类型的对象,以JSON格式说明: ​javascript { mchID: "", //商户号 outTradeNo: "", //商户订单号 payID: "", //支付流水号 totalFee: "", //总金额 tradeType: "", //交易类型 peronUnionID: "", // 弱实名用户personUnionID returnCode: "", // 结果代码 returnMsg: "" // 结果信息 }

results matching ""

    No results matching ""