# PicPay

***

### <mark style="color:orange;">POST</mark> /v2/payin

{% hint style="info" %}
**Request**
{% endhint %}

```bash
curl -v --location --request POST 'https://sandbox.smartfastpay.com/v2/payin' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer < Access-Token >' \
    --data-raw '{
        "customer": {
            "id": "b48a0728-9ff4-47ee-8f1b-92d2d5813dda",
            "name": "John Doe",
            "email": "john.doe@teste.com",
            "document": {
                "type": "CPF",
                "number": "12345678909"
            },
            "phone": "+5511912345678"
        },
        "country": "BRA",
        "payment_method": "picpay",
        "notification_url": "https://webhook.site/asdfasdf",
        "transaction": {
            "id": "b7178a51-3c86-4c08-80ac-49f2b93c58bcert",
            "currency": "BRL",
            "amount": 2
        }
    }'
```

{% hint style="info" %}
**Parameters details**
{% endhint %}

<table><thead><tr><th width="266">Parameter</th><th width="120" align="center">Type</th><th align="center">Required</th><th>Description</th></tr></thead><tbody><tr><td><code>customer.id</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center"><strong>yes</strong></td><td>Unique identifier for the customer in your system. This value should remain consistent across all transactions for the same customer</td></tr><tr><td><code>customer.name</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center"><strong>yes</strong></td><td>The full name of the customer making the payment. It should match the name on the customer's identification documents</td></tr><tr><td><code>customer.email</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The email address of the customer. This will be used for sending payment confirmations and notifications</td></tr><tr><td><code>customer.phone</code></td><td align="center"><mark style="color:red;"><code>string</code></mark><br><mark style="color:red;"><code>(E.164)</code></mark></td><td align="center">no</td><td>The phone number of the customer, including the country code. This parameter may be optional or required depending on the payment method used.<br><a href="https://www.twilio.com/docs/glossary/what-e164">https://www.twilio.com/docs/glossary/what-e164</a></td></tr><tr><td><code>customer.birthdate</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The birthdate of the customer, provided in the format <code>mm-dd-yyyy</code>. This parameter may be required depending on the country regulations or the payment method</td></tr><tr><td><code>customer.document.number</code></td><td align="center"><mark style="color:red;"><code>string</code></mark><br><mark style="color:red;"><code>Format: 99999999999 / 9999999999999</code></mark></td><td align="center"><strong>yes</strong></td><td>The official identification number of the customer. This is typically a national ID, or other government-issued document</td></tr><tr><td><code>customer.document.type</code></td><td align="center"><mark style="color:red;"><code>string</code></mark><br><mark style="color:red;"><code>(CPF or CNPJ)</code></mark></td><td align="center"><strong>yes</strong></td><td>The type of document provided by the customer. Common types include national ID, or driver's license. <a href="/pages/yXqITA9HFiwkUhEhGFNm">List of documents allowed</a>.<br><strong>Default: CPF</strong></td></tr><tr><td><code>customer.address.addres_1</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The primary street address of the customer </td></tr><tr><td><code>customer.address.addres_2</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>Additional address information, such as apartment number or suite</td></tr><tr><td><code>customer.address.city</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The city in which the customer resides</td></tr><tr><td><code>customer.address.country_code</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The ISO 3166-1 alpha-3 country code for the customer's address. <a href="/pages/WEBQfG9FyAw1HF4fdryA">List of country codes.</a></td></tr><tr><td><code>customer.address.neightborhood</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The neighborhood or district of the customer's address</td></tr><tr><td><code>customer.address.number</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The street number of the address</td></tr><tr><td><code>customer.address.postal_code</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The postal or ZIP code for the customer's address</td></tr><tr><td><code>customer.address.state</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center">no</td><td>The state or region of the customer's address </td></tr><tr><td><code>transaction.id</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center"><strong>yes</strong></td><td>A unique identifier for the transaction. This ID should be generated by your system to track the specific payment process</td></tr><tr><td><code>transaction.currency</code></td><td align="center"><mark style="color:red;"><code>string</code></mark><br><mark style="color:red;"><code>(BRL or USD)</code></mark></td><td align="center"><strong>yes</strong></td><td>The currency in which the transaction is being conducted. Use standard ISO 4217 currency codes (e.g., BRL, USD). <a href="/pages/AV8tyVPt6rJX0yyuYIej">List of currency codes</a><br><strong>Default: BRL</strong></td></tr><tr><td><code>transaction.amount</code></td><td align="center"><mark style="color:red;"><code>decimal</code></mark><br><mark style="color:red;"><code>(10,2)</code></mark></td><td align="center"><strong>yes</strong></td><td>The total amount of the transaction in the specified currency. This value should be a numeric amount (use dot instead of comma)<br><mark style="color:red;"><code>Eg: 300.10</code></mark></td></tr><tr><td><code>transaction.expire</code></td><td align="center"><mark style="color:red;"><code>integer (11)</code></mark></td><td align="center">no</td><td>The time in seconds until the transaction expires and is no longer valid</td></tr><tr><td><code>branch</code></td><td align="center"><mark style="color:red;"><code>string</code></mark><br><mark style="color:red;"><code>min: 1 | max: 255</code></mark></td><td align="center">no</td><td>The specific branch or location identifier where the transaction is being processed, if applicable</td></tr><tr><td><code>country</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center"><strong>yes</strong></td><td>The country code where the transaction is taking place. The format is <code>ISO 3166-1 alpha-3</code> (e.g., BRA for Brazil). <a href="/pages/WEBQfG9FyAw1HF4fdryA">List of country codes.</a></td></tr><tr><td><code>payment_method</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center"><strong>yes</strong></td><td>The method of payment being used for the transaction, such as bank transfer, credit card...</td></tr><tr><td><code>notification_url</code></td><td align="center"><mark style="color:red;"><code>string</code></mark></td><td align="center"><strong>yes</strong></td><td>The URL to which payment notifications will be sent. Ensure this URL is accessible and configured to handle the notification format</td></tr></tbody></table>

{% hint style="info" %}
**Response**
{% endhint %}

```json
{
	"requestId": "d611b6bbbc36b00edee0559ebe8ac9b7\/2373436675337331458",
	"data": {
		"id": "79dfbca4-4d98-489f-b1cd-c63449dacce5",
		"status": "pending",
		"expires_in": 1727213506,
		"payment": {
			"method": "picpay",
			"url": "https:\/\/app.picpay.com\/checkout\/asdhf",
			"qr_code": "00020101021226860014COM.PICPAY"
		},
		"values": {
			"source_total": "2.00000000",
			"source_currency": "BRL",
			"exchanged_total": "2.00",
			"exchanged_currency": "BRL",
			"exchange": "1.00",
			"fee": "0.02000000"
		}
	}
}
```

{% hint style="warning" %}
**Important**
{% endhint %}

* This payment method is different from the PIX
* PicPay does not have copy and paste
* Need the PicPay app installed
* Use <mark style="color:red;">`payment > url`</mark> to open PicPay checkout

{% hint style="info" %}
**Response details following the link:** [**overview**](/methods-and-markets/payin/overview.md)
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.smartfastpay.com/methods-and-markets/payin/latam/brazil/picpay.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
