Submit a payment on the platform — creates the intent and executes it against the resolved provider in a single call (one-shot submit).
This endpoint enables platforms to:
The intent_type field determines which auxiliary fields are required:
| Intent type | Required fields |
|---|---|
funding | product_id, payment_method_id |
payout | product_id, either payee_destination_id (modern) or payee_payment_method_id (legacy) |
transfer | destination_wallet_id |
relay | payment_method_id, either payee_destination_id or payee_payment_method_id |
For payout / relay flows that use Checkbook auto-deposit, ACH push to a
saved bank, or email-tokenized payouts, pass payee_destination_id —
that’s the canonical model. payee_payment_method_id remains accepted
for backward compatibility.
The response carries the post-execution intent state. Inspect
status to determine the outcome:
processing — provider call is in flight; final state arrives via
webhook (e.g. payment_intent.settled).succeeded — provider accepted; awaiting settlement webhook.settled — terminal (rare on submit; usually arrives by webhook).failed — terminal; failure_reason carries a machine-readable
code (e.g. checkbook_returned_R01).pending_review — an admin approval rule flagged the intent.
No provider call was made; status will advance via webhook once
reviewed.An idempotency_key is mandatory to prevent duplicate payments.
Documentation Index
Fetch the complete documentation index at: https://developer.finogates.com/llms.txt
Use this file to discover all available pages before exploring further.
The access token received from the authorization server in the OAuth 2.0 flow.
Create a new payment on the platform.
Maps to creating a payment intent internally. Only public UUIDs are accepted — no internal IDs are ever exposed.
UUID of the end user initiating the payment.
"b3a9b622-cc63-4d3c-aad6-2d8e29e6f9d4"
UUID of the wallet to debit (or credit for funding).
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
Payment amount in major currency units (e.g. dollars).
100.5
Unique key to ensure idempotent payment creation.
1 - 120"pay_req_20260401_abc123"
UUID of the product (rail+provider route). Required for funding, payout, and relay intents.
"d4e5f6a7-b8c9-0123-4567-890abcdef012"
UUID of the destination wallet. Required for transfer intents.
"c3d4e5f6-a7b8-9012-3456-7890abcdef01"
UUID of the payer's payment method. Required for funding and relay intents.
"e5f6a7b8-c9d0-1234-5678-90abcdef0123"
UUID of the payee's payment method (legacy field). For payout and relay intents either payee_payment_method_id OR payee_destination_id is required — the modern flows (including Checkbook auto-deposit) use payee_destination_id.
"f6a7b8c9-d0e1-2345-6789-0abcdef01234"
UUID of the payee's destination (modern field). Required for payout and relay intents that use a PayeeDestination (bank or email) — the canonical model for ACH-push, Checkbook auto-deposit, and email-tokenized payouts. Either this OR payee_payment_method_id must be supplied.
"c8d9e0f1-a2b3-4567-89ab-cdef01234567"
ISO 4217 currency code.
3"USD"
Type of payment intent. One of funding, payout, transfer, or relay.
50"payout"
If true, funds are held in escrow (transfer only).
false
Arbitrary key-value metadata to attach to the payment.
{ "order_id": "ORD-12345" }