Skip to content

Payment methods · Argentina · Bolivia · Guatemala · Peru

QR payments in Argentina, Bolivia, Guatemala and Peru

Show a QR at checkout in Argentina, Bolivia, Peru or Guatemala. Your customer approves in their bank or wallet app and you receive the final status by webhook.

  • QR
  • Argentina, Bolivia, Guatemala and Peru
  • Pay-in

Key facts

QR by transfer in Argentina

Figures for Argentina, the largest of the four QR markets on this page (BCRA, Informe de Pagos Minoristas Anual 2025).

What it is

One QR method, four local markets

QR is an alternative payment method where the payer scans a code and approves the payment in their bank or wallet app. No card data is involved. It is asynchronous: the final status always reaches you by signed webhook. Localpayment offers it in Argentina, Bolivia and Peru, and in Guatemala as QR Fri (SoyFri). Limits differ by country; see the key facts table.

  • Argentina (1050), Bolivia (1150), Peru (6080) and Guatemala QR Fri (1870)
  • Payer approves in their bank or wallet app; no card data
  • Final status by signed webhook through the same Create Payin endpoint

How it works

How a QR payment works

Actors and steps follow the documented flow. The final status always arrives by signed webhook.

  1. 1

    Your businessLocalpayment:

    Generates the QR

    POST /api/payin/ with country, currency, amount and payer data. The response returns the QR code for the payer to scan, and the payment stays pending until the final status arrives.

  2. 2

    CustomerBank · QR:

    Customer scans in their bank or wallet app

    The payer scans the QR in their bank or wallet app and approves the payment.

  3. 3

    Bank · QRLocalpayment:

    Payment

    Localpayment receives the confirmation and updates the transaction.

  4. 4

    LocalpaymentYour business:

    Webhook

    Signed with HMAC-SHA256 (x-Signature). Status 200 means completed; deduplicate on externalId.

Simplified diagram. Timing depends on the rail and the bank; see the key facts below.

How it works

See QR in action

A simplified, fictitious walkthrough. Names and amounts are examples.

  1. 1QRA QR code (or a copy-and-paste code) is shown to the payer.
  2. 2Banco EjemploThe payer reviews PEN 120.00 and approves in their bank or wallet app.
  3. 3Payment confirmedYour system receives the signed webhook and releases the order.

Key facts

QR: key facts

  • Countries

    Detail
    🇦🇷 Argentina · 🇧🇴 Bolivia · 🇬🇹 Guatemala · 🇵🇪 Peru
  • Currency

    Detail
    ARS · BOB · GTQ · PEN
  • Direction

    Detail
    Pay-in only
  • Argentina · QR payments

    Detail
    Asynchronous, confirmed by webhook · ARS 1 – 10,000,000
  • Bolivia · QR payments

    Detail
    Asynchronous, confirmed by webhook · BOB 1 – 1,000,000
  • Guatemala · QR Fri (SoyFri)

    Detail
    Asynchronous, confirmed by webhook · GTQ 1 – 10,000
  • Peru · QR payments

    Detail
    Asynchronous, confirmed by webhook · PEN 1 – 500
  • Status

    Detail
    Webhook

Taken from the Localpayment documentation for each country. Limits and availability can change; confirm them with your account manager.

Consumer experience

What your customer sees with QR

Authorization, limits and refunds as documented on docs.localpayment.com. Limits are shown only where the documentation states them.

  • How the customer authorizes

    The customer scans the QR with their bank or wallet app, picks the account to debit (you never send their bank data), reviews the amount and confirms. Every QR has an expiration date in the response: in Guatemala the QR Fri code expires five minutes after generation, so show a countdown and regenerate when needed.

  • Documented limits

    QR payments (Pay-in): ARS 1 – 10,000,000 · QR payments (Pay-in): BOB 1 – 1,000,000 · QR Fri (SoyFri) (Pay-in): GTQ 1 – 10,000 · QR payments (Pay-in): PEN 1 – 500. Per transaction, as published in the documentation; contractual limits may differ.

  • Refunds and returns

    A completed pay-in can be refunded with PATCH /api/payin/{externalId}/refund. Only full refunds are supported; the money goes back to a bank account of the payer and the transaction ends in status 902 (REFUNDED). While a payment is still pending it can be canceled instead.

