Skip to content

Partners

digilife

DIGILIFE

ultraweb

ULTRAWEB

API ​

引言 ​

描述 ​

PAYSTO API — 用于管理多渠道交易基础设施的软件套件。

tip

PAYSTO API 与 Authorize.net Secure Hosted Payment Form API 完全兼容,这使得无需大量成本即可在短时间内配置任何Web资源的集成。

目的 ​

PAYSTO API 允许自动化在俄罗斯接受支付和处理在线订单。

术语和概念 ​

术语描述
收款人资金存入其账户的客户
付款人进行支付的个人
商店收款人的信息系统。例如,收款人网站上的付款人购物车和收款人的计费系统。

简化支付流程 ​

实线 – 必需
虚线 – 可选。

成功支付时的步骤顺序 ​

  1. 支付请求;
  2. 检查PAYSTO目录中的商品;
  3. 将付款人转至支付页面;
  4. 支付状态;
  5. 生成收银机收据;
  6. 支付状态;
  7. 将买家返回至供应商网站;
  8. 查询支付状态;
  9. 支付状态。

传输的数据类型 ​

名称描述值范围
整数整数从 0 到 2147483647
长整数长整数从 0 到 4294967296
货币实数,整数和小数部分分隔符为 «.»(点),无千位分隔符,小数部分精确到百分位。点和后面的两位数字是必需的。例如,10 必须写为 10.00,10.123 必须写为 11.12 或 11.13从 0.01 到 1000000.00
字符串字符串。不能包含字符 «=»(等号)和字符 «&»(与符号)。每个参数的长度单独确定。
日期时间协调世界时(UTC)。格式为 yyyymmddhhnn,其中 y – 表示年份的数字,m – 月份,d – 月份中的日期,h – 小时(hh – 从 0 到 23 的数字)n – 分钟。例如,2010年1月15日 17:04 表示为 201001151704从 201001010000 到 205012312359
MD5字符串,表示一个32位十六进制数且为小写(总共32个字符 0-9, A-F)。

安全保障 ​

请求 ​

检查请求来源的IP。签名(必需)。

PAYSTO 响应 ​

检查响应服务器的SSL证书。

响应服务器地址 ​

响应服务器的IP地址在 PAYSTO 个人办公室 > 参数 中指定。

执行支付的请求 ​

账单支付请求 ​

此步骤开始支付商店中开具的账单的程序。

地址元素值
协议https
方法Post
路径信息在 PAYSTO 个人办公室 > 参数 中提供
编码UTF8

参数

名称描述类型必需
x_description支付备注字符串是
x_login商店代码整数是
x_amount待支付金额货币是
x_currency_code待支付金额的货币。可以接受 USD 或 RUB 值字符串是
x_cart_currency商店购物车的货币。值:USD、EUR 或其他货币的简称。当购物车货币不同于卢布(RUB)时传递,以便在支付页面上显示(扣款金额和货币取自 x_amount 和 x_currency_code 的值)。字符串否
x_line_item待支付的购物车内容。字段值的详细描述见下表。字符串是
x_email买家电子邮箱字符串否
x_fp_sequence商店分配的交易编号。这可以是账单号或任何其他随机数。数值是
x_fp_timestampUTC 时间,从 1970年1月1日 开始的秒数数值是
x_fp_hash使用 HMAC-MD5 哈希算法生成的签名,使用字段 x_login, x_fp_sequence, x_fp_timestamp, x_amount 和 x_currency_code,用 ^ 符号分隔 签名示例是
x_invoice_num商店中的账单号数值是
x_first_name买家名字字符串否
x_last_name买家姓氏字符串否
x_address买家地址字符串否
x_city买家城市字符串否
x_state买家地区字符串否
x_country买家国家字符串否
x_ship_to_first_name收货联系人名字字符串否
x_ship_to_last_name收货联系人姓氏字符串否
x_phone联系电话字符串否
x_fax联系传真字符串否
x_cust_id商店中的买家标识符字符串否
x_ship_to_address送货地址字符串否
x_ship_to_state送货地区字符串否
x_ship_to_zip送货地址邮编字符串否
x_ship_to_country送货国家字符串否
x_relay_response字符串必须具有值 «TRUE»字符串是
x_relay_url支付通知 URL字符串是
示例字符串: "11111^789^67897654^10.50^USD"
签名生成示例:
Fingerprint = HMAC-MD5 ("11111^789^67897654^10.50^USD", "secret*key")

