跳至内容
结账集成测试集成

测试

模拟支付,测试集成效果。

介绍

为确保集成正常运行,请在不移动资金的情况下模拟交易。您可以通过在测试模式下创建和操作资源来进行此操作(在所有 API 调用中使用测试 API 密钥)。可以使用专门的测试支付方式来完成测试结账工作会话。

测试支付方式可让您模拟多种情况:

  • 成功支付
  • 因拒绝或数据无效而导致的支付错误
  • 由于银行转账或便利店支付等异步支付方式而延迟的支付

结账结果可以通过测试授权结果开关(测试环境的支付结果)来控制,这个开关仅供测试使用。

  • 成功 将总是导致付款成功
    • 同步付款方式(信用卡、PayPay 等):您将立即收到成功响应。
    • 异步付款方式(便利店、Pay-easy 等):您将在 10 秒后收到成功响应。
  • 拒绝 将永远不会导致付款成功
    • 同步付款方式(信用卡、PayPay 等):付款将被拒绝,结账页面会显示付款详细信息输入画面以便重新尝试(例如使用不同的信用卡)。
    • 异步付款方式(便利店、Pay-easy 等):付款永远不会完成,订单将保持在处理状态。

当您准备好将集成发布到正式环境时,请将测试 API 密钥替换为正式环境的密钥。如果您的集成使用测试 API 密钥,您将无法处理正式的付款。

完成一次成功的测试支付

  1. 创建一笔支付的结账工作会话 使用我们的 API 创建一个结账会话。

    • 使用您的测试 API 密钥在测试模式下创建结账会话。
bash
curl --location 'https://api.tokenz.one/v1/checkoutsession' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer secret_test_YOUR_KEY_HERE' \
--data '{
  "amount": {
    "currency": "JPY",
    "amount": 5200
  },
  "itemDetails": [
    {
      "product": {
        "label": "一颗绿宝石",
        "images": [
          "https://images.ctfassets.net/z82qbo7cv7ia/1dWPbk5Qx2M1Qikj6Knyuc/e37b2c26829c0d30793a348ae3adb3b0/fake-pass.webp"
        ],
        "quantity": 3,
        "price": {
          "currency": "JPY",
          "amount": 1200
        }
      }
    },
    {
      "product": {
        "label": "绿宝石的货车",
        "images": [],
        "quantity": 1,
        "price": {
          "currency": "JPY",
          "amount": 1600
        }
      }
    }
  ],
  "successUrl": "http://localhost:9000/success",
  "pendingUrl": "http://localhost:9000/pending",
  "cancelUrl": "http://localhost:9000/cancel",
  "customerInfo": {
    "emailAddress": "user@email.com"
  },
  "description": "description",
  "reference": "reference",
  "theme": "LIGHT"
}'
  1. 完成 Tokenz 结账 打开创建结账会话 API 调用返回的 url。

    • 选择「信用卡」
    • 输入任意的电子邮件地址,并且从下列测试卡中选择一张测试卡的信息。
    • 确认测试结果切换开关(测试环境的支付结果)为成功,这可以确保你的测试支付会被承认。
    • 点击「支付」,这笔交易会被承认,然后你会看到我们的支付成功画面。如果你设置了 webhook,你会收到一条 order.succeeded webhook。
    • 当你点击「OK」时,你将会被带到你于创建结账工作会话时所指定的 successUrl。

    永远不要在测试模式下使用真实的信用卡信息。请使用下列测试卡。

    测试卡号

    可按需左右滚动
    品牌卡号安全码日期
    任意 3 位数字任意未来日期
    任意 3 位数字任意未来日期
    任意 3 位数字任意未来日期
    任意 3 位数字任意未来日期
    任意 3 位数字任意未来日期
    任意 3 位数字任意未来日期
    任意 4 位数字任意未来日期
    任意 4 位数字任意未来日期
    任意 3 位数字任意未来日期
    任意 3 位数字任意未来日期

测试一次失败的支付

当消费者的支付失败时(例:信用卡被拒绝),我们会允许消费者重新尝试支付,你并不需要针对支付失败的订单作任何处理。

在收到成功付款的确认之前,请不要履行订单。

  1. 创建一笔支付的结账工作会话 使用我们的 API 创建一个结账工作会话。

    • 使用您的测试 API 密钥在测试模式下创建结账工作会话。
bash
curl --location 'https://api.tokenz.one/v1/checkoutsession' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer secret_test_YOUR_KEY_HERE' \
--data '{
  "amount": {
    "currency": "JPY",
    "amount": 5200
  },
  "itemDetails": [
    {
      "product": {
        "label": "一颗绿宝石",
        "images": [
          "https://images.ctfassets.net/z82qbo7cv7ia/1dWPbk5Qx2M1Qikj6Knyuc/e37b2c26829c0d30793a348ae3adb3b0/fake-pass.webp"
        ],
        "quantity": 3,
        "price": {
          "currency": "JPY",
          "amount": 1200
        }
      }
    },
    {
      "product": {
        "label": "绿宝石的货车",
        "images": [],
        "quantity": 1,
        "price": {
          "currency": "JPY",
          "amount": 1600
        }
      }
    }
  ],
  "successUrl": "http://localhost:9000/success",
  "pendingUrl": "http://localhost:9000/pending",
  "cancelUrl": "http://localhost:9000/cancel",
  "customerInfo": {
    "emailAddress": "user@email.com"
  },
  "description": "description",
  "reference": "reference"
}'
  1. 完成 Tokenz 结账
    打开创建结账工作会话 API 调用返回的 url。

    • 选择「信用卡」
    • 填写电子邮件地址,并使用其中一张测试卡的数据填写卡片详细资料。
    • 将测试结果开关(测试环境的支付结果)切换到拒绝(拒绝)。这样可以确保您的付款会被拒绝。
    • 点击「支付」。付款将被拒绝,您会被重定向回卡片输入页面,在那里您可以再次尝试付款。

