loading...
loading...

How to Convert USDC to Philippine Peso (PHP) and Pay Out Locally

USDC to PHP: Convert and Pay Out in the Philippines. Pesos to banks, GCash and Maya. No crypto wallet. US$35.6B OFW remittances, 2025, ₱24.7T InstaPay + PESONet, 2025

Your virtual assistants in Cebu want pesos on payday, many of them in GCash. Your clients pay you in USDC, and exchange cash-outs eat hours every pay cycle.

Converting USDC to PHP through Yativo is one payout. You lock a quote, and your recipient gets Philippine pesos in their bank account or e-wallet in under 30 minutes.

Overseas Filipino cash remittances reached about US$35.63 billion in 2025, per Bangko Sentral ng Pilipinas. Domestically, InstaPay and PESONet moved ₱24.745 trillion in 2025.

This guide shows how USDC to PHP conversion works on Yativo, which local rails you can use, and what to collect from recipients. It ends with dashboard steps and a full API example.

What It Means to Convert USDC to PHP and Pay Out Locally

Converting USDC to PHP means turning a dollar-backed stablecoin balance into Philippine pesos that lands in a real local account. People call this an off-ramp. The hard part is not the conversion itself. It is getting the money to the right bank account or e-wallet quickly and at a known rate.

Most businesses that hold USDC want one of two outcomes. They want to pay someone in the Philippines, such as a supplier, a contractor or an employee. Or they want to move their own treasury into PHP for local costs.

Yativo handles both with one flow. You hold USDC or USD in your float balance. When you send a payout, Yativo converts the value and a licensed local payout partner credits PHP over a local rail such as PHP Bank Transfer and e-wallets.

Why Converting USDC to PHP Through an Exchange Is Harder Than It Looks

Selling USDC on an exchange looks simple on screen. In practice it adds steps between your balance and your recipient.

Two hops instead of one. You sell on the exchange, withdraw PHP to your own bank, then send a second transfer to the recipient. Each hop adds time, limits and another point of failure.

Spreads and withdrawal fees stack up. The quoted price on an order book is rarely what you net after spreads and withdrawal charges. Sending small amounts across borders already costs an average of 6.36% of the amount sent, according to the World Bank.

Banks may question the funds. Some banks ask for extra documents when money arrives from a crypto exchange. That review can freeze the payment you needed to make today.

Recipients split between banks and wallets. GCash alone reported 39.1 million monthly active users in 2025. One integration that pays both banks and wallets saves you from running two payout stacks.

We break down more of these costs in the hidden costs of international payments.

How USDC to PHP Conversion Works with Yativo

Yativo is payment infrastructure, not a bank or an exchange. We use stablecoins as the settlement layer, and a licensed local payout partner delivers the PHP on a domestic rail.

  1. You fund your Yativo float balance with a fiat or stablecoin deposit, such as USDC.
  2. You request a quote that shows the rate, the fees and the exact PHP amount.
  3. Yativo settles the payout value on-chain with a licensed local payout partner in the Philippines.
  4. The partner converts the stablecoin to PHP and sends a local payment to the recipient’s bank account or e-wallet.
  5. Your recipient sees Philippine pesos in their account like any other domestic credit.

Your recipient does not need a crypto wallet. They never see or touch stablecoins. On their side, the payment looks like a normal local PHP transfer.

On the local side, InstaPay processed 4.656 billion transactions worth ₱11.554 trillion in 2025, so instant peso credits are the norm. For the wider picture, read our overview of the on-ramp and off-ramp API for businesses and how to receive international payments in stablecoins.

Local Rails for USDC to PHP Payouts

The Philippines has fast bank and wallet gateways, plus POBO and SWIFT options. See our Philippines bank transfer guide and GCash payouts guide.

PHP Bank Transfer (gateway ID 1364)

Gateway 1364 pays pesos to Philippine bank accounts. The form lists the receiving banks, including digital banks.

Required details: the fields returned by the form for gateway 1364. Expect the account holder name, the bank and the account number.

Settlement time: Under 30 minutes.

Limits: 100 PHP minimum and 500,000,000 PHP maximum per payout in our catalog.

