Pull Hold Days

Products and accounts can be configured to delay availability of credits to COS accounts resulting from outbound pull payments. This feature is used to help prevent losses that result from returned outbound pull payments. Hold days use a business day logic and begin with (and include) the effective date of the ACH payment.

If a return for the original outbound pull occurs within the hold days period, Ops will manually remove this hold (rather than the hold dropping off automatically at the end of the period). This is done to net the credit given to the account holder for the outbound pull payment with the debit resulting from the ACH return.

You can determine when funds will be available in your account by reviewing the details of the schedule that's included in the payment's core transaction. To do this, first locate the coreTransactionId for the payment. Here's an example of payment details:

{
  "id": "89f83e89-806e-4b59-a02e-e71fa5c079fc",
  "accountNumber": "2223334445",
  "referenceId": "A123Z456C78A",
  "paymentType": "Origination",
  "direction": "Outbound",
  "status": "Completed",
  "source": "Api",
  "postingType": "Individual",
  "fedBatchId": "8719a7b1-f32d-4b7f-a2cc-e713a3ee86a5",
  "fedBatchSequence": 61,
  "coreTransactionId": "eb2f24bb-f25e-4fd7-b628-bc82d8b92cc3",
  "memoPostId": "14ba1090-eff6-4fae-8d73-968c6276a2fb",
  "postingCode": "OK",
  "posting": "Posted",
  "originator": {
    "routingNumber": "021214891",
    "accountNumber": "2223334445",
    "accountType": "Checking",
    "name": "Upgrade CRB",
    "identification": "5555512345"
  },
  "receiver": {
    "routingNumber": "026009593",
    "accountNumber": "42424242652",
    "accountType": "Checking",
    "name": "Bob Smith"
  },
  "secCode": "WEB",
  "description": "Transfer",
  "transactionType": "Pull",
  "amount": 100,
  "serviceType": "SameDay",
  "extendedDetails": {
    "paymentType": "0"
  },
  "effectiveDate": "211124",
  "traceNumber": "021214899990142",
  "wasReturned": false,
  "wasCorrected": false,
  "holdDays": 3,
  "original": {
    "paymentId": "89f83e89-806e-4b59-a02e-e71fa5c079fc"
  },
  "createdAt": "2021-11-23T13:49:34.907-05:00",
  "processedAt": "2021-11-23T17:34:29.123-05:00",
  "completedAt": "2021-11-24T01:54:29.593-05:00",
  "postedAt": "2021-11-24T01:54:29.593-05:00",
  "partnerId": "13eb292e-cb33-402a-af11-610b0955dbc1",
  "productId": "45be4bca-d962-4105-8e54-df9146649598",
  "lastModifiedAt": "2021-11-24T01:54:29.5947471-05:00"
}

The coreTransactionId is eb2f24bb-f25e-4fd7-b628-bc82d8b92cc3, which you can use with the GET /core/v1/transactions/{id} endpoint to view the availability schedule. Here's an example of the transaction details where you'll find the schedule towards the end of the response:

{
  "id": "eb2f24bb-f25e-4fd7-b628-bc82d8b92cc3",
  "traceNumber": "T222271777297136J",
  "status": "Complete",
  "debit": {
    "transactionType": "Debit",
    "accountType": "GeneralLedger",
    "masterAccountNumber": "123456789",
    "subAccountNumber": "123456789",
    "partnerId": "13eb292e-cb33-402a-af11-610b0955dbc1",
    "productId": "45be4bca-d962-4105-8e54-df9146649598",
    "result": {
      "success": true,
      "code": "OK",
      "message": "OK"
    }
  },
  "credit": {
    "transactionType": "Credit",
    "accountType": "Deposit",
    "masterAccountNumber": "2223334445",
    "subAccountNumber": "2223334445",
    "partnerId": "13eb292e-cb33-402a-af11-610b0955dbc1",
    "productId": "45be4bca-d962-4105-8e54-df9146649598",
    "result": {
      "success": true,
      "code": "OK",
      "message": "OK"
    }
  },
  "transactionCode": "Outgoing ACH",
  "amount": 100,
  "currency": "usd",
  "description": "Bob Smith TRANSFER ACH WEB REF: A123Z456C78A",
  "rail": "Ach",
  "railId": "payment/89f83e89-806e-4b59-a02e-e71fa5c079fc",
  "flags": [
    "DIR:Outbound",
    "TYP:Origination",
    "FRC"
  ],
  "schedule": [
    0,
    0,
    0,
    0,
    0,
    0,
    100
  ],
  "proposedAt": "2021-11-23T17:34:29.347-05:00",
  "executedAt": "2021-11-24T01:54:29.51-05:00",
  "effectiveAt": "2021-11-24T01:54:29-05:00",
  "lastModifiedAt": "2021-11-24T01:54:29.511742-05:00"
}

Holidays and weekends are not considered business days. The schedule always displays a total number of values that is equivalent to the number of calendar days between when the funds are held and made available. In the example response above, there are 7 values in the schedule. This is because there is a total of 7 calendar days from 11/24 to 11/30.

Since the effective date is Wednesday 11/24/2021, the funds will be available on Tuesday 11/30/2021 as the number of pull hold days configured for this account is three. This means the funds will be held for 3 business days:

Wednesday 11/24
Friday 11/26
*Monday 11/29

Here's a more detailed breakdown of the schedule that's illustrated above:

Calendar Date

Hold Day

Amount Available

11/24/2021

1

$0

11/25/2021

N/A - Federal Holiday

$0

11/26/2021

2

$0

11/27/2021

N/A - Weekend/Non-Business Day

$0

11/28/2021

N/A - Weekend/Non-Business Day

$0

11/29/2021

3

$0

11/30/2021

Funds become available

$1.00


Did this page help you?