完成一次非同步测试支付

要测试非同步支付的流程,可以使用便利店支付作为测试。 这使您能够测试如何处理延迟的支付成功通知。

  1. 创建一笔 "konbini" 支付的结账工作会话
    使用我们的 API 创建一个结账工作会话。

    • 使用您的测试 API 密钥在测试模式下创建结账工作会话。
    • 指定 KONBINI 为接受的支付方式。
bash
curl --location 'https://api.tokenz.one/v1/checkoutsession' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer secret_test_YOUR_KEY_HERE' \
--data '{
  "amount": {
    "currency": "JPY",
    "amount": 5200
  },
  "itemDetails": [
    {
      "product": {
        "label": "一颗绿宝石",
        "images": [
          "https://images.ctfassets.net/z82qbo7cv7ia/1dWPbk5Qx2M1Qikj6Knyuc/e37b2c26829c0d30793a348ae3adb3b0/fake-pass.webp"
        ],
        "quantity": 3,
        "price": {
          "currency": "JPY",
          "amount": 1200
        }
      }
    },
    {
      "product": {
        "label": "绿宝石的货车",
        "images": [],
        "quantity": 1,
        "price": {
          "currency": "JPY",
          "amount": 1600
        }
      }
    }
  ],
  "successUrl": "http://localhost:9000/success",
  "pendingUrl": "http://localhost:9000/pending",
  "cancelUrl": "http://localhost:9000/cancel",
  "customerInfo": {
    "emailAddress": "user@email.com"
  },
  "description": "description",
  "reference": "reference",
  "paymentMethodKinds": [
    "KONBINI"
  ],
  "theme": "LIGHT"
}'
  1. 完成 Tokenz 结账
    打开创建结账工作会话 API 调用返回的 url。

    • 请确认右上角的国家/地区已选择 Japan
    • 选择 Konbini 作为支付方式
    • 填写任何名称、电子邮件地址和电话号码,并选择一个便利商店。
    • 将测试授权结果开关保持为成功。这可以确保您的订单支付成功。点击 支付 按钮以启动支付。
    • 结账屏幕显示在便利商店支付的说明。
    • 支付完成后(测试支付的情况下为 10 秒后),会显示支付成功画面。如果您设置了 webhook,您也会收到一条 order.succeeded webhook。
    • 当您点击「OK」,您将被重定向到您在创建结账工作会话时指定的 successUrl。

不要尝试在便利店支付测试付款。测试结账仅供测试,无需进行实际支付。

测试钱包支付,如 PayPay 或支付宝

在实际支付过程中,用户需要登录他们的钱包并批准付款。为了让您能够在没有账户的情况下测试钱包支付,在测试结账时,我们只模拟重定向到钱包提供商的过程。

  1. 创建 PayPay 支付的结账工作会话
    使用我们的 API 创建一个结账工作会话。

    • 使用您的测试 API 密钥在测试模式下创建结账工作会话。
    • 指定 PAYPAY 为接受的支付方式。
bash
curl --location 'https://api.tokenz.one/v1/checkoutsession' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer secret_test_YOUR_KEY_HERE' \
--data '{
  "amount": {
    "currency": "JPY",
    "amount": 5200
  },
  "itemDetails": [
    {
      "product": {
        "label": "一颗绿宝石",
        "images": [
          "https://images.ctfassets.net/z82qbo7cv7ia/1dWPbk5Qx2M1Qikj6Knyuc/e37b2c26829c0d30793a348ae3adb3b0/fake-pass.webp"
        ],
        "quantity": 3,
        "price": {
          "currency": "JPY",
          "amount": 1200
        }
      }
    },
    {
      "product": {
        "label": "绿宝石的货车",
        "images": [],
        "quantity": 1,
        "price": {
          "currency": "JPY",
          "amount": 1600
        }
      }
    }
  ],
  "successUrl": "http://localhost:9000/success",
  "pendingUrl": "http://localhost:9000/pending",
  "cancelUrl": "http://localhost:9000/cancel",
  "customerInfo": {
    "emailAddress": "user@email.com"
  },
  "description": "description",
  "reference": "reference",
  "paymentMethodKinds": [
    "PAYPAY"
  ],
  "theme": "LIGHT"
}'
  1. 完成 Tokenz 结账
    打开创建结账工作会话 API 调用返回的 url。

    • 填写电子邮件地址。
    • 根据您想要的结果,将测试结果开关(测试环境的支付结果)设置为成功(成功)或拒绝(拒绝)。
    • 点击「继续使用 PayPay」,在实际付款情况下,这会将用户重定向到 PayPay 完成购买。在测试付款的情况下,我们只显示一个占位符画面,所以您不需要 PayPay 账户就能进行测试。
    • 点击「支付」。根据测试结果开关的设置,付款会被成功处理或被拒绝。