Infrastructure for your next product

Pix in your product.
Your next step.
Your choice.

Accept Pix, hold a balance in Brazilian reais and choose when to withdraw in Pix or crypto. One API connects your software to payment providers.

Test without real funds No fixed wallet required for BRL custody

Prefer a conversation? Talk to a person on WhatsApp ↗

LUNIUMILLUSTRATIVE PRODUCT VIEW
From payment to its next destinationConnect the possibilities.
PixBRL balanceUSDTUSDC+ catalog
cash-in · ci_9f2e…
◎
Pix received
event: cashin.paid
BRL 5,000.00
⇄
Converting
BRL → USDT
5.1047
Settlement
USDT → Polygon
0x8ef1…
✓
Completed
event: cashin.settled · transaction confirmed on-chain
979.49 USDT
Illustrative example · API and webhook states
Signed webhooks. Every step tracked.
Product

One starting point.
All your payment flows.

Collections, balances and payouts connected through one API. Choose the flow that fits your product.

BRL custody

Accept Pix.
Choose the payout.

Receive the net amount in BRL custody, organize balances by customer and choose when to pay or withdraw.

PixBRL balancePix or crypto

No fixed wallet at collection. Choose the network and address when withdrawing crypto.

Explore BRL custody →
Cash-in

PIX → USDT / USDC

Your customer makes a regular Pix payment. Lunium detects it, converts the funds and settles the stablecoin to the configured address.

PIXpayment detectedconversionsettlementUSDT / USDC

Check the API catalog for assets, networks, minimums and estimates.

Explore cash-in →
Cash-out

Stablecoins → PIX

Send USDT or USDC. Get a quote, accept the order and deposit the stablecoin. Lunium then executes the Pix settlement.

USDT / USDCquoteacceptancedepositconfirmationPIX

Available on multiple networks, as listed in the API catalog.

Explore cash-out →
Payouts

Pix payouts, through the API

Send Pix directly from your software through Lunium’s infrastructure. Create payments, track their status and reconcile every operation through the API.

POST /payoutsprocessingsent

Pay in Brazilian reais, directly to the recipient’s Pix key.

Explore payouts →
Receive now. Decide later.

The Pix arrives.
What happens next
is up to you.

Funds can remain in BRL custody. Organize balances by customer and decide how to use the available amount, without setting a crypto wallet at collection.

Explore BRL custody

Check assets, networks, fees and limits through the API before each operation.

COLLECTIONYour customer pays with Pix
Custody in Brazilian reaisOne balance.
More possibilities.
PixPayments and withdrawals
CryptoChoose an asset and network

Illustrative flow · use of available funds

Lunium Partners

Your account. From sandbox to production.

Create your account, open the partner dashboard and test your integration. When ready, create a separate production key in the same account.

1 · Sandbox

Test in the sandbox

Generate your test key in the dashboard and validate Pix, balances and webhooks with simulated funds.

Developers

Start integrating on your terms.

The infrastructure lets developers start with the API, with no sales meeting required.

01

Create your test key.

POST /keys/sandbox
02

Request a quote.

POST /cashin/preview
03

Create a Pix charge.

POST /cashin/charge
04

Receive settlement.

cashin.settled

No manual credential provisioning. No waiting for someone to create your first key.

Pricing

Per-partner pricing that drops with volume.

Standard integration: 2% + R$ 2.00 per operation. Volume partners negotiate their rate, down to 35 bps over the USDT market reference price for exclusive partners. No monthly fee: your key's current rate is returned by GET /keys/me and every quote is already net of fees.

Code

From Pix to stablecoins in one integration.

requestnode
const response = await fetch(
  "https://api.luniumpay.com/cashin/charge",
  {
    method: "POST",
    headers: {
      "X-API-Key": process.env.LUNIUM_API_KEY,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      amount_cents: 25000,
      payer_tax_number: "12345678901",
      payout_address: "0x…",
      asset: "usdt",
      external_id: "order_8812"
    })
  }
);

const charge = await response.json();
response200
{
  "cashin_id": "ci_b3f9d2a41c6e…",
  "status": "pending",
  "amount_cents": 25000,
  "chain": "polygon",
  "asset": "usdt",
  "qr_copypaste": "00020126…",
  "qr_image_url": "https://…",
  "external_id": "order_8812",
  "expires_at": "2026-…"
}

Your application receives the Pix payment. Lunium handles the rest of the flow.

Software-driven integration

Build with your team.
Or with the AI you use.

From ChatGPT to Fable, give your AI the API context and an integration path. Your team can also start directly with code.

01

Developer integration

A REST API, OpenAPI 3.1, a deterministic sandbox and production. Existing integrations keep working as before.

Start building
02

Agent integration

Open discovery standards, a machine-readable capability catalog, integrator-defined spending policies and rule-based production activation.

