### Public Key Format Example
Source: https://open.lianlianpay.com/docs/development/signature-key-generation.html
Example of the public key string after removing headers, footers, and line breaks for upload.
```text
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC65wUFTP1VE2hAi1v1WjHySuC2+lmWi+iMujGFq9A+K0pN1VP99y77m0T1EAMpVlKU/LIGh29m5D5ftfgwLwBC6EftsiBkTaul+qKgEfw67/2+jDqJMxBqvSsTkDOOGkR4MARGw07dSFhSI9uNQOVgSaZqyy58igGZu405gpiE6QIDAQAB
```
--------------------------------
### Instalment Positive Payment Response Example
Source: https://open.lianlianpay.com/apis/instalment-positive-payment.html
A sample JSON response returned upon a successful payment request, containing the transaction status, order identifiers, and the gateway URL for redirection.
```json
{
"correlationID": "53f83013-33dc-4c72-929d-c82c51fec0d3",
"dt_order": "20181113105431",
"gateway_url": "https://payment.lianlianpay.com/mpayweb/payinit?token=564EC9037239E4BFBE88A549D9EACE8A",
"money_order": "0.01",
"no_order": "test_order_20181113105431",
"oid_partner": "201609130000219023",
"oid_paybill": "2018111335384056",
"repayment_no": "test_order_20181113105431",
"ret_code": "0000",
"ret_msg": "交易成功",
"sign": "juhmbC7w48HfKFe/vTRaVC7G7jhSI31whsonbpaz1t9vbLycHdOtanjuXAYwnKrkFf/wkx7PZJ4LfC1sqUzUmaOdc+I8Q5O7R8IZPP4loGSJpSxkm7tVqm/xiROfmNH5K6vUGesnDCN5reW4Nfrq7oP0X6Jk21XDF78aX8Nv5w0=",
"sign_type": "RSA",
"token": "564EC9037239E4BFBE88A549D9EACE8A",
"user_id": "test_126"
}
```
--------------------------------
### API Response Example
Source: https://open.lianlianpay.com/apis/instalment-negative-card-bind.html
A sample JSON response returned upon a successful instalment negative card bind request.
```json
{
"correlationID": "84729798-bfe8-4875-870a-89d79c091164",
"dt_order": "20181113133745",
"gateway_url": "https://payment.lianlianpay.com/mpayweb/payinit?token=F2856C340A33E9D519A4DA0D6BA382BC",
"money_order": "0.01",
"no_order": "test_order_20181113133745",
"oid_partner": "201609130000219023",
"oid_paybill": "2018111335524882",
"repayment_no": "test_order_20181113133745",
"ret_code": "0000",
"ret_msg": "交易成功",
"sign": "ia3alXw9S+EIwkP+Cxv6sfFHaoTRevSfAo4QFLydKT00QeBPQ7WuWUGY9u8YeIIK0D12I5qkBeIdAOHfgrCOjGgA7s8uiADvWEnvN7sqOIlV1DS905Bg5W6ZAQK6r45sUMLyLfthkxin/GQifvYORofa9M5YZJY3TeNWlw+C/WA=",
"sign_type": "RSA",
"token": "F2856C340A33E9D519A4DA0D6BA382BC",
"user_id": "test_126"
}
```
--------------------------------
### Successful Response Example
Source: https://open.lianlianpay.com/apis/instant-apply.html
Example of a JSON response returned when the payment application is successfully submitted.
```json
{
"no_order": "2016081814228",
"oid_partner": "201606020000150062",
"oid_paybill": "2016081847411984",
"ret_code": "0000",
"ret_msg": "交易成功",
"sign":"gMMBfHBkD6gFDfV0DgA9yGYubY1nejBnVpEh0UTAgYPIYVb5F7TPdoh8R3WnYPFn3RFG4M4oRJT26wdbXtJj84z5N1mzqIOxBzQ6IZ5gXz2tFq1dWy9ro0GDG9DmxPpTj5BidOzE4 85/caI81EEtQnvrva4z14NHFL3vEC2QJoo=",
"sign_type": "RSA"
}
```
--------------------------------
### H5 Signing Synchronous Notification URL Example
Source: https://open.lianlianpay.com/vault/docs/receive-money/instalment/handle-sync-result-card-bind-h5.html
An example of the URL structure received at the merchant's url_return containing the status and JSON-encoded result parameters.
```text
${url_return}?status=0000&result={"oid_partner":"201103171000000000","user_id":"2222222","agreeno":"12313232313312331","sign_type":"RSA","sign":"ZPZULntRpJwFmGNIVKwjLEF2Tze7bqs60rxQ22CqT5J1UlvGo575QK9z/+p+7E9cOoRoWzqR6xHZ6WVv3dloyGKDR0btvrdqPgUAoeaX/YOWzTh00vwcQ+HBtXE+vPTfAqjCTxiiSJEOY7ATCF1q7iP3sfQxhS0nDUug1LP3OLk="}
```
--------------------------------
### WxPay Create Bill Response Example
Source: https://open.lianlianpay.com/apis/wxpaycreatebill.html
A sample JSON response returned by the API upon a successful transaction.
```json
{
"ret_code": "0000",
"ret_msg": "交易成功",
"sign_type": "RSA",
"sign": "9K9+wUL3NuRdFy60rOXDWqcmtTD7k8PMII8HUb9czISzXp8ff1sPH1jCVxM=",
"no_order": "4d80a9b351f8b167a661c84dc013e927",
"dt_order": "20170824102755",
"money_order": "598.35",
"oid_paybill": "2017122889360863",
"gateway_url": "https://paymentweb.lianlianpay.com/paymentweb/payinit?token=4a1123e3f123138df813ab81de8",
"token": "4a1123e3f123138df813ab81de8"
}
```
--------------------------------
### Bank Card Prepayment Request Example
Source: https://open.lianlianpay.com/apis/signingPayment-application.html
Initial request format for the bank card prepayment API using standard JSON parameters.
```curl
curl https://mpayapi.lianlianpay.com/v1/bankcardprepay \
-H "Content-type:application/json;charset=utf-8" \
-d '{
"acct_name": "李天增",
"bind_mob": "18667341234",
"busi_partner": "101001",
"card_no": "8888888888888888",
"dt_order": "20180828153543",
"id_no": "330401198001014616",
"money_order": "55.44",
"name_goods": "点读机",
"no_order": "20180828153543",
"notify_url": "http://test.yintong.com.cn/help/notify.php",
"oid_partner": "201304121000001004",
"risk_item":"{\"goods_name\":\"订单编号:2207071708xxxxxxxxx0z78\",\"frms_client_chnl\":\"16\",\"user_info_mercht_userno\":\"551xxxxx\",\"user_auth_flag\":\"0\",\"frms_ip_addr\":\"xxx.xxx.xxx.xxx\",\"frms_ware_category\":\"4016\",\"user_info_dt_register\":\"20201029xxxxxx\"}","sign":"bFopcv3ZH90Pt1dDf5LdGiFMaS3JJrWgJ9BD5u9bQfrPDc6BWGxjJ8PQq0E/u5jM629Dc/KGoSSEkPdWRREopYKY5hjKkNKfbsBLYCNQvFdnn82UuOnqzZWDITSYsh7bmu8khvLNCZw2FsaXtIKlF5nU2rPnau5mn/PmhRXjOrI=",
"shareing_data": "201804110001739005^101001^108.23^大行贷回款分账2018073000420881350_1",
"pay_type": "2",
"sign": "HTFW/Tzk4xzGOZGCFD9LwisGg6Wsnn/THQbcLPTz3rqQmdsVXmVcnoyNrPTUh46GD5uqqWbd8KG8Gf26UI0g4S3Oqwb6vDkJb95+jRqNVWeyiDSaxsOqCry1xUs6PR2Qpqm4WPVYaiHOawH3NC3Gav9KcZ25QwIAaq0OMi8K5BQ=",
"sign_type": "RSA",
"user_id": "20180828153543",
}'
```
--------------------------------
### Create Instalment Bill via cURL
Source: https://open.lianlianpay.com/apis/instalment-negative-card-bind.html
Use this cURL command to initiate an instalment bill creation request. Ensure the JSON payload is correctly formatted and signed with RSA.
```bash
curl https://payserverapi.lianlianpay.com/repay/v1/signcreatebill \
-H "Content-type:application/json;charset=utf-8" \
-d '{
"acct_name": "张三",
"api_version": "1.0",
"back_url": "http://open.lianlianpay.com/",
"dt_order": "20181113133745",
"flag_chnl": "2",
"flag_pay_product": "8",
"id_no": "123456789012345678",
"no_order": "test_order_20181113133745",
"notify_url": "http://example.com/notify",
"oid_partner": "201609130000219023",
"repayment_no": "test_order_20181113133745",
"repayment_plan": "{\"repaymentPlan\":[{\"date\":\"2019-05-06\",\"amount\":\"100\"},{\"date\":\"2019-06-06\",\"amount\":\"200\"},{\"date\":\"2019-08-06\",\"amount\":\"300\"}, {\"date\":\"2019-09-06\",\"amount\":\"400\"}, {\"date\":\"2019-10-06\",\"amount\":\"300\"}, {\"date\":\"2019-11-06\",\"amount\":\"300\"}, {\"date\":\"2019-12-06\",\"amount\":\"300\"}, {\"date\":\"2020-01-06\",\"amount\":\"300\"}]}",
"risk_item": "{\"delivery_addr_city\":\"330100\",\"delivery_addr_province\":\"330000\",\"delivery_cycle\":\"12h\",\"delivery_phone\":\"13012341234\",\"frms_ware_category\":\"1001\",\"goods_count\":\"1\",\"logistics_mode\":\"2\",\"user_info_bind_phone\":\"13012341234\",\"user_info_dt_register\":\"20181113133745\",\"user_info_full_name\":\"张三\",\"user_info_id_no\":\"123456789012345678\",\"user_info_id_type\":\"0\",\"user_info_identify_state\":\"1\",\"user_info_identify_type\":\"4\",\"user_info_mercht_userno\":\"test_126\"}",
"sign": "gwBAY5zQwz2RhU1f7avvgRf722QGWMBshHMrLx0ijQ5wDDpH5WZN1frFXAkA/wXuwlW/8kwCLbMHXRHPej8geB9HuVlkl6moJfC7oxxpgXZHxJIRo+kgEOGWQa0/qvt+JIR8bLfvslQ4V5F6z8KDYqW+/bn+7uuWQUfNo2xtniY=",
"sign_type": "RSA",
"time_stamp": "20181113133745",
"url_return": "http://example.com/return",
"user_id": "test_126"
}'
```
--------------------------------
### Synchronous Notification Form Example
Source: https://open.lianlianpay.com/vault/docs/receive-money/instalment/handle-sync-result-repayment-web.html
The structure of the HTTP POST request sent to the merchant's url_return upon successful payment.
```html
```
--------------------------------
### 导入 SDK 静态库与资源包检查清单
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/mobile-bank.html
在 Build Phases 中确认已导入必要的静态库和资源包文件。
```text
libLLEBankPaySDK.a
libABCAppCaller.a (农行SDK)
ICBCPaySDK.framework (工行SDK)
CCBNetPaySDK.framework (建行SDK)
```
```text
walletResources.bundle
ICBCPaySDK.bundle (工行资源包)
CCBSDK.bundle (建行资源包)
```
--------------------------------
### 配置 Info.plist 白名单
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/mobile-bank.html
将银行 App 的 Scheme 添加到 LSApplicationQueriesSchemes 白名单中,以支持调起银行 App。
```xml
LSApplicationQueriesSchemes
mbspay
bankabc
com.icbc.iphoneclient
cmbmobilebank
bocpay
```
--------------------------------
### presentLLPaySDKInViewController:withPayType:andTraderInfo:
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/request-express.html
调用连连iOS SDK发起快捷收款支付。开发者需将组建好的支付请求报文存入NSDictionary,并设置支付类型为LLPayTypeQuick。
```APIDOC
## [Method] presentLLPaySDKInViewController:withPayType:andTraderInfo:
### Description
发起快捷收款支付请求。该方法将组建好的支付报文传递给SDK,并启动支付界面。
### Parameters
- **viewController** (UIViewController) - 当前视图控制器
- **payType** (LLPayType) - 支付类型,快捷收款需设置为 LLPayTypeQuick
- **traderInfo** (NSDictionary) - 包含签名后的支付请求参数字典
### Request Example
```objectivec
- (void)lianlianpay
{
[LLPaySdk sharedSdk].sdkDelegate = self;
[[LLPaySdk sharedSdk] presentLLPaySDKInViewController:self withPayType:LLPayTypeQuick andTraderInfo:PAYMENT_REQUEST_INFO];
}
```
```
--------------------------------
### llEBankPayInViewController:andPaymentInfo:
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/request-mobile-bank-payment.html
调用连连iOS SDK发起掌上银行支付请求的方法。
```APIDOC
## [Method] llEBankPayInViewController:andPaymentInfo:
### Description
将组建好的待处理支付请求报文存放到字典 `NSDictionary`,通过 SDK 实例调起掌上银行支付界面。
### Method
Objective-C Method
### Parameters
- **viewController** (UIViewController) - Required - 当前发起支付的视图控制器。
- **paymentInfo** (NSDictionary) - Required - 包含支付参数的字典,需包含 oid_partner, sign_type, sign, busi_partner, no_order, dt_order, name_goods, money_order, notify_url, risk_item, user_id 等字段。
### Request Example
```objectivec
- (void)lianlianpay
{
[LLEBankPaySDK sharedSDK].sdkDelegate = self;
[[LLEBankPaySDK sharedSDK] llEBankPayInViewController:self andPaymentInfo:PAYMENT_REQUEST_INFO];
}
```
```
--------------------------------
### POST /repay/v1/signcreatebill
Source: https://open.lianlianpay.com/apis/instalment-negative-card-bind.html
Creates a new repayment bill for an instalment transaction.
```APIDOC
## POST /repay/v1/signcreatebill
### Description
Creates a repayment bill for instalment services. This endpoint requires a signed request body containing order information, user details, and the repayment schedule.
### Method
POST
### Endpoint
https://payserverapi.lianlianpay.com/repay/v1/signcreatebill
### Request Body
- **acct_name** (string) - Name of the account holder
- **api_version** (string) - API version
- **back_url** (string) - URL to redirect back to
- **dt_order** (string) - Order date
- **flag_chnl** (string) - Channel flag
- **flag_pay_product** (string) - Payment product flag
- **id_no** (string) - ID number
- **no_order** (string) - Order number
- **notify_url** (string) - Notification URL
- **oid_partner** (string) - Partner ID
- **repayment_no** (string) - Repayment number
- **repayment_plan** (string) - JSON string containing the repayment schedule
- **risk_item** (string) - JSON string containing risk assessment data
- **sign** (string) - Request signature
- **sign_type** (string) - Signature type (e.g., RSA)
- **time_stamp** (string) - Timestamp
- **url_return** (string) - Return URL
- **user_id** (string) - User ID
### Request Example
{
"acct_name": "张三",
"api_version": "1.0",
"back_url": "http://open.lianlianpay.com/",
"dt_order": "20181113133745",
"flag_chnl": "2",
"flag_pay_product": "8",
"id_no": "123456789012345678",
"no_order": "test_order_20181113133745",
"notify_url": "http://example.com/notify",
"oid_partner": "201609130000219023",
"repayment_no": "test_order_20181113133745",
"repayment_plan": "{\"repaymentPlan\":[{\"date\":\"2019-05-06\",\"amount\":\"100\"},{\"date\":\"2019-06-06\",\"amount\":\"200\"},{\"date\":\"2019-08-06\",\"amount\":\"300\"}, {\"date\":\"2019-09-06\",\"amount\":\"400\"}, {\"date\":\"2019-10-06\",\"amount\":\"300\"}, {\"date\":\"2019-11-06\",\"amount\":\"300\"}, {\"date\":\"2019-12-06\",\"amount\":\"300\"}, {\"date\":\"2020-01-06\",\"amount\":\"300\"}]}",
"risk_item": "{\"delivery_addr_city\":\"330100\",\"delivery_addr_province\":\"330000\",\"delivery_cycle\":\"12h\",\"delivery_phone\":\"13012341234\",\"frms_ware_category\":\"1001\",\"goods_count\":\"1\",\"logistics_mode\":\"2\",\"user_info_bind_phone\":\"13012341234\",\"user_info_dt_register\":\"20181113133745\",\"user_info_full_name\":\"张三\",\"user_info_id_no\":\"123456789012345678\",\"user_info_id_type\":\"0\",\"user_info_identify_state\":\"1\",\"user_info_identify_type\":\"4\",\"user_info_mercht_userno\":\"test_126\"}",
"sign": "gwBAY5zQwz2RhU1f7avvgRf722QGWMBshHMrLx0ijQ5wDDpH5WZN1frFXAkA/wXuwlW/8kwCLbMHXRHPej8geB9HuVlkl6moJfC7oxxpgXZHxJIRo+kgEOGWQa0/qvt+JIR8bLfvslQ4V5F6z8KDYqW+/bn+7uuWQUfNo2xtniY=",
"sign_type": "RSA",
"time_stamp": "20181113133745",
"url_return": "http://example.com/return",
"user_id": "test_126"
}
```
--------------------------------
### POST https://payserverapi.lianlianpay.com/repay/v1/signcreatebill
Source: https://open.lianlianpay.com/apis/instalment-negative-card-bind.html
Initiates the installment payment signing process.
```APIDOC
## POST https://payserverapi.lianlianpay.com/repay/v1/signcreatebill
### Description
Initiates the installment payment signing process. After successful creation, use the returned gateway_url to complete the signing.
### Method
POST
### Endpoint
https://payserverapi.lianlianpay.com/repay/v1/signcreatebill
### Parameters
#### Request Body
- **api_version** (String) - Required - Current version, 1.0.
- **sign** (String) - Required - Signature.
- **sign_type** (String) - Required - RSA.
- **time_stamp** (String) - Required - yyyyMMddHHmmss.
- **platform** (String) - Optional - Platform source identifier.
- **oid_partner** (String) - Required - Merchant ID.
- **user_id** (String) - Required - Unique user ID in merchant system.
- **no_order** (String) - Required - Unique order number.
- **dt_order** (String) - Required - Order time, yyyyMMddHHmmss.
- **notify_url** (String) - Required - Async notification URL.
- **url_return** (String) - Optional - Return URL after success.
- **back_url** (String) - Optional - Return URL during payment process.
- **risk_item** (String) - Required - Risk control parameters (JSON string).
- **flag_pay_product** (String) - Required - Payment product identifier (8 for installment).
- **flag_chnl** (String) - Required - Channel identifier (0: Android, 1: iOS, 2: Web, 3: H5).
- **id_type** (String) - Optional - ID type (default 0).
- **id_no** (String) - Required - ID number.
- **acct_name** (String) - Required - User name.
- **card_no** (String) - Required - Bank card number.
- **theme** (JSON String) - Optional - Theme color scheme.
- **show_head** (String) - Optional - Whether to show page header (show/hide).
```
--------------------------------
### POST /repay/v1/paycreatebill
Source: https://open.lianlianpay.com/apis/instalment-positive-payment.html
Creates a new instalment payment bill for a user.
```APIDOC
## POST /repay/v1/paycreatebill
### Description
Creates a new instalment payment bill for a user.
### Method
POST
### Endpoint
https://payserverapi.lianlianpay.com/repay/v1/paycreatebill
### Request Body
- **acct_name** (string) - Account name
- **api_version** (string) - API version
- **back_url** (string) - Return URL
- **busi_partner** (string) - Business partner identifier
- **dt_order** (string) - Order date
- **flag_chnl** (string) - Channel flag
- **flag_pay_product** (string) - Pay product flag
- **id_no** (string) - ID number
- **money_order** (string) - Order amount
- **name_goods** (string) - Goods name
- **no_order** (string) - Order number
- **notify_url** (string) - Notification URL
- **oid_partner** (string) - Partner ID
- **repayment_no** (string) - Repayment number
- **repayment_plan** (string) - JSON string of the repayment plan
- **risk_item** (string) - JSON string of risk control items
- **sign** (string) - Signature
- **sign_type** (string) - Signature type
- **time_stamp** (string) - Timestamp
- **url_return** (string) - Return URL
- **user_id** (string) - User ID
### Request Example
{
"acct_name": "张三",
"api_version": "1.0",
"back_url": "https://open.lianlianpay.com/",
"busi_partner": "101001",
"dt_order": "20181113105431",
"flag_chnl": "2",
"flag_pay_product": "8",
"id_no": "123456789012345678",
"money_order": "0.01",
"name_goods": "Test order",
"no_order": "test_order_20181113105431",
"notify_url": "http://example.com/notify",
"oid_partner": "201609130000219023",
"repayment_no": "test_order_20181113105431",
"repayment_plan": "{\"repaymentPlan\":[{\"date\":\"2019-05-06\",\"amount\":\"100\"},{\"date\":\"2019-06-06\",\"amount\":\"200\"},{\"date\":\"2019-08-06\",\"amount\":\"300\"}, {\"date\":\"2019-09-06\",\"amount\":\"400\"}, {\"date\":\"2019-10-06\",\"amount\":\"300\"}, {\"date\":\"2019-11-06\",\"amount\":\"300\"}, {\"date\":\"2019-12-06\",\"amount\":\"300\"}, {\"date\":\"2020-01-06\",\"amount\":\"300\"}]}",
"risk_item": "{\"delivery_addr_city\":\"330100\",\"delivery_addr_province\":\"330000\",\"delivery_cycle\":\"12h\",\"delivery_phone\":\"17601651300\",\"frms_ware_category\":\"1001\",\"goods_count\":\"1\",\"logistics_mode\":\"2\",\"user_info_bind_phone\":\"13012341234\",\"user_info_dt_register\":\"20181113105431\",\"user_info_full_name\":\"张三\",\"user_info_id_no\":\"123456789012345678\",\"user_info_id_type\":\"0\",\"user_info_identify_state\":\"1\",\"user_info_identify_type\":\"4\",\"user_info_mercht_userno\":\"test_126\"}",
"sign": "NgTqo5AY6A2XXdyvxkkbyIWjNZ3qhALY1TfvcJXs2U2XhP24TyHfBungeCHAV2xivqrCHS1I9S9XASUuwTXlUxr0/MJP9ZB8snHRsAbZCIuYu4JLhoP1D82OAFll4tJNPyX8Z+O3Q3RFv1/aqKm8QbkLv/K8iH/GWNdSH0+LPkU=",
"sign_type": "RSA",
"time_stamp": "20181113105431",
"url_return": "http://example.com/return",
"user_id": "test_126"
}
```
--------------------------------
### Error Response with Signature
Source: https://open.lianlianpay.com/apis/instant-apply.html
Example of an error response containing a signature field.
```json
{
"oid_partner":"201606221000921503",
"ret_code":"4005",
"ret_msg":"商户未开通权限",
"sign":"AtkijrjIozoGkA7u7m19mAoWyddXZnTs28t/NSrM80hBD2W6g+uJYTso8yMgA+XApj61YZ93q2NlQ8dyoiLMbwOrsqbx5cODCiFDv8t57c7CMZbzjiFXWqwXY3+Y11AHQtNK0EKAELn8pV58hJURg2JgbjtFPwQ+PT5MOCLzXbE=",
"sign_type":"RSA"
}
```
--------------------------------
### Error Response without Signature
Source: https://open.lianlianpay.com/apis/instant-apply.html
Example of an error response where the signature field is omitted.
```json
{
"ret_code":"1004",
"ret_msg":"商户请求参数校验错误:商户请求参数[sign]非法"
}
```
--------------------------------
### presentLLPaySDKInViewController:withPayType:andTraderInfo:
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/request-authenticate.html
调用连连iOS SDK发起认证收款请求。开发者需将组建好的支付请求报文存入NSDictionary,并指定支付类型(LLPayTypeVerify或LLPayTypeNewVerify)。
```APIDOC
## [Method] presentLLPaySDKInViewController:withPayType:andTraderInfo:
### Description
发起认证收款请求。该方法将支付请求报文传递给SDK,并启动支付流程。
### Parameters
- **viewController** (UIViewController) - 当前视图控制器
- **payType** (LLPayType) - 支付类型,可选 LLPayTypeVerify (普通认证收款) 或 LLPayTypeNewVerify (新认证收款)
- **traderInfo** (NSDictionary) - 包含签名后的支付请求参数的字典
### Request Example
```objectivec
- (void)lianlianpay
{
[LLPaySdk sharedSdk].sdkDelegate = self;
[[LLPaySdk sharedSdk] presentLLPaySDKInViewController:self withPayType:LLPayTypeVerify andTraderInfo:PAYMENT_REQUEST_INFO];
}
```
```
--------------------------------
### 发起新认证收款请求
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/request-authenticate.html
通过设置PayType为LLPayTypeNewVerify并传入请求报文来调用SDK。
```objective-c
- (void)lianlianpay
{
[LLPaySdk sharedSdk].sdkDelegate = self;
[[LLPaySdk sharedSdk] presentLLPaySDKInViewController:self withPayType:LLPayTypeNewVerify andTraderInfo:PAYMENT_REQUEST_INFO];
}
```
--------------------------------
### Example Signed Payment Request Payload
Source: https://open.lianlianpay.com/docs/send-money/instant/api-encrypt.html
A sample JSON object representing a pre-signed payment request ready for encryption.
```json
{
"acct_name": "张三",
"api_version": "1.0",
"card_no": "6216261000000000000",
"dt_order": "20170317165929",
"flag_card": "0",
"info_order": "test测试10.00?",
"memo": "代付",
"money_order": "0.02",
"no_order": "20170413165934",
"notify_url": "http://10.20.41.35:8080/tradepayapi/receiveNotify.htm",
"oid_partner": "201609130000219023",
"sign": "DNNUJoaAtOwu8Hy+98x+RTLbakxQPTvyCuHINCmdg7FcR6ppzfjoxjtMTJFjoroC2PPr80Y9T7ciCvyTX6tVo7/KClt6c9qtXL5xgOdWQnKqrgWkUZ+cqV4N3vZuqFKhUGsJ8h2qw7jwlTV6XnI0qa8kAppKnwJjE+/r8hZZw80=",
"sign_type": "RSA"
}
```
--------------------------------
### Encrypted Payload Request Example
Source: https://open.lianlianpay.com/apis/signingPayment-application.html
Request format using an encrypted pay_load parameter, which is required for secure API communication.
```curl
curl https://mpayapi.lianlianpay.com/v1/bankcardprepay \
-H "Content-type:application/json;charset=utf-8" \
-d '{
"oid_partner": "201304121000001004",
"pay_load": "lianpay1_0_1$IjRo9QTNupI7FEKMQq0Cz+11KlnvAyoyrTQi8C03nqLlBGl2dj3Kbd9SoV+nTuNs8iTsvwNVnNt8
LVv3iCZjBJYeo3oLsLb2JxWHpHltUgWBc/YQsVkmRmRcrIDzycxvZ8OIQxwVVk34ad7anOC0RD7C
ap6BlcZPTs1RDe6fEaw=$KytJ6nSrXn7OS8EDQLENbgj2lVuiLD/VWD6hp0Cp5vieHK29tRHOCkW6ph+fq3yHU98knbaQiAtU
ipM/tPGWpyuCyWOBP6aayoJDU0RKdJMgqK0MQYQbZPxg7XCQT7Z6YatTiT4ZFCAQd3LfdSm9OX+w
Fb0jCS7QsJYiznF86Jk=$QkFOWFlUMUE=$SCjQXBPxHCk6/mQMD1/RnZUfwKukGcgtm+LmJyK6/627+TPCeZ1iG1maCWluSq7C1FsV5DEhknTH
9I5y6U3xyOajSRq5HS42znCo4oDTT8JrLxgBAAy97CdE8Aax9z7iEmDqwhDRQOwUTb7lObmqoD+K
OEC/fAzZGP6dz4iqkbepLB9atXkFYi7+bAX/ZNVgUeBkL7mXHSpQTl1Yrh21qkKBT2OTVu8weUO2
4xjvV+utC4OgSqdFeWahi5ODS5IWTAuSb+kHcvbvX4UZjDQ8w2s7EwgnlpOzOggFeyUPawMjjx45
PzT+TbS6/glIjtLISnUuOCrwu0i640vlLIvBCyPbbni+5vNF9kD7uhJEDEXkO9tDo3vF8HHzB4lQ
8gXN5sehoGXvd2Rk9ZhUCVk70YCkXd4lA0Jf9imQLxc/tshoyTI4Cb9pcMLvfbt4vZd5tbARJqLF
92MagCxKbLKPl7v+esiCIgS6/TqKcVzCdcaQKRUonjowrOqn+d+7xumHURtX9yYOAawq066gUCOb
o6PHrT8KxrAoQ2STxEod4c6HjGXseMs9HqzLadJlzgKFCTiXk8O8FrlcaaMehiiZO8+XILCihcI6
zhTgrE77hstkb5CFfBUwHkdNH24WveERZlluoHUncWwuYof1d28HMjb9dQyFrJR0LIIQYE0V5eOP
hoJXpnPEx8otm+0iqo0cy9Vx257jqb7ezvYMCxkQlbtFuy7Wpko9JsfDcYnwFKElgm1pSnGD9Ga/
SFPT62tA2ndFRfSy32PS/TcPnZYEvM4TwBVTD2srnNG4NxLmS7fnqU0y06q4XSb0lFQh0XSfFZR4
i6bFsHw6ZWcrlBIgOM1/Lmj5SoKBM9K8R9IcYB/eXZSVhPRReCk/9g7H0Id7EEFqPmRfuA/XqsH4
owg1KkxN3kQ/XzF1JSeLoGjIyUESLn+C2Sv4+at+7aCX$XmrO6P26GhZqmR9gE75isXSkmq1dgvW40MAIlwVm8e0="
}'
```
--------------------------------
### 调用连连iOS SDK发起快捷收款
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/request-express.html
将组装好的请求报文传入SDK进行支付调用,需确保已设置sdkDelegate。
```objective-c
- (void)lianlianpay
{
[LLPaySdk sharedSdk].sdkDelegate = self;
[[LLPaySdk sharedSdk] presentLLPaySDKInViewController:self withPayType:LLPayTypeQuick andTraderInfo:PAYMENT_REQUEST_INFO];
}
```
--------------------------------
### C# 报文加密处理
Source: https://open.lianlianpay.com/docs/faq/instantpay.html
处理C#生成的pay_load字符串,替换换行符并转换为ISO-8859-1编码字节数组。
```csharp
var pay = ($"{{\"pay_load\":\"{json}\",\"oid_partner\":\"{PartnerConfig.OID_PARTNER}\"}}").Replace("\r\n", "\\r\\n");
byte[] bytes = Encoding.GetEncoding("ISO-8859-1").GetBytes(pay);
```
--------------------------------
### Bank Card Prepay Request JSON
Source: https://open.lianlianpay.com/apis/bankcardprepay-no-secret.html
Example JSON payload for initiating a bank card prepay no secret transaction.
```json
{
"oid_partner":"209991888344400000",
"risk_item":"{\"goods_name\":\"订单编号:2207071708xxxxxxxxx0z78\",\"frms_client_chnl\":\"16\",\"user_info_mercht_userno\":\"551xxxxx\",\"user_auth_flag\":\"0\",\"frms_ip_addr\":\"xxx.xxx.xxx.xxx\",\"frms_ware_category\":\"4016\",\"user_info_dt_register\":\"20201029xxxxxx\"}",
"sign":"bFopcv3ZH90Pt1dDf5LdGiFMaS3JJrWgJ9BD5u9bQfrPDc6BWGxjJ8PQq0E/u5jM629Dc/KGoSSEkPdWRREopYKY5hjKkNKfbsBLYCNQvFdnn82UuOnqzZWDITSYsh7bmu8khvLNCZw2FsaXtIKlF5nU2rPnau5mn/PmhRXjOrI=",
"dt_order":"20220707170842",
"name_goods":"订单编号:2207071708410951xxxxxxxx",
"notify_url":"https://llaccpnotify-fy.xxxxxxxx/xxxxxx/xxxxxx/xxxxxx",
"busi_partner":"101001",
"no_order":"2022070736363636",
"user_id":"202*********4384",
"money_order":"45.00",
"pay_type":"W",
"ext_param":"{\"openid\":\"ogRSL55kDNAof4xxxxxxxxxxxx\",\"appid\":\"wx747dxxxxxx580f56\"}",
"sign_type":"RSA",
"valid_order":"4320"
}
```
--------------------------------
### 发起普通认证收款请求
Source: https://open.lianlianpay.com/vault/docs/receive-money/ios/request-authenticate.html
通过设置PayType为LLPayTypeVerify并传入请求报文来调用SDK。
```objective-c
- (void)lianlianpay
{
[LLPaySdk sharedSdk].sdkDelegate = self;
[[LLPaySdk sharedSdk] presentLLPaySDKInViewController:self withPayType:LLPayTypeVerify andTraderInfo:PAYMENT_REQUEST_INFO];
}
```
--------------------------------
### 发起签约创单请求
Source: https://open.lianlianpay.com/apis/unified-card-bind.html
使用curl命令向统一签约创单接口发送POST请求,包含必要的签名和业务参数。
```bash
curl https://payserverapi.lianlianpay.com/v1/signcreatebill \
-H "Content-type:application/json;charset=utf-8" \
-d '{
"api_version": "1.0",
"sign_type": "RSA",
"sign": "H8DfnPY+OlfIszH0Fzz/R5lUSNjUcYzwJy8nRr7tTTOq/A0k1COK5LgYK5+GTaDR4ij7FX/COOHqnBJ1+XWfnRuJNnXcLWl4L/T47569Q0aY7IebVFvAYROrdUFn215sM6m55hDpPfLL26n+HRM4Zzbbc6YJlhJsYNfv1ePq9F0=",
"time_stamp": "20170824102755",
"platform": "201707041000000000",
"oid_partner": "201707041000000000",
"user_id": "userid000001",
"no_order": "4d80a9b351f8b167a661c84dc013e927",
"dt_order": "20170824102755",
"risk_item": "{\"user_info_bind_phone\":\"13958069593\",\"user_info_dt_register\":\"20131030122130\",\"frms_ware_category \":\"1009\"}",
"flag_pay_product": "1",
"flag_chnl": "2",
"id_type": "0",
"id_no": "11111111111111111111",
"acct_name": "张三",
"card_no": "6222222222222222"
}'
```