- Onerway Merchant API Testing
- Onerway 商户 API 接入指南
- Payment APIs
- Checkout
- JS-SDK
- API
- APMs - Alternative Payment Methods
- Refund
- Settlement
- Query
- Utils
Subscription Payment Intent
Sandbox Env
Sandbox Env
POST
/v1/sdkTxn/doTransaction
Request
Body Params application/json
Configuration for establishing a subscription with automatic recurring payments processed by the payment service provider
billingInformation
object
TransactionAddress
address
string
地址信息(账单或配送地址)
city
string
城市名称
country
enum<string>
国家代码,请参考ISO 3166标准
Allowed value:
US
email
string
电子邮件地址
firstName
string
名字
identityNumber
string
证件号码
lastName
string
姓氏
phone
string
电话号码
postalCode
string
邮政编码
province
enum<string>
省/州
Allowed value:
CO
merchantCustId
string
客户在商户系统中的唯一标识
merchantNo
enum<string>
商户号
Allowed value:
{{MERCHANT-NO}}
merchantTxnId
string
商户创建的交易订单号
merchantTxnTime
string
商户交易时间,格式为yyyy-MM-dd HH:mm:ss
orderAmount
string
订单金额
orderCurrency
enum<string>
订单币种,参考ISO 4217货币代码
Allowed value:
USD
shippingInformation
object
TransactionAddress
address
string
地址信息(账单或配送地址)
city
string
城市名称
country
enum<string>
国家代码,请参考ISO 3166标准
Allowed value:
US
email
string
电子邮件地址
firstName
string
名字
identityNumber
string
证件号码
lastName
string
姓氏
phone
string
电话号码
postalCode
string
邮政编码
province
enum<string>
省/州
Allowed value:
CO
sign
null
签名
txnOrderMsg
object
TxnOrderMsg
accept
enum<string>
持卡人浏览器的Accept请求头
<= 2048 characters
Allowed value:
*/*
Example:
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
appId
enum<string>
商户应用程序ID,商户注册网站时Onerway会为商户创建
<= 20 characters
Allowed value:
{{APPID}}
Example:
{{appId}}
colorDepth
enum<string>
ColorDepthEnum
Allowed values:
162432
contentLength
enum<string>
ContentLengthEnum
Allowed values:
0102440961638465536
javaEnabled
boolean
持卡人浏览器是否开启java
Example:
false
language
enum<string>
持卡人浏览器的语言
<= 64 characters
Allowed value:
en-US
Example:
zh-CN
products
array[object (Product) {5}]
商品信息数组,JSON字符串格式
>= 1 items<= 3 items
returnUrl
enum<string>
同步返回地址
<= 256 characters
Allowed value:
{{RETURN-URL}}
Example:
https://docs.onerway.com/
notifyUrl
enum<string>
异步通知地址
Allowed value:
{{WEBHOOK-ENDPOINT}}
screenHeight
enum<string>
ScreenHeightEnum
Allowed values:
4805686406677367407808008448518969159321024108011801200136614401600162018002160
screenWidth
enum<string>
ScreenWidthEnum
Allowed values:
32036037539039341241442876880082096210241280136614401536168019202048256034403840
timeZoneOffset
enum<string>
TimeZoneOffsetEnum
Allowed values:
-840-720-660-600-540-480-420-360-300-240-180-120-60060120180240300360420480540600660720
transactionIp
string
商户客户的交易IP地址
<= 64 characters
Example:
127.0.0.1
userAgent
enum<string>
持卡人的浏览器类型
<= 2048 characters
Allowed value:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Example:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
productType
enum<string>
产品类型
Allowed value:
CARD
subProductType
enum<string>
子产品类型
Allowed value:
SUBSCRIBE
txnType
enum<string>
交易类型
Allowed value:
SALE
subscription
Onerway发起扣款订阅
One of
requestType
enum<string>
订阅请求类型
<= 1 characters
Allowed value:
0
selfExecute
enum<string>
订阅扣款方式
<= 1 characters
Allowed value:
1
productName
string | null
订阅商品名称
<= 256 characters
frequencyType
enum<string>
订阅频率类型
<= 1 characters
Allowed values:
DWMY
bindCard
绑卡标志
Allowed value:
true
merchantCustId
string
商户客户ID
<= 40 characters
frequencyPoint
string
订阅频率点数
<= 2 characters
notificationEmail
string <email> | null
通知邮箱
<= 256 characters
metaData
string | null
元数据
<= 2048 characters
trialFromPlan
enum<string> | enum<null>
试用模式
<= 256 characters
Allowed values:
01
trialDays
integer
试用天数
expireDate
string | null
过期日期
<= 10 characters
Match pattern:
^\d{4}-\d{2}-\d{2}$
Example
{
"billingInformation": {
"address": "731 Liam Grove",
"city": "South Edythe",
"country": "US",
"email": "Bryce.Stoltenberg@gmail.com",
"firstName": "Tom",
"identityNumber": "14753915712",
"lastName": "Thompson",
"phone": "14809814903",
"postalCode": "29580",
"province": "CO"
},
"merchantCustId": "CustId-O67I-45Y8",
"merchantNo": "{{MERCHANT-NO}}",
"merchantTxnId": "837cb110-af73-4bd8-9565-e92a7a5fe7dc",
"merchantTxnTime": "2025-03-25 11:30:43",
"orderAmount": "51",
"orderCurrency": "USD",
"shippingInformation": {
"address": "26632 Ardella Forest",
"city": "Rennerview",
"country": "US",
"email": "Emilia.Goldner87@yahoo.com",
"firstName": "Lyric",
"identityNumber": "22492064172",
"lastName": "Mraz",
"phone": "17921271790",
"postalCode": "25220",
"province": "CO"
},
"sign": null,
"txnOrderMsg": {
"accept": "*/*",
"appId": "{{APPID}}",
"colorDepth": "16",
"contentLength": "65536",
"javaEnabled": false,
"language": "en-US",
"products": [
{
"currency": "USD",
"name": "aubergine",
"num": "11",
"price": "284.45",
"type": "laborum"
}
],
"returnUrl": "{{RETURN-URL}}",
"notifyUrl": "{{WEBHOOK-ENDPOINT}}",
"screenHeight": "844",
"screenWidth": "375",
"timeZoneOffset": "-660",
"transactionIp": "17.70.48.123",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
},
"productType": "CARD",
"subProductType": "SUBSCRIBE",
"txnType": "SALE",
"subscription": {
"requestType": "0",
"selfExecute": "1",
"productName": "Unbranded Granite Soap",
"frequencyType": "Y",
"bindCard": true,
"merchantCustId": "CustId-8FA8-KR7L",
"frequencyPoint": "39",
"notificationEmail": "Cale.Effertz@gmail.com",
"metaData": null,
"trialFromPlan": "1",
"expireDate": "2025-12-17",
"trialDays": 174
}
}
Request samples
Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://sandbox-acq.onerway.com/v1/sdkTxn/doTransaction' \
--header 'Content-Type: application/json' \
--data-raw '{
"billingInformation": {
"address": "731 Liam Grove",
"city": "South Edythe",
"country": "US",
"email": "Bryce.Stoltenberg@gmail.com",
"firstName": "Tom",
"identityNumber": "14753915712",
"lastName": "Thompson",
"phone": "14809814903",
"postalCode": "29580",
"province": "CO"
},
"merchantCustId": "CustId-O67I-45Y8",
"merchantNo": "YOUR-MERCHANT-NO",
"merchantTxnId": "837cb110-af73-4bd8-9565-e92a7a5fe7dc",
"merchantTxnTime": "2025-03-25 11:30:43",
"orderAmount": "51",
"orderCurrency": "USD",
"shippingInformation": {
"address": "26632 Ardella Forest",
"city": "Rennerview",
"country": "US",
"email": "Emilia.Goldner87@yahoo.com",
"firstName": "Lyric",
"identityNumber": "22492064172",
"lastName": "Mraz",
"phone": "17921271790",
"postalCode": "25220",
"province": "CO"
},
"sign": null,
"txnOrderMsg": {
"accept": "*/*",
"appId": "YOUR-APPLICATION-ID",
"colorDepth": "16",
"contentLength": "65536",
"javaEnabled": false,
"language": "en-US",
"products": [
{
"currency": "USD",
"name": "aubergine",
"num": "11",
"price": "284.45",
"type": "laborum"
}
],
"returnUrl": "YOUR-RETURN-URL",
"notifyUrl": "YOUR-WEBHOOK-ENDPOINT",
"screenHeight": "844",
"screenWidth": "375",
"timeZoneOffset": "-660",
"transactionIp": "17.70.48.123",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
},
"productType": "CARD",
"subProductType": "SUBSCRIBE",
"txnType": "SALE",
"subscription": {
"requestType": "0",
"selfExecute": "1",
"productName": "Unbranded Granite Soap",
"frequencyType": "Y",
"bindCard": true,
"merchantCustId": "CustId-8FA8-KR7L",
"frequencyPoint": "39",
"notificationEmail": "Cale.Effertz@gmail.com",
"metaData": null,
"trialFromPlan": "1",
"expireDate": "2025-12-17",
"trialDays": 174
}
}'
Responses
🟢200OK
application/json
Body
object {0}
Example
{}
Modified at 2025-03-25 03:30:44