> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wepayout.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Charge (Pix)

> Generate a new Pix payment request

# Create Charge (Pix)

Generate a new Pix payment request.

## Request Body

<ParamField body="merchant_id" type="integer">
  Merchant id of the account that is creating the payin. Mandatory if there is more than one account under your umbrella (sellers).
</ParamField>

<ParamField body="invoice" type="string" required>
  Your identification number, it must be unique on our database.
</ParamField>

<ParamField body="notification_url" type="string">
  The url where we will submit the callbacks.
</ParamField>

<ParamField body="payment_method" type="string" required>
  Payment method that will be used in payin.

  Allowed value: `pix`
</ParamField>

<ParamField body="amount" type="integer" required>
  The charge total amount in the smallest currency unit (e.g., 100 cents to charge R\$1.00).

  Min: `1`
</ParamField>

<ParamField body="currency" type="string" required>
  Currency code of the amount (ISO 4217). Example: `BRL`
</ParamField>

<ParamField body="country" type="string" required>
  Country code (ISO 3166-1 alpha-2). Example: `BR`
</ParamField>

<ParamField body="description" type="string">
  Instructions that will be displayed to the user.
</ParamField>

<ParamField body="buyer" type="object" required>
  The person you are charging object.

  <Expandable title="Buyer Object">
    <ParamField body="name" type="string" required>
      The buyer name.
    </ParamField>

    <ParamField body="email" type="string" required>
      Buyer email address.
    </ParamField>

    <ParamField body="document" type="object" required>
      The buyer document.

      <Expandable title="Document Object">
        <ParamField body="type" type="string" required>
          Document type. Example: `CPF`, `CNPJ`
        </ParamField>

        <ParamField body="number" type="string" required>
          Document number.
        </ParamField>
      </Expandable>
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="pix" type="object" required>
  Pix QRCode specific instructions.

  <Expandable title="Pix Object">
    <ParamField body="expire_date" type="string" required>
      The charge expiration date. Format: `YYYY-MM-DDTHH:MM:SS`
    </ParamField>
  </Expandable>
</ParamField>

## Request Example

```bash Pix theme={null}
curl --location 'https://api.sandbox.wepayout.co/v2/payin/payments' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_TOKEN_HERE' \
--data-raw '{
  "payment_method": "pix",
  "invoice": "YOUR-CODE1234",
  "currency": "BRL",
  "amount": 3000,
  "country": "BR",
  "buyer": {
    "name": "Buyer Name",
    "email": "buyer-email@wepayments.com.br",
    "document": {
      "type": "CPF",
      "number": "34960826312"
    }
  },
  "pix": {
    "expire_date": "2025-12-31T23:59:59"
  }
}'
```

## Response

<ResponseField name="id" type="integer">
  WEpayments auto generated id, use this id to perform conciliation or perform queries via API / Dashboard.
</ResponseField>

<ResponseField name="merchant" type="object">
  Merchant object.

  <Expandable title="Merchant">
    <ResponseField name="id" type="integer">
      Id of the WE account that created the payin.
    </ResponseField>

    <ResponseField name="name" type="string">
      Name of the WE account that created the payin.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="hash" type="string">
  WEpayments auto generated hash, use this hash to send your user to the payment page.
</ResponseField>

<ResponseField name="payment_page" type="string">
  The WEpayments payment page where you can redirect the end customer.
</ResponseField>

<ResponseField name="our_number" type="string">
  The bank identification number.
</ResponseField>

<ResponseField name="invoice" type="string">
  Your identification number.
</ResponseField>

<ResponseField name="notification_url" type="string">
  The url where callbacks are submitted.
</ResponseField>

<ResponseField name="payment_method" type="string">
  Payment method used in payin.

  Value: `pix`
</ResponseField>

<ResponseField name="amount" type="integer">
  The payin total amount in cents.
</ResponseField>

<ResponseField name="paid_amount" type="integer">
  The total amount of the payin paid.
</ResponseField>

<ResponseField name="refunded_amount" type="integer">
  Amount refunded from this charge.
</ResponseField>

<ResponseField name="currency" type="object">
  Currency object.

  <Expandable title="Currency">
    <ResponseField name="id" type="integer">
      Currency id.
    </ResponseField>

    <ResponseField name="name" type="string">
      Currency name.
    </ResponseField>

    <ResponseField name="code" type="string">
      Currency code (ISO 4217).
    </ResponseField>

    <ResponseField name="symbol" type="string">
      Currency symbol.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="description" type="string">
  Instructions displayed to the user.
</ResponseField>

