Skip to main content
PayMongo is the most popular payment provider in the Philippines and supports GCash, GrabPay, Maya wallet, credit cards, and online banking. AppointFlow integrates with PayMongo Hosted Checkout — customers are redirected to PayMongo’s payment page, then back to your site after paying.

Before you start

You’ll need a PayMongo merchant account at paymongo.com. Approval typically takes 1–3 business days after submitting your business documents.

Configuration steps

1

Get your API keys

Log in to your PayMongo dashboard → Developers → API Keys. You’ll see two values:
  • Public Key (starts with pk_test_ for test mode or pk_live_ for production)
  • Secret Key (starts with sk_test_ or sk_live_)
Use test keys while setting up — they let you simulate payments without real money moving. Switch to live keys when you’re ready to accept real customers.
2

Enter the keys in AppointFlow

Open /admin/settings/payments. Toggle PayMongo on, then paste your Public Key and Secret Key into the form. Click Save.Your secret key is encrypted at rest — even our staff can’t read it. After saving, the form shows the key partially masked.
3

Set up the webhook

In your PayMongo dashboard, go to Developers → Webhooks → Create Webhook. Use this URL:
https://appointflow.online/api/webhooks/paymongo/<your-business-slug>
Select these events:
  • checkout_session.payment.paid
  • payment.paid
  • payment.failed
Save the webhook and copy the Webhook Secret that PayMongo shows you. Paste it back into AppointFlow’s payment settings page in the Webhook Secret field, then save.
4

Run a test payment

Make sure your Booking Policy is set to Require Payment (or has a deposit enabled). Open your public booking page in an incognito window, complete a booking, and use PayMongo’s test card numbers (e.g., 4343 4343 4343 4345) to verify the flow.After payment, the booking should show as Confirmed in your admin dashboard within seconds.
5

Switch to live keys

Once test payments work, repeat steps 1–3 with your live API keys and webhook. You’re ready to accept real payments!

Supported payment methods

When customers reach the PayMongo checkout, they can pay via:
  • GCash (most common in the Philippines)
  • GrabPay
  • Maya wallet
  • Credit/Debit cards (Visa, Mastercard, JCB)
  • Online banking (BPI, BDO, UnionBank, etc.)
You don’t have to pick — PayMongo shows all available methods at checkout.

Fees

PayMongo charges per-transaction fees — see their pricing page. AppointFlow itself takes no payment fee beyond your subscription plan.

Troubleshooting

The webhook isn’t reaching AppointFlow. Double-check the webhook URL in your PayMongo dashboard matches https://appointflow.online/api/webhooks/paymongo/<your-slug> exactly. Test the webhook with PayMongo’s Send test event button.
The webhook secret in AppointFlow doesn’t match the one in PayMongo. Re-copy the secret from PayMongo and paste it into /admin/settings/payments, then save.
Make sure you’re using test mode keys (starting with pk_test_ / sk_test_). Live keys reject test cards.

Want technical details?

See the PayMongo developer doc for webhook payloads, idempotency keys, and the encrypted credentials model.