Best for: payroll, supplier invoices and larger contractor payments.

PHP Local Wallet (gateway ID 1368)

Gateway 1368 pays e-wallets. The wallet is chosen in the payment details: GCash, GrabPay, Maya or ShopeePay.

Settlement time: Under 30 minutes.

Limits: 100 PHP minimum and 999,999 PHP maximum per payout in our catalog.

POBO and SWIFT options

eWallets – Philippines, gateway 1386, and POBO (Local), gateway 1063, pay PHP on behalf of your business. SWIFT (POBO) 1102 delivers PHP, and SWIFT 689 delivers USD. Any gateway with POBO in its name requires a POBO endorsement on your account.

Settlement time: T+1 (next business day) for all four.

What You Need Before Your First USDC to PHP Payout

The form in your dashboard, or the authenticated GET /beneficiary/form/show/1364 call, is the authoritative field list. For field details, see API documentation. Collect the items below before you send.

  • A verified Yativo business account. KYB must be complete before you can pay out.
  • A funded balance. Deposit USDC or fiat into your float balance. USDC deposits credit your balance once confirmed on-chain.
  • The customer record, if you are a fintech. Payouts made on behalf of a customer need that customer’s ID.
  • Bank and account number, for bank payouts. Ask for both from the recipient’s banking app.
  • Wallet type and mobile number, for e-wallets. Confirm the number is verified in the recipient’s own name.
  • A payment reference. An invoice number or payroll period helps the recipient reconcile the credit.

Wallets have tier limits. Ask recipients who receive large amounts to fully verify their wallet, or use a bank account instead.

How to Convert USDC to PHP and Pay Out via Yativo

Option 1: Dashboard (for manual payouts)

  1. Fund your Yativo float balance with either a fiat or a stablecoin deposit, such as USDC.
  2. Go to Transfer in your Yativo dashboard.
  3. Select the float wallet you are paying with, for example USD, EUR, MXN or whichever balance you funded.
  4. Choose the customer you are paying on behalf of. This step is necessary for fintechs that run payouts on behalf of their customers.
  5. Choose the Philippines as the destination and PHP Bank Transfer as the payout method.
  6. Enter the recipient details the payout form asks for, such as the account holder name and the bank account or wallet number.
  7. Enter the amount in USD or PHP.
  8. Review the quote: exchange rate, fees, delivery time and the exact PHP amount your recipient receives.
  9. Confirm with your PIN and 2FA.
  10. Track the payout in real time and download the receipt for your records.

Option 2: API (for automated and bulk payouts)

Every endpoint below is in the Yativo API documentation. Production calls go to https://api.yativo.com/api/v1, and the sandbox runs at https://smtp.yativo.com/api/v1.

Authenticate every request with the X-Api-Key and X-Api-Secret headers. Each key only works from the server IPs listed on it. These keys replaced bearer tokens, as covered in our October update. Every POST also needs a unique Idempotency-Key header.

Step 1. Generate a USDC deposit address on Solana to fund your balance:

POST https://api.yativo.com/api/v1/crypto/create-wallet
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 1854dc16-6ddb-41d1-9765-fcf371a8a72a
Content-Type: application/json

{
  "currency": "USDC_SOL"
}

Step 2. List the payout methods available for the Philippines:

curl "https://api.yativo.com/api/v1/payment-methods/payout?country=PHL" \
  -H "X-Api-Key: $YATIVO_API_KEY" \
  -H "X-Api-Secret: $YATIVO_API_SECRET" \
  -H "Accept: application/json"

PHP Bank Transfer carries gateway ID 1364. Always read the ID from the live response instead of hardcoding it.

Step 3. Fetch the required fields for that gateway:

GET https://api.yativo.com/api/v1/beneficiary/form/show/1364
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET

The response lists every required field and its accepted values. Build your payment_data object from it.

Step 4. Create the beneficiary. Replace the placeholder with the fields the form returned:

POST https://api.yativo.com/api/v1/beneficiaries/payment-methods/
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: f4c1786c-4d83-4d1c-b4c8-229ca3eaaa85
Content-Type: application/json

