Create Transaction

Visit the About Transactions to learn more about Transaction methods, types, and requests parameters.

Response Codes

102 - Idempotent matched request currently processing

201 - Created, will include a Location response header

200 - Request Succeeded, but entity not created

400 - Bad Request, missing or invalid parameters

409 - Idempotent matched request already processed

422 - Request not process due to business constraints

ACH & RTP Transaction Requests

The initial status from the ACH & RTP transaction request will be PROCESSING.

Card Transaction Requests - Instant Deposit and Instant Funding

Visa and Mastercard networks handle requests with expired cards differently.

Transaction ID with Error Response

The transaction_id parameter will not always be present in the error response body. Under certain 400 and 422 scenarios, the response is returned before processing of the transaction occurs.

ACH and AFT Refunds

Transactions can be logically linked by supplying the originating_transaction_id for the CREDIT (payout) transaction. Including the originating_transaction_id will add additional validation checks:

After processing the refund-oriented transaction, the original transaction status will update to REFUNDED or REFUND_PARTIAL.

ACH_REFUND is its own distinct method to link ACH_FUNDING transactions.

INSTANT_DEPOSIT can be used to link an INSTANT_FUNDING transaction.

API Example

Request

curl --request POST \
     --url https://test.api.interchecks.io/api/v2/payer_id/transactions \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "funding_options": {
    "risk_check": false,
    "user_segment": "DEFAULT"
  }
}
'```

#### Response Codes

- `200`  - Success
- `201`  - Resource Created
- `400`  - Bad Request
- `422`  - Unprocessable Entity

> Required Fields

- **payer_id**: string — Payer ID
- **recipient_id**: string — Recipient ID
- **account_id**: string — Payment Account ID
- **type**: enum — Direction of funds (`CREDIT` or `DEBIT`)
- **method**: enum — Transaction method (e.g., `INSTANT_DEPOSIT`, `ACH_FUNDING`, etc.)
- **amount**: double — Transaction amount
- **reference_id**: string — Transaction reference ID (optional)
- **memo**: string — Transaction memo (optional)
- **email**: string — Email override for ECHECK transactions (optional)
- **meta_params**: string — JSON string for reporting requirements. Please consult with the technical team.
- **originating_transaction_id**: string — Originating Transaction ID for ACH_REFUND transactions.
- **funding_options**: object — Required for funding transactions.
- **location**: object — Possibly required for compliance purposes.
- **Idempotency-Key**: string — Uniquely generated key.