> For the complete documentation index, see [llms.txt](https://docs.pagsmile.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pagsmile.com/reference/payin/submit-a-payin/japan/wallet-1.md).

# Wallet

How to use Wallet to submit a payin in Japan.

### Payin by Wallet

<mark style="color:green;">`POST`</mark> `https://gateway-test.pagsmile.com/trade/pay`

This endpoint allows you to submit a payin by Wallet in Japan.

**Headers**

| Name                                            | Type   | Description                         |
| ----------------------------------------------- | ------ | ----------------------------------- |
| Content-Type<mark style="color:red;">\*</mark>  | string | `application/json; charset=UTF-8`   |
| Authorization<mark style="color:red;">\*</mark> | string | `Basic Base64(app_id:security_key)` |

**Request Body**

| Name                                              | Type   | Description                                                                                                                                                        |
| ------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| app\_id<mark style="color:red;">\*</mark>         | string | <p>Created app's ID at dashboard.</p><p>Maximum length: 32 characters.</p>                                                                                         |
| out\_trade\_no<mark style="color:red;">\*</mark>  | string | <p>ID given by the merchant in their system.</p><p>Maximum length: 64 characters.</p>                                                                              |
| notify\_url<mark style="color:red;">\*</mark>     | string | Where Pagsmile will send the payment notification.                                                                                                                 |
| return\_url                                       | string | Redirect to the merchant's URL when the user finishes checkout.                                                                                                    |
| timestamp<mark style="color:red;">\*</mark>       | string | Request time in `yyyy-MM-dd HH:mm:ss` format.                                                                                                                      |
| method<mark style="color:red;">\*</mark>          | string | Fixed value: `Wallet`.                                                                                                                                             |
| channel<mark style="color:red;">\*</mark>         | string | Wallet channel. Use one of: `merpay`, `auPay`, `RKTEC`, or `DocomoPay`.                                                                                            |
| order\_amount<mark style="color:red;">\*</mark>   | string | <p>Payment amount.</p><p>Check the <a href="https://docs.pagsmile.com/reference/payin/data/payment-method#apac">Payment Method</a> page for applicable limits.</p> |
| order\_currency<mark style="color:red;">\*</mark> | string | Fixed value: `JPY`.                                                                                                                                                |
| subject<mark style="color:red;">\*</mark>         | string | <p>Payment reason or item title.</p><p>Maximum length: 128 characters.</p>                                                                                         |
| content                                           | string | <p>Payment reason detail or item detail.</p><p>Maximum length: 255 characters.</p>                                                                                 |
| buyer\_id<mark style="color:red;">\*</mark>       | string | Merchant user's ID.                                                                                                                                                |

{% tabs %}
{% tab title="200 submit successfully" %}
{% tabs %}
{% tab title="Merpay" %}

```json
{
  "code": "10000",
  "msg": "Success",
  "prepay_id": "eU1BY2xPNE9**7c4B",
  "trade_no": "202***183",
  "out_trade_no": "out_no_68***250",
  "web_url": "",
  "pay_url": "https://netpayment.merpay.com/trans***44683f860",
  "trade_status": "PROCESSING",
  "wallet_url": "https://netpayment.merpay.com/trans***683f860"
}
```

{% endtab %}

{% tab title="au PAY" %}

```json
{
  "code": "10000",
  "msg": "Success",
  "prepay_id": "eThhLzN5***04",
  "trade_no": "202***199",
  "out_trade_no": "out_no_68***833",
  "web_url": "",
  "pay_url": "https://wallet.auone.jp/netpay/paym**0000F",
  "trade_status": "PROCESSING",
  "wallet_url": "https://wallet.auone.jp/netpay/pay**600000F"
}
```

{% endtab %}

{% tab title="RKTEC" %}

```json
{
  "code": "10000",
  "msg": "Success",
  "prepay_id": "QzUxZGsrQUxIOTVDY***URT0=-45ca7896",
  "trade_no": "202***228",
  "out_trade_no": "out_no_68***541",
  "web_url": "",
  "pay_url": "https://online.checkout.rakuten.co.jp/paym***UH",
  "trade_status": "PROCESSING",
  "wallet_url": "https://online.checkout.rakuten.co.jp/pa**0TUH"
}
```

{% endtab %}

{% tab title="DocomoPay" %}

```json
{
  "code": "10000",
  "msg": "Success",
  "prepay_id": "TnJyREtsSzFtMlVZM1RNam***c87052",
  "trade_no": "202***279",
  "out_trade_no": "out_no_68***291",
  "web_url": "",
  "pay_url": "https://online.starpay.jp/DPayTDOM/AuthReque***530368",
  "trade_status": "PROCESSING",
  "wallet_url": "https://online.starpay.jp/DPayTDOM/AuthReq***30368"
}
```

{% endtab %}
{% endtabs %}
{% endtab %}

{% tab title="400 duplicate out\_trade\_no" %}

```json
{
  "code": "40002",
  "msg": "Business Failed",
  "sub_code": "duplicate-out_trade_no",
  "sub_msg": "out_trade_no is duplicate"
}
```

{% endtab %}
{% endtabs %}

### Example

```bash
curl --location --request POST 'https://gateway-test.pagsmile.com/trade/pay' \
--header 'Authorization: Basic {{authorization_token}}' \
--header 'Content-Type: application/json' \
--data-raw '{
  "app_id": "168***42509",
  "out_trade_no": "out_no_68***250",
  "method": "Wallet",
  "channel": "merpay",
  "order_amount": "100",
  "order_currency": "JPY",
  "subject": "Trade payment test",
  "content": "Trade payment content",
  "notify_url": "https://merchant.example.com/callback/success",
  "return_url": "https://merchant.example.com",
  "buyer_id": "buyer_0101_0001",
  "timestamp": "2026-09-14 14:30:00"
}'
```

{% hint style="info" %}
Set `channel` to one of the following values according to the wallet selected by the customer: `merpay`, `auPay`, `RKTEC`, or `DocomoPay`.
{% endhint %}

{% hint style="danger" %}
Please use your own `app_id` and generate your own authorization token when testing.
{% endhint %}