{
  "gateway_id": 1364,
  "nickname": "Reyes Virtual Support",
  "currency": "PHP",
  "customer_id": "e8caa491-57b6-4c39-9e3a-d2c97e47fbf0",
  "payment_data": {
    "{field_from_form}": "{value}"
  }
}

Step 5. Lock your PHP rate. Quotes hold for 5 minutes:

POST https://api.yativo.com/api/v1/exchange-rate
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 3f9bf054-4f8a-4743-bb7c-3d50de90b787
Content-Type: application/json

{
  "from_currency": "USD",
  "to_currency": "PHP",
  "method_id": 1364,
  "method_type": "payout",
  "amount": 600
}

Step 6. Initiate the payout from your balance:

POST https://api.yativo.com/api/v1/wallet/payout
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: e927b809-3a53-4c0c-a069-a221421fe358
Content-Type: application/json

{
  "debit_wallet": "USD",
  "amount": 600,
  "payment_method_id": 8493,
  "customer_id": "e8caa491-57b6-4c39-9e3a-d2c97e47fbf0",
  "quote_id": "4a72ecf8-6c8a-4e38-9971-8aabe9f785ed"
}

Use the id from the beneficiary response as payment_method_id. For bulk runs, repeat the call per beneficiary, as described on our payouts page.

Yativo vs an Exchange vs a SWIFT Wire for USDC to PHP

 Yativo off-rampExchange sale + bank withdrawalSWIFT wire
Steps to reach the recipientOne payoutSell, withdraw, then transfer againOne wire through correspondent banks
SettlementUnder 30 minutesDepends on the exchange and your bankT+1 or longer
PHP amount known upfrontYes, in the quoteOnly after the trade and feesOften not, intermediaries may deduct fees
Recipient needs cryptoNoNo, but you need an exchange accountNo
Best forPaying people in the Philippines from USDCOccasional personal conversionsLarge payments with no local rail

Best Practices for Converting USDC to PHP

Lock the rate on large payouts. Quotes hold for 5 minutes, so request one right before you approve a big PHP payment.

Validate details at onboarding. Check account formats in your own form before you save a beneficiary. Most failed payouts start with a typo.

Match the name to the account. Use the exact legal name the bank account or e-wallet is registered under. Mismatches can trigger compliance holds.

Keep a USDC buffer. Hold enough balance for your next payout cycle so on-chain confirmation time never delays a payment run.

Choose wallet or bank by amount. Wallets suit small, frequent payouts, while PHP Bank Transfer 1364 handles large ones.

Use idempotency keys everywhere. A unique Idempotency-Key on every POST stops a retry from sending the same payout twice.

Frequently Asked Questions

Does my recipient need a crypto wallet to receive PHP?

No. Your recipient gets Philippine pesos in their normal bank account or e-wallet. They never touch USDC, and the credit looks like any other domestic payment.

Is converting USDC to PHP this way legal and compliant?

Yes, when it runs through regulated infrastructure. Yativo is registered with FinCEN as a Money Services Business, registration number 31000270723339. A licensed local payout partner handles the PHP leg. Your own tax and reporting duties still apply, so confirm them with your advisor.

How long does a USDC to PHP payout take?

PHP Bank Transfer and PHP Local Wallet payouts settle in under 30 minutes. POBO options, including 1386, and SWIFT settle T+1.

What exchange rate do I get when I convert USDC to PHP?

You see the rate, the fees and the exact PHP amount before you confirm. Quotes from the exchange-rate endpoint hold for 5 minutes, so you can lock a rate before you approve a large payout.

Do I need an exchange account to convert USDC to PHP?

No. You deposit USDC into your Yativo balance and pay out directly on a local rail. There is no separate exchange order, withdrawal request or bank transfer to manage.

Can I pay GCash directly from USDC?

Yes. PHP Local Wallet 1368 credits pesos straight to GCash. Your recipient never sees USDC.

Start Converting USDC to PHP with Yativo

The Philippines took in about US$35.63 billion in remittances in 2025. Yativo turns your USDC into PHP in banks and e-wallets through a licensed local payout partner in under 30 minutes. Book a demo to set up your first PHP payout, or contact sales if you already know your monthly volume.

Sources