Accounting, CRM, Zapier or your own code. The invoice arrives, the reminders go out in your tone, and the payment is written back where it belongs. Each card says what’s live today.
Invoices already live here. Connect once and PayPigeon chases them.
Coming soon
Imports unpaid invoices every hour, so reminders start without retyping anything. Payments taken through PayPigeon are written back.
- Settings → Connections → Xero → Connect, then approve in Xero.
- Imported invoices wait for you to start reminders. Nothing is sent until you confirm.
Coming soon
Same as Xero: hourly import of unpaid invoices and payment write-back.
- Settings → Connections → QuickBooks → Connect, then approve in Intuit.
Chase from the moment a deal closes. Close the loop when the money lands.
Coming soon
Start chasing the moment a deal closes, and mark the deal paid when the money lands. Through Zapier today; no native app yet.
- In Zapier, pick HubSpot as the trigger (for example a deal marked Closed Won or an invoice record created).
- Add the PayPigeon action “Create Invoice and Start Reminders”. Map the contact's name, email and the amount.
- Turn on the Zap. When the customer pays, the “Invoice Paid” trigger can update the deal or log the payment back in your CRM.
Coming soon
Opportunity Closed Won → invoice created and chased; Invoice Paid → opportunity updated. Through Zapier today; no AppExchange listing.
- In Zapier, pick Salesforce as the trigger (for example a deal marked Closed Won or an invoice record created).
- Add the PayPigeon action “Create Invoice and Start Reminders”. Map the contact's name, email and the amount.
- Turn on the Zap. When the customer pays, the “Invoice Paid” trigger can update the deal or log the payment back in your CRM.
Coming soon
Any CRM Zapier supports works the same way.
- In Zapier, pick your CRM as the trigger (for example a deal marked Closed Won or an invoice record created).
- Add the PayPigeon action “Create Invoice and Start Reminders”. Map the contact's name, email and the amount.
- Turn on the Zap. When the customer pays, the “Invoice Paid” trigger can update the deal or log the payment back in your CRM.
No code. Any app Zapier knows.
Coming soon
Connects PayPigeon to 7,000+ apps without code: actions to create invoices and start, stop or mark paid; triggers when an invoice is paid or a customer replies.
- Create an API key in Settings → API with “For Zapier”.
- In Zapier, add PayPigeon and paste the key.
A small REST API and signed webhooks, built for a day's integration, not a quarter's.
Live
Create, list and search invoices; start, stop or mark paid; receive signed webhooks for invoice.paid, reminder.sent and reply.received.
- Create a key in Settings → API.
- Call https://paypigeon.io/api/v1 with `Authorization: Bearer ppk_live_…`.
- Subscribe an https endpoint to webhooks; verify the PayPigeon-Signature header with your endpoint secret.
- Full reference: /api/v1/docs
Live
Pay-now links on every reminder, settled straight to your Stripe account. Paid invoices stop chasing automatically.
- Settings → Get paid online → Connect Stripe.
Create an invoice from your platform and start reminders. external_id makes the call idempotent, so retries never create duplicates.
curl https://paypigeon.io/api/v1/invoices \
-H "Authorization: Bearer ppk_live_…" \
-H "Content-Type: application/json" \
-d '{"customer":{"name":"Acme Ltd","email":"ap@acme.co"},
"amount_cents":250000,"currency":"GBP",
"due_date":"2026-11-10","external_id":"SF-0061","start_reminders":true}'
Pull what’s late back into your CRM or dashboard. Pages with next_cursor.
curl "https://paypigeon.io/api/v1/invoices?status=late&limit=50" \
-H "Authorization: Bearer ppk_live_…"
Full reference: API reference (OpenAPI 3.1). Webhook payloads are signed with HMAC-SHA256 and retried with backoff for 12 hours.
- No native Salesforce or HubSpot app yet. Both work through Zapier with the actions and triggers above. A native HubSpot app is next on the list if customers ask for it.
- Cards marked “Coming soon” are built and in review or awaiting approval from the provider. We switch them on the day they’re approved.