字段 x_line_item 应包含用户待支付购物车中的一行,由多个元素组成,元素间用分隔符 | 分隔。传递的字段数量必须与购物车中的项目数量一致。

字段 x_line_item 的格式

名称描述必需
Item ID商品标识符。最长31个字符的字符串。是
item name商品名称。最长31个字符的字符串。是
item description商品描述。最长255个字符的字符串。是
item quantity数量。必须为正数。是
item price (unit cost)商品单价。实数,整数和小数部分分隔符为 «.»(点),无千位分隔符,小数部分精确到百分位。点和后面的两位数字是必需的。例如,10 必须写为 10.00,10.123 必须写为 11.12 或 11.13是
item taxable商品是否需缴纳增值税。可能的值:TRUE, FALSE, T, F, YES, NO, Y, N, 1, 0否

传递的购物车示例:

x_line_item=item1<|>golf balls<|><|>2<|>18.95<|>Y&
x_line_item=item2<|>golf bag<|>Wilson golf carry bag, red<|>1<|>39.99<|>Y&
x_line_item=item3<|>book<|>Golf for Dummies<|>1<|>21.99<|>Y&

支付详情 ​

此步骤通知商店账单支付结果。

warning

对于此请求,商店应检查:

  • 请求来源的IP地址;
  • 账单号;
  • 支付金额;
  • 签名。

放弃这些检查可能会严重削弱对欺诈的防护。

地址元素值
协议https
方法Post
路径在传递支付请求时在 x_relay_url 中指定
编码UTF8

参数

名称描述类型
x_response_code支付结果 1 – 已支付 2 – 已拒绝 3 – 错误整数
x_trans_idPAYSTO 中的支付编号长整数
x_invoice_num商店中的支付编号整数
x_MD5_Hash使用 MD5 哈希算法生成的签名,使用密钥和字段 x_login, x_trans_id, x_amount 示例字符串 «secret*key111119876543211.00»MD5
x_amount支付金额货币
x_cust_id值等于支付请求中的相应参数字符串
x_first_name值等于支付请求中的相应参数字符串
x_last_name值等于支付请求中的相应参数字符串
x_address值等于支付请求中的相应参数字符串
x_city值等于支付请求中的相应参数字符串
x_state值等于支付请求中的相应参数字符串
x_zip值等于支付请求中的相应参数字符串
x_country值等于支付请求中的相应参数字符串
x_phone值等于支付请求中的相应参数字符串
x_fax值等于支付请求中的相应参数字符串
x_cust_id值等于支付请求中的相应参数字符串
x_email值等于支付请求中的相应参数字符串
x_ship_to_first_name值等于支付请求中的相应参数字符串
x_ship_to_last_name值等于支付请求中的相应参数字符串
x_ship_to_address值等于支付请求中的相应参数字符串
x_ship_to_city值等于支付请求中的相应参数字符串
x_ship_to_state值等于支付请求中的相应参数字符串
x_ship_to_zip值等于支付请求中的相应参数字符串
x_ship_to_country值等于支付请求中的相应参数字符串
HTTP CODE 200 响应的解释无响应或其他 HTTP CODE、超时的解释
认为商店服务已收到通知。认为商店服务不可用且无法向买家履行其义务。从买家处收到的资金将被冻结。

买家返回商店 ​

在此步骤中,买家返回商店。

warning

此请求的数据经过买家的计算机,可能被不诚实的买家伪造。因此,不建议在 Success url 和 Fail Url 页面上设置已开具账单的状态。请使用 Result Url 来实现此目的。

tip

我们建议将 Success url 和 Fail Url 指定为同一页面的地址,在该页面上基于处理 Result url 时保存的数据(或通过向 PAYSTO 重新查询账单状态)将用户重定向到最终的成功(失败)支付页面。

