Checkout
Choose a checkout path that fits your team
Hosted checkout, payment links, embedded forms or Smart Fields. Less card data on your servers.
- No-code options
- Hosted card fields
- Single-use tokens
Scan the QR · expires in 29:59
- 4
- Checkout options on the same payins platform
- No code
- Payment links you share by email, SMS or chat
- Smart Fields
- Hosted card fields that reduce your PCI scope
- Business Portal
- Where you configure appearance, catalog and keys
Why Localpayment
Sell in more channels, with less to build
Get paid without an integration
Share a payment link by email, SMS, social media or chat, or take a phone order with WebCheckout — no code required.
Less PCI scope
Hosted options keep card data with us: minimal scope with WebCheckout and payment links, reduced with the embedded iframe, shared with Smart Fields.
Your brand, on your site
A white-label checkout inside your site with no redirects, or card fields inside your own form with Smart Fields.
Adjust checkout without a deploy
Appearance, catalog and keys live in the Business Portal, and every payment shows up in the same reports as your API traffic.
Adjust checkout without a deploy —
Talk to our sales team
Tell us your markets and volumes, and we’ll design the integration with you.
Options
Choose your integration path
Every option runs on the same payins platform. The difference is how much you build and how much PCI scope you keep.
WebCheckoutNo code
Create and complete a payment request from the Business Portal, by card or bank transfer. For phone orders and businesses without an online store. Minimal PCI scope.
WebCheckout —Payment LinksNo code
Share a secure link by email, SMS, social media or chat. For invoices, remote sales and social commerce. Minimal PCI scope.
Payment Links —Embedded IframeLow code
A white-label checkout inside your site, loaded from a session your server creates. No redirects, and sensitive data stays in the secure iframe. Reduced PCI scope.
Embedded Iframe —Smart FieldsDeveloper
Hosted card fields inside your own form via a JS SDK, consolidated into a single-use token for the payin. Shared PCI scope.
Smart Fields —
Use cases
The right checkout for each sales channel
Invoices & B2B
Send a payment link with each invoice and get paid without a portal login.
Invoices & B2B —Social & chat commerce
Close sales in messaging apps and social media with a link.
Phone & assisted sales
Agents create a WebCheckout request while the customer is on the line.
Branded e-commerce
Keep shoppers on your site with the embedded iframe or Smart Fields.
Branded e-commerce —
Smart Fields
From card entry to payment in four steps
- 01
Load the SDK
Include localpayment-sdk.min.js and initialize it with your client code and Smart Fields API key.
- 02
Mount the fields
Create the pan, cvv and expiration fields and mount them into your form containers.
- 03
Consolidate
Your backend exchanges the session ID for a single-use token through the consolidate endpoint.
- 04
Charge
Create the payin with the token instead of card details. Raw card data never reaches your servers.
For developers
Turn a Smart Fields session into a payment
In the browser, the SDK collects card data in hosted fields and gives you a session ID. On your server, exchange it for a single-use token and create the payin.
- Stage SDK: sdk.stage.localpayment.com/localpayment-sdk.min.js
- Single-use tokens, one per payment
- Same Create Payin endpoint as every other method
# Illustrative — Stage endpoints, fictitious values; see the Smart Fields guide # 1) Exchange the Smart Fields session for a single-use token # LP_TOKENIZATION_URL: tokenization host for your environment (see the Smart Fields guide) curl -X POST "$LP_TOKENIZATION_URL/api/tokenization/consolidate" \ -H "Authorization: Bearer $SESSION_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "clientCode": "<your-client-code>", "sessionId": "<session-id-from-the-sdk>", "CardholderName": "Lucía Méndez" }' # 2) Create the payin with that token curl -X POST https://api.stage.localpayment.com/api/payin/ \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "paymentMethod": { "type": "CreditCard", "code": "1904", "flow": "DIRECT" }, "externalId": "a41d7e20-0000-4000-8000-000000000077", "country": "COL", "currency": "COP", "amount": 185000, "accountNumber": "<your-account-number>", "conceptCode": "0001", "merchant": { "type": "COMPANY", "name": "Comercio Ejemplo S.A.S." }, "payer": { "type": "INDIVIDUAL", "name": "Lucía", "lastname": "Méndez", "document": { "type": "CC", "id": "1000000000" } }, "card": { "token": "<single-use-token>" } }'
// Illustrative — Stage endpoints, fictitious values; see the Smart Fields guide // 1) Exchange the Smart Fields session for a single-use token const consolidated = await fetch( `${process.env.LP_TOKENIZATION_URL}/api/tokenization/consolidate`, // host per environment: see the Smart Fields guide { method: 'POST', headers: { Authorization: `Bearer ${sessionAccessToken}`, // from getSessionData() in the browser 'Content-Type': 'application/json', }, body: JSON.stringify({ clientCode: process.env.LP_CLIENT_CODE, sessionId, // from getSessionData() in the browser CardholderName: 'Lucía Méndez', }), }, ).then((r) => r.json()); // 2) Create the payin with that token const payin = await fetch('https://api.stage.localpayment.com/api/payin/', { method: 'POST', headers: { Authorization: `Bearer ${accessToken}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ paymentMethod: { type: 'CreditCard', code: '1904', flow: 'DIRECT' }, // Mastercard · Colombia externalId: crypto.randomUUID(), country: 'COL', currency: 'COP', amount: 185000, accountNumber: process.env.LP_ACCOUNT_NUMBER, conceptCode: '0001', merchant: { type: 'COMPANY', name: 'Comercio Ejemplo S.A.S.' }, payer: { type: 'INDIVIDUAL', name: 'Lucía', lastname: 'Méndez', document: { type: 'CC', id: '1000000000' }, }, card: { token: consolidated.token }, }), }).then((r) => r.json());
Frequently asked questions
Which checkout option should I start with?
Many businesses start with payment links or WebCheckout because they need no integration, then move to the embedded iframe or Smart Fields as their checkout matures.
What does PCI scope mean for my team?
It’s the part of your systems subject to PCI DSS requirements. Hosted options keep card data with us, which reduces that scope; your QSA confirms your final obligations.
Which payment methods do the hosted options support?
WebCheckout takes credit cards, debit cards and bank transfers. Payment links and the embedded iframe show the payment methods enabled for your account, including cards and bank transfers. Smart Fields collects card data only.
Do I need a server SDK?
No. There are no official server SDKs — your backend calls the REST API directly. Smart Fields uses a client-side JS SDK.
Can I test before going live?
Yes. Smart Fields and the other checkout options can be tested on Stage, which mirrors production with no real money.
Can I brand the hosted checkout?
Yes. From the Business Portal you set the brand color of the embedded iframe and payment links, with no code changes.
How long is a payment link valid?
The customer must pay within 8 hours of first opening the link. After that it expires, and you send a new link to collect.
What else can I manage from the Business Portal?
You can save frequent items for WebCheckout and payment links, and manage your iframe keys and Smart Fields API keys. Every payment appears in the same reports as your API traffic.
Also on the same API
Cards
Tokenization in Argentina, Colombia, Mexico and Peru; 3D Secure and installments in Colombia, Mexico and Peru.
Cards —Payins
Every local method through one Create Payin endpoint.
Payins —Business Portal
Operate payments, approvals, keys and reports in one place.
Business Portal —Coverage
Licensed, registered or supervised presence in local currencies and local rails, country by country.
Coverage —Payment methods directory
Every documented method, with codes, limits and speed by country.
Payment methods directory —Checkout experiences
See what each payment method looks like to the payer, screen by screen.
Checkout experiences —Developer quickstart
Get a token, send your first request and receive a webhook on Stage.
Developer quickstart —
Pick your path and go live
Start with a link today and grow into a fully native checkout when you’re ready.

No-code options