Integration checklist

Go live with QR in five steps

The same sequence for every rail. Watch the animated checkout for this country before you build.

  1. Get Stage credentials

    Request access, receive sandbox credentials and obtain a JWT with POST /api/token/.

  2. Create the pay-in

    POST /api/payin/ with the Localpayment code from the key facts table, ISO-3 country, currency, amount and payer data.

  3. Show the instructions

    Render the QR, code, redirect or account details from the response and respect the expiration date.

  4. Verify the webhook

    Validate x-Signature (HMAC-SHA256), release the order on status 200 and deduplicate on externalId.

  5. Watch the animated checkout

    Every method of this country, screen by screen, in the checkout experiences gallery.

History

How QR became interoperable in the region

Sources: BCRA, Informe de Pagos Minoristas Anual 2025; Banco Central de Bolivia; BCRP, Circular 024-2022-BCRP; Banco de Guatemala.

  1. Argentina: Transferencias 3.0

    The BCRA makes QR payments by transfer interoperable: any wallet or bank app can pay any QR, mandatory from late 2021.

  2. Peru: interoperability circular

    The BCRP orders wallets and banks to interoperate; from 2023 QR codes can be read by bank apps and wallets alike.

  3. Bolivia: QR grows 48×

    The Banco Central de Bolivia’s interoperable QR scheme takes QR payment value from BOB 3.2 billion in 2021 to BOB 157 billion in 2024.

  4. Argentina: 841 million QR transfers

    Payments by transfer (PCT, mostly QR) reach 841 million operations, up 40.7% in the year, plus nearly 80 million QR transit trips.

Why Localpayment

Why use QR with Localpayment

  • One API for pay-ins and payouts

    QR runs on the same API as every other method: POST /api/payin/ to collect, POST /api/payout/ to pay out, and new markets by configuration.

  • Webhook status on every transaction

    Every status change is pushed to your endpoint, signed with HMAC-SHA256, so you can verify and automate.

  • Reconciliation in the Business Portal

    Match every transaction through your externalId and our internalId, with Business Portal reports and balance APIs.

FAQ

QR: frequently asked questions

Where is QR available?

Argentina (code 1050), Bolivia (1150), Peru (6080) and Guatemala, where it is called QR Fri or SoyFri (1870).

How is the payment confirmed?

QR is asynchronous. The payer approves in their bank or wallet app and the final status reaches you by signed webhook, so build your order flow around that notification.

What are the limits?

Bolivia: BOB 1 to 1,000,000. Peru: PEN 1 to 500. Guatemala: GTQ 1 to 10,000. Argentina: ARS 1 to 10,000,000. Confirm your limits with your account manager.

Do I need the payer’s bank account to create a QR?

No. In Argentina the documentation is explicit: you do not send the payer’s account; the customer selects it when scanning. The same applies to the Bolivian and Peruvian QR flows.

How big should the QR be?

Render it at a minimum of 250×250 pixels (as documented for Bolivia) with enough contrast, and show the amount next to it so the payer can verify before confirming.

How are QR refunds handled?

In full only, with PATCH /api/payin/{externalId}/refund on a completed pay-in. In Argentina the refund request carries the payer’s bank details so the money is sent back through the local network.

Which apps can pay a QR Fri in Guatemala?

The documentation lists the Fri wallet and the apps of participating banks and Micoope cooperatives; two large banks are excluded. Check the current list in the docs before launch.

Add QR to your payments

Tell us your markets and volumes. We start you on Stage (sandbox) credentials and guide you to go-live.

How can we help?

Download your copy

Leave your details and get the full edition instantly.