Regional Starter Pack
Manteca logo

Manteca

Manteca is a Buenos Aires-based B2B financial-infrastructure provider whose crypto API lets fintechs embed on/off ramps across 12 LatAm markets. In Brazil it ramps Brazilian reais (BRL) to USDC on Stellar via PIX, orchestrating fiat deposit, conversion, and crypto settlement in a single "synthetic" operation.

Regions

Currency

BRL

Rail

pix

Token

USDC

KYC

Required

Integration Flow

On-Ramp

  1. Onboard User — Create the end-user and submit their CPF; Manteca runs KYC and auto-populates personal data for Brazil.
  2. Get Quote — Read the USDC_BRL price and fee to estimate the conversion.
  3. Create Ramp-On Synthetic — Create a ramp-on synthetic with the Stellar destination; receive PIX deposit instructions.
  4. Pay via PIX — The user pays the PIX deposit to trigger the synthetic; the sandbox detects it automatically.
  5. Receive USDC — Manteca converts BRL to USDC and settles it to the user’s Stellar address; poll until COMPLETED.

Off-Ramp

  1. Onboard User — Create and KYC the end-user (CPF) if not already active.
  2. Validate PIX Key — Resolve the payout PIX key to confirm the recipient name and masked legal ID.
  3. Create Ramp-Off Synthetic — Create a ramp-off synthetic with the PIX key as destination; receive the Stellar deposit address.
  4. Send USDC — Sign and submit the USDC payment to the Manteca Stellar address with Freighter.
  5. Receive BRL — Manteca sells USDC and pays out BRL via PIX; poll the synthetic until COMPLETED.

Developer Onboarding

  1. Contact Manteca to obtain sandbox API keys (not self-serve) and an integration manager. ↗
  2. Authenticate every request with the static `md-api-key` header — no OAuth, no token refresh.
  3. Onboard end-users programmatically via POST /crypto/v2/onboarding-actions/initial with a nested personalData object. In Brazil, name, surname, phoneNumber, nationality, and address.street are enough; the CPF fills the rest. Use the missing-personal-data endpoint to check what is pending, then poll the user until ACTIVE.
  4. Send an externalId on every ramp. A retried create returns 409 SYNTHETIC_EXISTS, and the original is fetchable by that externalId.

Known Issues

  • Argentina and Colombia sandbox onboarding only accept Manteca’s seeded test identities, each single-use. Brazil accepts any valid CPF.
  • Argentina onboarding requires an identity-document upload (plus a selfie where requested) before the account can operate. Brazil and Colombia require one once cumulative amounts pass a threshold.
  • Colombia off-ramp uses a structured bank destination (account number, bank, account type). Manteca’s docs list different bank codes than the live bank endpoint; the app follows the live list.
  • Several request/response shapes were corrected against the live sandbox after building from the docs (pricing, onboarding, deposit instructions, and field enums).
  • Competitive rates are unverified. Sandbox prices already include Manteca’s spread (USDC/BRL buy and sell ~2.4% apart), so the production spread (~50–60 bps per survey) needs a live account.
  • Sandbox Brazil PIX and Colombia BRE-B deposits settle automatically. Argentina’s CVU deposit is simulated with the sandbox create-deposit action (the Simulate deposit button).
  • Ramp creation is idempotent on externalId, so the app reuses one per attempt and retries safely. A failed stage is retried by Manteca for several minutes before the ramp is cancelled.
  • In sandbox, the off-ramp’s fiat payout can stall at the withdraw stage after the USDC is received and sold.
  • Each user gets a per-user muxed Stellar deposit address with no separate memo.
  • Liquidity depth is unverified — no public volume figures, though the July 2025 Bybit partnership suggests meaningful scale.

Links