Lunium for agents

Sandbox, OpenAPI and MCP. Discovery, implementation, testing and production activation, subject to your authorization and the API’s requirements.

Operations

Every event.
One operational view.

Follow operations in the partner portal and your account-scoped monitor. Build live tracking into your product with webhooks and status queries.

  • Cash-in, cash-out and payouts
  • Statuses and settlements
  • Real-time operational events
  • Without exposing your API secret — the monitor has its own read-only, rotatable token
  • Confirm webhook delivery and processing in your backend
monitor · scope: your key · read-only
cashin.paidBRL ••••.00processing
cashin.settled•• USDT · polygonsettled ✓
cashout.completedBRL ••••.00 · PIXpaid ✓
payout.sentBRL •••.00sent ✓
webhooksigned delivery2xx ✓
Lunium Partners

You build.
We’re here to help.

Join the official community for product updates, operational notices and conversations with other integrators.

Join Lunium Partners
Real people alongside your project

Your integration group.

We recommend a dedicated group, created by Lunium or your team, with human support agents @luniumb2b and @luniumb2c. The bot and monitor complement this support.

Talk to a person on WhatsAppIntegration · operations · commercial questions
Solutions for your business

Pix and stablecoins,
built into your business.

From online sales to supplier payments, find the Lunium flow that fits your operation.

Depth matters too

An API you can
explore in full.

Explore how operations work. Catalogs, fees, states, testing and failure recovery, organized for you and your team.

01Designed for production
Production

Built for developers.
Designed for production.

OpenAPI 3.1

Machine-readable specification

Aligned with the production API and checked against it.

Postman & Insomnia

Import and test right away

Import the API specification and start testing immediately.

Webhooks

Signed webhooks

Verify the authenticity of every event using its cryptographic signature.

Idempotency

Built-in idempotency

Retry operations safely without creating duplicate financial transactions.

Errors

Structured errors

Build predictable error handling instead of interpreting free-text messages.

Catalog

Dynamic catalog

Discover available assets and networks programmatically instead of hard-coding them.

Reconciliation

Reconciliation

Use API responses and settlement identifiers as the financial source of truth.

02Assets, networks and catalog
Networks

Cash-out on networks your customers already use.

Lunium’s catalog exposes the assets and networks currently available for cash-out.

USDT USDC
Polygon Ethereum BNB Chain Arbitrum Optimism Base Avalanche Aptos NEAR + other catalog networks — per-asset availability in GET /catalog
GET /catalog

Availability changes. Your integration does not have to guess — check the catalog before offering a route.

03Quotes and fees before execution
Quote

First, the quote.
Then, the funds.

Financial infrastructure should never make your application guess the final amount.

Before creating a cash-in
POST /cashin/preview

Get a quote without creating a charge, with your key’s fee already applied.

For cash-out
POST /cash-outs

A quote with an explicit expiry. Nothing executes until you accept it.

The API returns the amounts used by the transaction.
Your system displays the quote. Lunium remains the source of truth.

04The states of each transaction
Lifecycle

Every transaction has a lifecycle.

Cash-in
pendingpaidsettled ✓orexpired

Actual contract states: the Pix reaches paid; on-chain delivery is tracked by settlement_status (pending → sending → sent) and the cashin.settled event signals when to credit the delivery.

Cash-out
QUOTE_CREATEDAWAITING_DEPOSITDEPOSIT_DETECTEDcashout.processingCOMPLETED ✓

Internal conversion states map to a single event: cashout.processing — you do not need to handle each internal state.

Your application tracks state through the API and receives each transition by webhook.

05Idempotency and failure recovery
Idempotency

Retries should not become duplicate payments.

Financial APIs need careful failure handling.

Connections drop. Servers restart. Responses time out.
And your application retries the request.

Lunium’s idempotency model lets the same external_id safely reference the same financial operation, including to recover it after an ambiguous error.

Same operation Same identifier No duplicate transaction
06Bot and Telegram operations
Human operations

An API for your software.
An assistant for your team.

Your application
api.luniumpay.com

Use Lunium’s API to create, track and reconcile operations programmatically.

Your team
  • Ask questions about your integration
  • Receive real-time transaction alerts
  • Open the live monitor
  • Check operational activity

An API for software. An assistant for people.

07Sandbox: success and failure scenarios
Sandbox

Test failures before they reach production.

Test Pix collections, BRL custody, crypto withdrawals, Pix payouts and internal transfers with simulated funds. Sandbox reproduces integration states without paying real Pix or moving real crypto. For cash-out, the scenarios below cover success, delays and failure.

Successful transactionthe success path, with simulated execution
Delayed transactiontrigger .01 — delayed, then automatically paid
Failed transactiontrigger .02 — exercise your error path
Expired quotetrigger .03 — verify that you request a new quote
Limit errortrigger .04 — with the limits object populated
Idempotency conflictreuse an external_id and receive a real 409 response
Webhook signaturePOST /webhooks/test validates your handler
POST /keys/sandbox

