Direct is in early access and subject to change. To request Direct access, contact hi@natural.com.
epty_*) is an individual or business not on Natural — a party (pty_*) is on Natural, an external party is not. An external party account (epa_*) stores an external party’s banking details and is the destination of ACH, realtime, and wire payments.
External parties
Create one withPOST /external-parties:
kindandnameare required. An individual’snamemust include first and last name.email,phone, andaddressare optional; phone numbers are normalized to E.164.- A supplied
addressmust be complete:line1,city, and an ISO two-lettercountryCode; US addresses also requirestateandpostalCode. - Natural screens every external party and reports
screeningStatusasclear,under_review, orrejected. Arejectedparty cannot have accounts stored. - Fedwire requires a complete beneficiary address. If a wire create returns
400 wire.beneficiary_address_required, read the party’saddressVersionand callPATCH /external-parties/{externalPartyId}/addresswith the complete address andexpectedAddressVersion, then retry with the same IDs. - Address completeness and bank wire eligibility are separate requirements — an account that supports ACH does not necessarily support wires.
External party accounts
Store one withPOST /external-party-accounts, sending the accountDetails for its type. A US bank account takes the account type plus the account and routing numbers:
- Responses identify the account by its last four digits and a masked form; the full numbers are stored securely and never returned.
supportedRailslists the rails the account is expected to accept — one or more ofach,realtime, andwire. It is advisory and refreshed periodically from the payment network; the authoritative check runs when you create a payment.
validationState. An account that cannot be validated immediately is pending and resolves asynchronously to validated or failed; the external_party_account.validated event fires when it validates. If validation fails at creation, the request returns external_party_account.validation_failed and nothing is stored. ACH credits work while validation is pending. A failed account cannot be used — store a new one.