> 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/brazil/virtual-pix/create.md).

# Create Virtual PIX Account

## Payin by Virtual Pix

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

This endpoint allows you to create virtual PIX account number in Brazil.

#### Headers

| Name                                            | Type   | Description                                |
| ----------------------------------------------- | ------ | ------------------------------------------ |
| Content-Type<mark style="color:red;">\*</mark>  | string | application/json; chartset=UTF-8           |
| Authorization<mark style="color:red;">\*</mark> | string | Basic Base($app\_*id:$security\_*&#x6B;ey) |

#### Request Body

| Name                                                 | Type   | Description                                                                         |
| ---------------------------------------------------- | ------ | ----------------------------------------------------------------------------------- |
| app\_id<mark style="color:red;">\*</mark>            | string | <p>created app's id at dashboard</p><p>- Max. 32 chars -</p>                        |
| timestamp<mark style="color:red;">\*</mark>          | string | <p>yyyy-MM-dd HH:mm:ss<br>- Max. 19 chars -</p>                                     |
| notify\_url<mark style="color:red;">\*</mark>        | string | Where Pagsmile will send notification to                                            |
| customer.buyer\_id<mark style="color:red;">\*</mark> | string | User's buyer id                                                                     |
| customer.name                                        | string | User's name                                                                         |
| customer.email                                       | string | User's email                                                                        |
| customer.identify.type                               | string | <p>User's identification type</p><p>- CPF or CNPJ -</p>                             |
| customer.identify.number                             | string | <p>User's identification number</p><p>- 11 digits if CPF or 14 digits if CNPJ -</p> |

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

```
{
    "code": "10000",
    "msg": "Success",
    "account_id": "QG9MAQFPLTT0BTY0",
    "buyer_id": "buyer_0101_0001",
    "status": "ACTIVE",
    "notify_url": "http://merchant/callback/success",
    "qr_code": "00020126580014br.gov.bcb.pix013627a44d0a-0736-4bbf-a4a4-6e11063973315204000053039865406100.005802BR5908PAGSMILE6008So Paulo62230519mpqrinter123742074363049E0B"
}
```

{% endtab %}

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

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

{% endtab %}
{% endtabs %}

{% hint style="info" %}
**User payment tips**

* Users only need to scan the QR code to finish the payment. QR code can be generated with **qr\_code** value.
* Add a Copy QRCODE button. For mobile users, they can copy the string of **qr\_code** and paste it into their wallet app to finish the payment. Adding a copy button could help to improve the user's payment experience.
  {% endhint %}

## Example

```
curl --location --request POST 'https://gateway-test.pagsmile.com/virtual-account/create' \
--header 'Authorization: Basic MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==' \
--header 'Content-Type: application/json' \
--data-raw '{
    * "app_id": "162************38",
    * "timestamp": "2022-01-01 03:54:01",
    * "notify_url": "http://merchant/callback/success",
    * "customer" : {
    *     "buyer_id": "buyer_0101_0001",
          "name": "Test User Name",
          "email": "test@pagsmile.com",
          "identify": {
              "type": "CPF",
              "number": "11032341882"
          }
      }
      }'
```

![Example of payment page](/files/2oOWCvLDajkiHEvgC0cz)

{% hint style="info" %}
Note: **162\*\*\*\*\*\*\*\*\*\*\*\*38** is pagsmile's test app id for sandbox, and **MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==** is authorization token associated with the test app id.
{% endhint %}

{% hint style="danger" %}
Please use your own **app\_id** and generate your own **authorization token** when testing.
{% endhint %}