<ResponseField name="buyer" type="object">
  The person you are charging object.
</ResponseField>

<ResponseField name="originator_legal_entity" type="object">
  Final beneficiary object. Can be null for pix.
</ResponseField>

<ResponseField name="pix" type="object">
  Pix QRCode specific instructions object.

  <Expandable title="Pix Response">
    <ResponseField name="expire_date" type="string">
      Expiration date in format `YYYY-MM-DDTHH:MM:SS`.
    </ResponseField>

    <ResponseField name="refund_mode" type="string">
      Type of refund mode.
    </ResponseField>

    <ResponseField name="qr_code" type="string">
      Pix copy and paste code used by the end customer.
    </ResponseField>

    <ResponseField name="end_to_end" type="string">
      Unique identifier for a transaction.
    </ResponseField>

    <ResponseField name="fine" type="object">
      Fine object.
    </ResponseField>

    <ResponseField name="discount" type="object">
      Discount object.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="status" type="object">
  Status object.

  <Expandable title="Status">
    <ResponseField name="id" type="integer">
      Status id.
    </ResponseField>

    <ResponseField name="name" type="string">
      Status name.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="status_history" type="array">
  Status history object.
</ResponseField>

<ResponseField name="substatus" type="object">
  Substatus object. Can be null.
</ResponseField>

<ResponseField name="refunds" type="array">
  Refund object list.
</ResponseField>

<ResponseField name="created_at" type="string">
  Cash-in created date.
</ResponseField>

<ResponseField name="updated_at" type="string">
  Cash-in update date.
</ResponseField>

## Response Example

```json 201 Pix theme={null}
{
  "id": 54821,
  "merchant": {
    "id": 512,
    "name": "Acme Sandbox Store"
  },
  "hash": "f8b4d3c2e1a9b7d6c5f4e3a2b1c0d9e8f7a6b5c4d3e2f1a0b9c8d7e6f5a4b3c2",
  "payment_page": "https://pagar.sandbox.goboleto.com/?hash=f8b4d3c2e1a9b7d6c5f4e3a2b1c0d9e8f7a6b5c4d3e2f1a0b9c8d7e6f5a4b3c2",
  "our_number": "33045",
  "invoice": "INV-PIX-2026-0001",
  "notification_url": null,
  "payment_method": "pix",
  "amount": 3000,
  "paid_amount": null,
  "refunded_amount": null,
  "currency": {
    "id": 19,
    "name": "Reais",
    "code": "BRL",
    "symbol": "R$"
  },
  "description": "",
  "created_at": "2026-04-30T12:10:45.000000Z",
  "updated_at": "2026-04-30T12:10:47.000000Z",
  "buyer": {
    "name": "Lucas Almeida",
    "email": "lucas.almeida@example.com",
    "document": {
      "type": "cpf",
      "number": "12345678909"
    },
    "address": {
      "country": "BR",
      "city": null,
      "street": null,
      "number": null,
      "complement": null,
      "zipcode": null,
      "district": null,
      "state_code": null
    }
  },
  "originator_legal_entity": {
    "name": null,
    "document": null,
    "helpdesk": null
  },
  "splits": [],
  "pix": {
    "expire_date": "2025-12-31T23:59:59",
    "refund_mode": "FULL_REFUND_MERCHANT",
    "qr_code": "00020126910014BR.GOV.BCB.PIX2569api-pix-h.bancobs2.com.br/spi/v2/11111111-2222-3333-4444-555555555555520400005303986540530.005802BR5908Wepayout6014Belo Horizonte61083038040362070503***63041234",
    "end_to_end": null,
    "fine": {
      "percent": null,
      "amount": null,
      "date": null
    },
    "discount": {
      "percent": null,
      "amount": null,
      "date": null
    }
  },
  "status": {
    "id": 1,
    "name": "Created"
  },
  "status_history": [
    {
      "status": {
        "id": 1,
        "name": "Created"
      },
      "updated_at": "2026-04-30T12:10:47.000000Z"
    }
  ],
  "substatus": null,
  "refunds": [],
  "automatic_pix": null
}
```

## Related Resources

<CardGroup cols={2}>
  <Card title="Create Authorization" icon="repeat" href="/api-reference/automatic-pix/authorizations/create">
    Create automatic pix using the same payin endpoint
  </Card>

  <Card title="Create Charge (Bank Slip)" icon="file-invoice" href="/api-reference/cash-in/payin/create-charge-bank-slip">
    Use the same endpoint with boleto-specific required fields
  </Card>
</CardGroup>
