Skip to main content

Physical Network Payments

"I have hundreds of kiosks across Visayas and Mindanao. Each one needs its own QR code. I collect from customers and pay my operators and suppliers."

If you operate a network of physical endpoints — vending machines, PisoWifi hotspots, e-loading kiosks, bill payment stations — NextAPI gives every endpoint its own collection account and handles both sides of the money flow: collecting from walk-up customers and paying operators and suppliers.

The problem

You have 500+ machines that need to accept QR Ph. Your current options are:

  • GCash/Maya merchant account — locks everyone into one wallet, no per-machine accounts
  • Per-endpoint account fees — other platforms charge per-endpoint fees that add up to tens of thousands of pesos monthly at 500+ machines
  • Manual bank transfers — impossible to reconcile across hundreds of machines
  • Bank-by-bank integration — months per bank, breaks when one bank goes down

You also need to pay the operators who own the machines and your suppliers (e-loading providers, telcos, FMCG distributors). Both sides must work, or the business stops.

The two-sided money flow

Physical networks have a distinct pattern: money comes in from customers at the machine, and money goes out to the operator who owns it.

Customer scans QR → Machine account receives funds

Network owner settles to operator account

Operator receives via InstaPay (real-time)
Supplier receives via PESONet (batch)

NextAPI handles both sides through the same hierarchy:

Your Network (Partner)
├── Operator A (Merchant)
│ ├── Machine 001 (Account)
│ ├── Machine 002 (Account)
│ └── Machine 003 (Account)
├── Operator B (Merchant)
│ └── Machine 004 (Account)
└── Supplier accounts (for PESONet payouts)

Key timing consideration

Supplier payments often depend on PESONet batch cutoffs. PESONet runs twice daily (10:00 AM and 3:00 PM Manila time). If your supply chain depends on same-day settlement to suppliers, time your POST /v2/payout-requests calls before the cutoff. Machine load replenishment stops if supplier settlement is late.

→ See Disbursement Channels for InstaPay vs PESONet timing.

What to build

Endpoint provisioning: When an operator installs a new machine, create a merchant (operator) and account (machine) pair. Generate a static QR code via POST /v2/accounts/{id}/funding-methods — this QR lives on the machine permanently.

Real-time collection: When a customer pays, the webhook fires within seconds. Your platform knows immediately that the machine collected — no polling required.

Operator settlement: At the end of each day (or on demand), sweep funds from machine accounts to the operator's bank account via POST /v2/payout-requests with InstaPay routing for real-time credit.

Supplier payment: Batch your supplier payouts before the PESONet cutoff using POST /v2/payout-requests/batch. One API call, hundreds of payouts.

Network dashboard: Use GET /v2/accounts/{id}/postings per machine to show operators their collections in real time. Use the merchant-level view to show the operator their total across all machines.

Key API endpoints

ActionEndpoint
Onboard an operatorPOST /v2/merchants
Create a machine accountPOST /v2/accounts
Generate static machine QRPOST /v2/accounts/{id}/funding-methods
Check machine balanceGET /v2/accounts/{id}/balances
Pay operator (InstaPay)POST /v2/payout-requests
Pay suppliers (PESONet batch)POST /v2/payout-requests/batch
Check payout service statusGET /v2/payout-requests/service-health

Scale without per-endpoint fees

NextAPI charges on transaction volume, not on number of accounts. A network with 1,800 endpoints pays the same per-account rate as a network with 10.

Getting started

  1. Get sandbox credentials
  2. Follow Your First API Call to verify auth and create your first merchant
  3. Follow Transfer Between Accounts to understand fund movement between endpoints
  4. Read Wallet Structure — the hierarchy maps directly to your operator/machine structure
  5. Read Disbursement Channels for rail selection
  6. Build endpoint provisioning, then test collection and settlement end-to-end in sandbox