# Best practices (/en/docs/pix-processamento/best-practices)

Patterns that save headaches in production. Applied together, they prevent duplicate charges, lost callbacks, and rounding errors in reais as volume grows.

<QuickLinks>
  <QuickLink href="/docs/pix-processamento/best-practices/idempotency" title="Idempotency" />

  <QuickLink href="/docs/pix-processamento/best-practices/multi-tenant" title="Multi-tenant" />

  <QuickLink href="/docs/pix-processamento/webhooks" title="Callbacks" />

  <QuickLink href="/docs/pix-processamento/best-practices/pagination" title="Pagination" />

  <QuickLink href="/docs/pix-processamento/best-practices/money" title="Money" />

  <QuickLink href="/docs/pix-processamento/best-practices/security" title="Security" />

  <QuickLink href="/docs/pix-processamento/best-practices/errors" title="Error handling" />

  <QuickLink href="/docs/pix-processamento/best-practices/checklist" title="Production checklist" />
</QuickLinks>

## Where to start [#where-to-start]

| If you are                                  | Start with                                                                                                                      |
| ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| **First integration**                       | [Idempotency](/docs/pix-processamento/best-practices/idempotency) → [Callbacks](/docs/pix-processamento/webhooks)               |
| **Multi-store platform / marketplace**      | [Multi-tenant](/docs/pix-processamento/best-practices/multi-tenant)                                                             |
| **Migrating from another PSP**              | [Money](/docs/pix-processamento/best-practices/money) (reais vs cents)                                                          |
| **Already in prod, refining**               | [Error handling](/docs/pix-processamento/best-practices/errors) → [Checklist](/docs/pix-processamento/best-practices/checklist) |
| **Gathering evidence for audit/compliance** | [Security](/docs/pix-processamento/best-practices/security)                                                                     |

## Overview [#overview]

<Mermaid
  chart="`
flowchart TD
  A[&#x22;PayZu Integration&#x22;]
  A --> I[&#x22;Idempotency&#x22;]
  A --> C[&#x22;Callbacks&#x22;]
  A --> E[&#x22;Errors&#x22;]
  A --> S[&#x22;Security&#x22;]
  A --> M[&#x22;Multi-tenant&#x22;]
  A --> P[&#x22;Pagination&#x22;]
  A --> D[&#x22;Money&#x22;]

  click I &#x22;/en/docs/pix-processamento/best-practices/idempotency&#x22; &#x22;Idempotency with clientReference&#x22;
  click C &#x22;/en/docs/pix-processamento/webhooks&#x22; &#x22;Webhook handler&#x22;
  click E &#x22;/en/docs/pix-processamento/best-practices/errors&#x22; &#x22;424, 4xx, 5xx, 429, timeout&#x22;
  click S &#x22;/en/docs/pix-processamento/best-practices/security&#x22; &#x22;Token, IP, DICT&#x22;
  click M &#x22;/en/docs/pix-processamento/best-practices/multi-tenant&#x22; &#x22;virtualAccount&#x22;
  click P &#x22;/en/docs/pix-processamento/best-practices/pagination&#x22; &#x22;page + limit&#x22;
  click D &#x22;/en/docs/pix-processamento/best-practices/money&#x22; &#x22;Reais, decimal precision&#x22;

  style A fill:#14ce71,stroke:#0eb464,color:#ffffff
`"
/>