Inyo

ACH (Bank Account)

ACH payments pull funds directly from a US bank account using the account number and routing number. Unlike card payments, ACH does not require tokenization — bank details are included directly in the API request.

Note: ACH payments are always captured immediately. Pre-authorization is not supported for ACH.

Example Request

curl -X POST https://{FQDN}/v2/payment \
  -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIs...' \
  -H 'Content-Type: application/json' \
  -d '{
    "externalPaymentId": "ach-order-001",
    "ipAddress": "203.0.113.42",
    "paymentType": "PULL",
    "capture": true,
    "amount": {
      "total": 19.99,
      "currency": "USD"
    },
    "sender": {
      "firstName": "John",
      "lastName": "Smith",
      "address": {
        "countryCode": "US",
        "stateCode": "NY",
        "city": "New York",
        "line1": "123 Main Street",
        "line2": "Apt 25B",
        "zipCode": "10001"
      },
      "paymentMethod": {
        "type": "BANK_DEPOSIT",
        "accountNumber": "123456789",
        "routingNumber": "021000021",
        "accountType": "CHECKING"
      }
    }
  }'

Payment Method Fields

FieldTypeRequiredDescription
typestring"BANK_DEPOSIT"
accountNumberstringBank account number (6–20 digits)
routingNumberstringABA routing number (9 digits)
accountTypestringAccount type (see below)

Account Types

ValueDescription
CHECKINGPersonal checking account
SAVINGSPersonal savings account
BUSINESS_CHECKINGBusiness checking account
BUSINESS_SAVINGSBusiness savings account

Response

ACH payments return the same response structure as card payments. Since capture is true, the status will be CAPTURED on success:

{
  "status": 200,
  "data": {
    "paymentId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "parentPaymentId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "externalPaymentId": "ach-order-001",
    "amount": 19.99,
    "created": "2025-03-31 10:15:30",
    "approved": true,
    "message": "Payment Approved",
    "status": "CAPTURED",
    "captured": true,
    "voided": false,
    "responseCode": "00"
  }
}

Key Differences from Card Payments

FeatureCardACH
Tokenization required✅ Yes❌ No
Pre-authorization✅ Supported❌ Not supported
Capture/Void lifecycle✅ Full lifecycle❌ Auto-captured
3D Secure✅ Possible❌ Not applicable
Refund✅ Supported✅ Supported
Settlement speedSame day – 2 days1–3 business days