如何从Cyber​​source Secure Acceptance API生成/检索令牌?

时间:2019-03-07 11:52:23

标签: rest integration cybersource

我试图使用Cyber​​source文档中提供的测试数据为测试PAN创建令牌。但是,尝试这样做(假设它是REST Api)时,将导致“ 403-Forbidden”错误。该文档是受限制的,因为除了以下内容以外,它没有提供有关API的太多信息:

(Test) Endpoint: https://testsecureacceptance.cybersource.com/silent/token/create

请求创建独立的支付令牌:

reference_number=123456789
transaction_type=create_payment_token
currency=usd
amount=100.00
locale=en
access_key=e2b0c0d0e0f0g0h0i0j0k0l0m0n0o0p3
profile_id=0FFEAFFB-8171-4F34-A22D-1CD38A28A384
transaction_uuid=02815b4f08e56882751a043839b7b481
signed_date_time=2013-07-11T15:16:54Z
signed_field_names=comma separated list of signed fields
unsigned_field_names=comma separated list of unsigned fields
signature=WrXOhTzhBjYMZROwiCug2My3jiZHOqATimcz5EBA07M=
payment_method=card
card_type=001
card_number=4111111111111111
card_expiry_date=12-2022
card_cvn=005
bill_to_forename=Joe
bill_to_surname=Smith
bill_to_email=joesmith@example.com
bill_to_address_line1=1 My Apartment
bill_to_address_city=Mountain View
bill_to_address_postal_code=94043
bill_to_address_state=CA
bill_to_address_country=US

这是REST还是SOAP API?如何在邮递员中进行测试?我测试了一下是否可行,但均未成功。标题中也没有任何信息,因此有点令人困惑。

我正在尝试的示例POST测试:

POST https://testsecureacceptance.cybersource.com/silent/token/create
Content-Type:application/json
Accept:application/json

{
reference_number:123456789
transaction_type:create_payment_token
currency:usd
amount:100.00
locale:en
access_key:e2b0c0d0e0f0g0h0i0j0k0l0m0n0o0p3
profile_id:0FFEAFFB-8171-4F34-A22D-1CD38A28A384
transaction_uuid:02815b4f08e56882751a043839b7b481
signed_date_time:2019-03-07T06:16:54Z
signed_field_names:profile_id,access_key,transaction_uuid,signed_field_names,unsigned_field_names,signed_date_time,locale,transaction_type,reference_number,auth_trans_ref_no,amount,currency,card_type,card_number,card_expiry_date,card_cvn,payment_method,bill_to_forename,bill_to_surname,bill_to_email,bill_to_address_line1,bill_to_address_city,bill_to_address_postal_code,bill_to_address_state,bill_to_address_country
unsigned_field_names:
signature:WrXOhTzhBjYMZROwiCug2My3jiZHOqATimcz5EBA07M=
payment_method:card
card_type:001
card_number:4111111111111111
card_expiry_date:12-2022
card_cvn:005
bill_to_forename:Joe
bill_to_surname:Smith
bill_to_email:joesmith@example.com
bill_to_address_line1:1 My Apartment
bill_to_address_city:Mountain View
bill_to_address_postal_code:94043
bill_to_address_state:CA
bill_to_address_country:US
}

2 个答案:

答案 0 :(得分:1)

“这是REST还是SOAP API?” URL https://testsecureacceptance.cybersource.com/silent/token/create用于Secure Acceptance Checkout API。安全接受结帐API既不是SOAP API也不是REST API。它旨在用作来自客户浏览器的HTML表单POST。

如果您的目标是使用浏览器中的REST API,那么您将要使用记录在here中的安全接受灵活令牌。

如果您的目标是使用安全接受检查API,则完整文档为here

“如何在Postman中对此进行测试?” 由于这并不意味着是REST API调用,而是HTML形式的POST和HTML响应,因此您使用Postman的成功可能有限。例如,即使您收到成功工作的请求,响应也将是HTML文档而不是JSON。

我看到的一个问题是您正在使用示例签名,但是这对您不起作用。确保您遵循有关如何创建签名以及设置已签名和未签名字段的文档。

答案 1 :(得分:0)

@ J.J。 -您遇到的错误-“ 此字段无效或丢失。请与客户支持联系。:ots_profileid'”。告诉您请求有效负载中缺少(或具有无效的)profileID。系统不知道在处理此请求时使用什么配置文件。