Create a test credential without moving real funds — one API call.

08Configuration and history through the API
Source of truth

The API describes its own capabilities.

Read the current configuration directly from the API.

GET /keys/meAccount configuration, current limits and eligibility in a machine-readable response.
GET /catalogCurrently available assets and networks.
GET /cashin/chargesCash-in history.
GET /cash-outsCash-out history.
GET /payoutsPayout history.

Your integration reads the current configuration instead of relying on assumptions.

09What to check before integrating
Before you commit

Infrastructure you can inspect before you commit.

Explore the documentation and test the API before discussing your production needs with our team.

  • 01Read the documentation.
  • 02Inspect the endpoints.
  • 03Create a sandbox key.
  • 04Understand the lifecycle.
  • 05Test your integration.

Then talk to us when you need production limits, commercial terms or enterprise support.

Documentation

See for yourself.
Read the API.

Operations documented in OpenAPI
OpenAPI 3.1
Request and response schemas
cURL examples
Node.js examples
Python examples
Documented signed webhooks
Error contracts
Sandbox scenarios
Changelog
Production status

Your next product
starts with a key.

Start in sandbox. Test the flow. Take your integration to production.

Pix · BRL custody · Crypto · Payouts

Solutions and guides for Pix integration

Choose your product’s flow or explore the integration resources.

Pix API for businessesCharges, QR codes, confirmation and payouts in your software.Choosing a Pix APICompare providers, costs, testing and operational visibility.Pix API with custodyReceive BRL without a fixed wallet. Separate customer balances and withdraw in Pix or crypto.Payment sandboxTest complete flows, failures and webhooks with simulated funds.Pix to USDT APIReceive Brazilian reais and deliver USDT to the customer’s wallet.USDT to Pix APISell stablecoins and pay a recipient’s Pix key.Pix payout APIPay suppliers and users in Brazilian reais through the API.BRL ↔ USDT APIConvert in both directions, with a quote and receipt.On-ramp and off-ramp in BrazilCrypto entry and exit in Brazil through one integration.Pix at checkout, stablecoins in your balanceReceive Pix from customers and settle in digital dollars.Pix and stablecoins for walletsGive your users an on-ramp and off-ramp.Infrastructure behind your brandThe payment flow operating behind your product.
Direct answers

Questions before the first API call.

Short, verifiable answers. Full details are in the FAQ and the documentation.

How do I accept Pix and settle in USDT?

Your application calls POST /cashin/charge and receives a Pix QR code and copy-and-paste payload for the payer. Once Pix is paid, crypto settlement delivers USDT or USDC. Track payment and settlement states through GET /cashin/{id}/status and signed webhooks.

How do I accept stablecoins and pay out through Pix?

Use cash-out: POST /cash-outs/preview returns a quote; POST /cash-outs creates the order; POST /cash-outs/{id}/accept returns the deposit address. Once the USDT or USDC deposit is confirmed, the Pix payout is sent to the specified key.

Do I need to sign up to test the API?

In the dashboard, create an account to manage sandbox and production keys together. Direct API access remains available: POST /keys/sandbox with your email creates a test key in one call, without a dashboard account. AI agents can continue through Mesh or MCP. It simulates Pix to custody or crypto, Pix and crypto withdrawals, internal transfers and crypto to Pix. It includes states, failures and webhooks. Funds are simulated and the Pix QR code is non-payable; real payments require production. The email is required because that is where we send the manual, the flowchart and the integration steps.

Which assets and networks are supported?

Check GET /cashin/catalog to receive crypto after a Pix payment, and GET /catalog to deposit crypto and receive Pix. USDT, USDC and other assets depend on the flow, network and current availability. The two directions use different catalogs; confirm the route before offering it.

Which Pix keys can the API pay?

CPF, CNPJ, phone number, email or random Pix key. The API validates the format. Optional recipient lookup may be unavailable; check the returned result and recipient details.

Can I verify a payment without an account?

Yes. GET /v1/verificar/{e2e} is a public endpoint: anyone with the Pix end-to-end identifier can check whether a payment settled, without an API key.

How much does it cost?

There is no monthly fee: pricing is per operation. GET /keys/me returns the current fee for your key, and quotes include the net amount. See luniumpay.com/en/faq for details.

Who operates Lunium?

ZANQUETA INTERMED LTDA, CNPJ 68.538.127/0001-00. Contact: contato@luniumpay.com.

Talk to our team

A test key takes one API call, with no prior approval. If that is what you need, start with the documentation. Use this form for volume pricing, a case the docs do not cover or a question before integrating.

Prefer email? contato@luniumpay.com