POST /gateway/v4/notify endpoint with a structured three-envelope request body. Like all Notify products, the flow is primarily async — you stage a notification and then listen for webhooks to track what’s happening.
You’ll need your username, secret, and participant_id to follow this guide. These are issued by your Ingo integration manager during onboarding.
Environments
| Environment | Base URL |
|---|---|
| Sandbox | https://payapi-sandbox.ingo.money |
| Production | https://payapi.ingo.money |
Request structure
Every v4 notify request uses a three-envelope body:| Envelope | Contents |
|---|---|
request{} | Authentication context — participant_id and timestamp |
transaction{} | Disbursement details — amount, currency, IDs, workflow, notify type, sender |
transaction_parties[] | One object per party — role, contact details, identity challenge, notification context |
Step 1 — Sign your request
Step 1 — Sign your request
All Notify — Managed Parties requests use HMAC-SHA512 signing. Build the
X-Date, Content-sha512, Content-Length, and Content-Type headers, then assemble the Authorization header before sending.See Authentication for the full construction guide.Step 2 — Stage a single-recipient disbursement
Step 2 — Stage a single-recipient disbursement
Set A successful response returns a
notify_type: 0 and define one party with role: 0 (Recipient). This is the standard one-time disbursement flow — identical in outcome to Notify — Classic but using the v4 envelope structure.notification_id and the Ingo-assigned party_id for each party:The
status: 100 response confirms the notification was staged — not that the recipient has been paid. The disbursement lifecycle continues asynchronously via webhooks.Step 3 — Add an approver
Step 3 — Add an approver
To require approval before funds are released, add a second party to When the approver acts, Ingo posts a
transaction_parties[] with role: 1. The disbursement will not process until the approver has acted — Ingo manages the approver notification and engagement on your behalf.Add this object to the transaction_parties array alongside your recipient:multiparty_enabled must be active on your program configuration for role: 1 and role: 2 to be accepted. Contact your integration manager if you receive a validation error on party roles.transaction.recipient.payment.status.approvals.complete webhook event.Step 4 — Handle webhook events
Step 4 — Handle webhook events
After staging, Ingo posts webhook events to your configured endpoint as each party moves through their engagement. In a multi-party flow, you’ll see events for each party independently.Key events to handle:
See Webhooks for the full event reference and payload schemas.
| Event | Meaning |
|---|---|
transaction.recipient.notification.sent | A party has been notified |
transaction.recipient.authentication.complete | Recipient passed identity verification |
transaction.recipient.payment.status.approvals.complete | All approvers have acted; disbursement released |
transaction.recipient.payment.tokenization.complete | Recipient selected a payment method; account tokenized |
transaction.recipient.payment.status.approved | Disbursement approved and submitted for processing |
transaction.recipient.payment.status.funded | Funds delivered to recipient |
Step 5 — Cancel if needed
Step 5 — Cancel if needed
To stop a staged notification before any party has claimed, use the shared Cancel endpoint with the See Notify — Cancel for the full field reference.
notification_id returned at staging.What’s next
Notification Types
Learn about all four notify types — including enrollment and recurring flows currently in development.
Notify — Stage
Complete field reference for the v4 stage endpoint.
Webhooks
All webhook event types, payload schemas, and signature verification.
Authentication
Full HMAC-SHA512 construction guide and common signing errors.