Translation disclaimer

Documentation is written in English and subsequently translated. This page, therefore, might not have the most up-to-date content. If any questions arise relating to the accuracy of the translated content, please refer to the English version of the page.

Menu

创建 Token

创建卡 Token 来保护您的客户的卡和账单信息,这样将有助于降低您的PCI-DSS 合规成本。

注释:如果您拥有以前供提供商的 Token,则可以将现有的 Token导入到 Access Worldpay。


创建卡 Token 请求

若要创建 Token,请将您的请求 POST 到在查询 Token 根资源响应中返回的tokens:tokens操作链接。

在创建 Token 时,您可以选择在请求中包含 namespace 参数。请单击以下的用命名空间创建 Token 选项卡,查看示例请求。

创建 Token 示例请求

POST https://try.access.worldpay.com/tokens

Token 创建请求正文:

Copied!
{
    "description": "Test Token Description",
    "paymentInstrument": {
        "type": "card/front",
        "cardHolderName": "Sherlock Holmes",
        "cardNumber": "4444333322221111",
        "cardExpiryDate": {
            "month": 5,
            "year": 2035
        },
        "billingAddress": {
            "address1": "221B Baker Street",
            "address2": "Marylebone",
            "address3": "Westminster",
            "postalCode": "NW1 6XE",
            "city": "London",
            "state": "Greater London",
            "countryCode": "GB"
        }
    },
    "merchant": {
        "entity": "MindPalaceLtd"
    }
}
{
    "description": "Test Token Description",
    "paymentInstrument": {
        "type": "card/front",
        "cardHolderName": "Sherlock Holmes",
        "cardNumber": "4444333322221111",
        "cardExpiryDate": {
            "month": 5,
            "year": 2035
        },
        "billingAddress": {
            "address1": "221B Baker Street",
            "address2": "Marylebone",
            "address3": "Westminster",
            "postalCode": "NW1 6XE",
            "city": "London",
            "state": "Greater London",
            "countryCode": "GB"
        }
    },
    "namespace": "SHOPPER_ID_1234567890",
    "merchant": {
        "entity": "MindPalaceLtd"
    }
}

创建 Token 请求参数的描述:

参数必需描述
descriptionToken 描述。如果未提供,则会为您创建默认 description
tokenExpiryDateTimeToken 不可用的日期/时间,以 ISO 8601 格式表示。如果未提供,则使用默认的过期日期/时间。
paymentInstrument包含支付 type 和详情的对象。所有子字段均为必填,但 billingAddress 除外(见下文)。
billingAddress包含 billingAddress 信息的对象。如已纳入,则以下字段为必填:
  • address1
  • city
  • countryCode
  • postalCode
这会在支付处理过程中使用。如果所提供的地址与在发卡银行注册的地址不符,则该支付存在其他风险。
namespace会使用命名空间来将最多 16 个卡集合为一组,e.g. 用于一个客户。一个卡可以位于多个命名空间。
schemeTransactionReference由 Visa 或 Mastercard 提供的值,用于追踪重复性交易。
merchant包含有关商户账户的对象。
merchant.entity确定商户账户,以进行开单、报告和对账。有关更多详情,请联系您的实施经理。

注释:通常不需要您提供 schemeTransactionReference 的值。如果您正在使用Verified Tokens API来创建 Token,则会在适用时自动将其包括在内。

响应

最佳实践:Access Worldpay 在服务响应的头文件中返回WP-CorrelationId。我们强烈建议您将此记录下来。我们使用WP-CorrelationId检查单个服务请求。

一旦您发送了创建 Token 请求,将会返回以下响应之一:

该冲突可能由 cardHolderName、卡到期 month、卡到期 yearbillingAddressschemeTransactionReference 中的差异化所致。

在这种情况下,Access Worldpay 中存档的数据会被保留,而造成冲突的数据会在 conflicts 对象中返回。如果您希望解决该冲突,则可以使用在响应中返回的tokens:conflicts操作链接来更新现有 Token