重要的是要理解,此步骤是在买家从商店跳转到 PAYSTO 后一段时间从其计算机执行的,因此商店可能需要授权买家才能显示私有数据。

地址元素值
协议https
方法Post
路径在注册商店时指定
编码UTF8

参数与 支付详情 点中描述的相同。

支付信息 ​

warning

对于这些请求,建议检查响应服务器的 SSL 证书以防止 DNS 欺骗。

期间对账单 ​

地址元素值
协议https
方法Get
路径https://paysto.com/api/Payment/GetList

参数

名称描述类型必需
FROM期间开始(默认 – 当前天的开始)。日期时间是
TO期间结束(默认 – 当前时刻)。日期时间是
PAYSTO_SHOP_ID商店 ID整数是
PAYSTO_REQUEST_NO贯穿所有类型请求的计数器,每个后续值必须大于前一个值。长整数否
PAYSTO_MD5传输数据的签名。MD5 校验和。MD5是

响应值

HTTP CODE注释
200CSV 文件,格式为 Datetime,PAYSTO_PAYMENT_ID,PAYSTO_INVOICE_ID,PAYSTO_SUM,accountSum,status, statusNote 如果指定期间内没有支付 – 空文件

列描述

名称描述类型
Datetime申请注册的日期和时间。日期时间
PAYSTO_PAYMENT_IDPAYSTO 中的交易编号长整数
PAYSTO_INVOICE_ID传递的商店账单号。最长50个字符的字符串
PAYSTO_SUM申请金额(实际打算支付/已支付的金额)货币
accountSum客户账户变动。正数 – 余额增加,负数 – 余额减少。货币
status申请状态代码。申请状态
statusNote状态注释。例如,如果状态是 RES_ERROR – 则描述错误。字符串

响应值

HTTP CODE注释
403违反安全条件。请检查传递的参数和设置。
404未找到商店

支付详情 ​

地址元素值
协议https
方法Get
路径https://paysto.com/api/Payment/GetByInvoiceId

参数

名称描述类型必需
PAYSTO_INVOICE_ID传递的商店账单号。最长50个字符的字符串是
PAYSTO_SHOP_ID商店 Id整数是
PAYSTO_REQUEST_NO贯穿所有类型请求的计数器,每个后续值必须大于前一个值。长整数否
PAYSTO_MD5传输数据的签名。MD5 校验和。MD5是

响应值

HTTP CODE注释
200CSV 文件,格式为 Datetime,PAYSTO_PAYMENT_ID,PAYSTO_INVOICE_ID,PAYSTO_SUM,accountSum,status, statusNote

列描述

名称描述类型
Datetime申请注册的日期和时间。日期时间
PAYSTO_PAYMENT_IDPAYSTO 中的交易编号长整数
PAYSTO_INVOICE_ID传递的商店账单号。最长50个字符的字符串
PAYSTO_SUM申请金额(实际打算支付/已支付的金额)货币
accountSum客户账户变动。正数 – 余额增加,负数 – 余额减少。货币
status申请状态代码。申请状态
statusNote状态注释。例如,如果状态是 RES_ERROR – 则描述错误。字符串

响应值

HTTP CODE注释
403违反安全条件。请检查传递的参数和设置。
404未找到该商店的具有此编号的账单

账户状态 ​

warning

对于这些请求,建议检查响应服务器的 SSL 证书以防止 DNS 欺骗。

余额查询

地址元素值
协议https
方法Get / Post (推荐)
路径https://paysto.com/api/Common/Balance

参数

名称描述类型必需
PAYSTO_SHOP_ID商店 Id,注册时发放。整数是
PAYSTO_REQUEST_NO贯穿所有类型请求的顺序号,每个后续值必须大于前一个值。长整数否
PAYSTO_MD5传输数据的签名。MD5 校验和。MD5是
响应描述类型
HTTP CODE 200标量值。可用余额。货币
HTTP CODE 403违反安全条件。请检查传递的参数和设置。
HTTP CODE 404未找到商店

附录。连接参数 ​

从个人办公室界面获取的数据(需要注册):

  1. 商店 ID;
  2. API 请求地址;
  3. 响应服务器地址;
  4. 密钥(连接时由用户设置);

连接设置