注释:

  • 发生冲突的 schemeTransactionReference 的行为会与其他字段稍有不同。如果现有 Token 未包含 schemeTransactionReference,那么在存在 schemeTransactionReference 的情况下,它会自动更新,以包含您的创建 Token 请求中的那个值。如果 Token 在其他方面相同,则您会收到 200 OK 响应。如果 Token 含有其他冲突字段,则你会得到 409 Conflict 响应,但 schemeTransactionReference 未列为冲突。
  • 如果您试图创建与现有 Token 具有相同银行卡资料的新 Token,则您将在实时环境中收到 409 Conflict 响应,但在测试环境中收到 200 OK 响应。 这是因为收到了不同的 schemeTransactionReference,作为每个创建 Token 请求的一部分。

注释:可选字段:如果现有 Token 具有该字段的值,而您的创建 Token 请求没有该值,则它不会被算作冲突,因此也不会做出更改。

现有 Token 资源参考号会在 tokenPaymentInstrument 对象中返回。

Copied!
{
    "tokenPaymentInstrument": {
        "type": "card/tokenized",
        "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0NzI0NE1rdUtjMUFJdjYxVnlibWZuUT0ifQ"
    },
    "tokenId": "9902480679618049603",
    "description": "Test Token Description",
    "tokenExpiryDateTime": "2021-06-24T09:19:35Z",
    "paymentInstrument": {
        "type": "card/masked",
        "cardNumber": "4444********1111",
        "cardHolderName": "Sherlock Holmes",
        "cardExpiryDate": {
            "month": 5,
            "year": 2035
        },
        "billingAddress": {
            "address1": "221B Baker Street",
            "address2": "Marylebone",
            "address3": "Westminster",
            "postalCode": "NW1 6XE",
            "city": "London",
            "state": "Greater London",
            "countryCode": "GB"
        },
        "bin": "444433",
        "brand": "VISA",
        "fundingType": "credit",
        "countryCode": "GB"
    },
    "conflicts": {
        "paymentInstrument": {
            "cardHolderName": "Sherlock Holmes"
        },
        "conflictsExpiryDateTime": "2019-06-24T09:49:35Z"
    },
    "_links": {
        "tokens:token": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0NzI0NE1rdUtjMUFJdjYxVnlibWZuUT0ifQ"
        },
        "tokens:description": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0MWJVbkh1WTFGZExUNXJxc04va1ZoTFVzYW1OU1lxSFE2NHI1c2JkY1pWaSJ9"
        },
        "tokens:cardHolderName": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0d3ltd21ieGo3TlZLYzRYSkExOUhSdUpLN2N3VVc5WUk3czRUTW1RQ2JLdjFnVXlzakdPSXdWWkRhZkZyUmlMd3c9PSJ9"
        },
        "tokens:cardExpiryDate": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0d3ltd21ieGo3TlZLYzRYSkExOUhSdUpLN2N3VVc5WUk3czRUTW1RQ2JLdkVpVW5GNnBsZThNTXNQWTRGbzFzTXc9PSJ9"
        },
        "tokens:billingAddress": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0d3ltd21ieGo3TlZLYzRYSkExOUhSdFpSdXFxbWZlNVl1TkpHZEVvZXN3MTlCU0lmdCtxSTUyVDJSdXlmSTIwM3c9PSJ9"
        },
        "tokens:schemeTransactionReference": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoiSENXWFZQZjNIZ1V3dnpDMElJZS9Zdmc4M0pYM3dDWEJTVnQrWVlacXdDUXFFKzhzaC8xNSs2d3NkTTdFWUFNVU9tdXBmUlZGeVNDY2dPMkhKV2NIcGc9PSJ9"
        },
        "tokens:conflicts": {
            "href": "https://try.access.worldpay.com/tokens/eyJrIjoxLCJkIjoialRBL0FFelBzcnZpNCtzRGNRemh0ODUrN2hvZ0cyK1JvQ3JKdUtFZnU5UTFsdTdwODVHTUcwYy92VW02MDlJd2pHQllvcW0zanhWQ3p3Zk9OUW9CYUZtQ1hNbFhwM3lhSXlkYVlNYWJnQUdQUHFpRVAxVXVpZHM2Y2tvTjEvOGNJdFQ0WkVlVEJIVWF6T1dlWTlQMkpnPT0ifQ"
        },
        "curies": [{
            "href": "https://try.access.worldpay.com/rels/tokens/{rel}.json",
            "name": "tokens",
            "templated": true
        }]
    }
}

注释:如果出现错误,您可以在我们的错误参考中获取更多信息。

后续步骤


更新 Token 详情

删除 Token