Shell HTTP Node.JS JavaScript Ruby Python Java Go

Payments v0.26.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Create, Schedule and manage payment batches, payment batch templates (future), and payment contacts.

Payment batches are collections of one or more payments (or drafts) to one or more third-parties. An ACH batch is a payment batch with a payment batch type of ach. A payment can also be a wire transfer (type wireTransfer). Each batch can only manage one type of payment.

Each batch contains a list of payment instructions, which include an amount and specific payment details for that payment contact, such as an ACH payment to a specific bank account identified by a routing number and account number, or the intermediary financial institution and beneficiary financial institution for a wire transfer. Batches have a payment direction. In a credit batch, the business pays one or more recipients. In a debit batch, the business drafts payment from one or more payers. Batches imported from a NACHA file may have payment instructions in both directions. Wire transfers must be credit.

The third-parties involved in the payments are known as payment contacts. Each payment contact provides relevant information about a contact needed to facilitate a batch payment, such as a physical address and phone numbers. Payment contacts are used to create an association between payees and their accounts. They contain payment methods which are used to populate payment batch templates and payment batches, along with financial institution accounts and payment amounts.

A payment contact can contain multiple payment methods. Payment methods may contain a contact's financial institution account information or other account identification fields. A payment contact can be designated as being the primary method. Only one payment method can be designated as primary. If a new payment method is set as the primary method when the payment contact has an already existing primary payment method, the new payment method becomes the primary method.

A batch also has a schedule which consists of a scheduled date and optional recurrence. The schedule may be a one-time or recurring payment.

All the payments in a batch either draw from or are credited to a settlement account, usually a business checking account. The payment can be either a summary (all payment instructions are aggregated into one transaction) against the settlement account) or detailed settlement (one transaction per payment instruction).

Saved payment batches may have one or more problems associated with them:

If a payment batch contains new payment contacts whose ACH payment details have not yet been verified, the API supports creating and submitting a prenote batch which verifies the ACH payment routing number and account number where needed.

After editing all the payment details and payment instructions and all problems have been resolved, the customer may submit the payment batch. if the batch also requires additional approval from other business users, the author can list potential approvers and request approval from those with approval authority. Once all approvals have been given, the batch is scheduled for processing after the cut-off time on the derived processing date. An approver may reject the batch, requiring changes to it, and the approval process starts over.

The API provides an operation to list pending, scheduled, and previously processed or rejected payment batches.

Approval Flows

The financial institution may require one or more account holders to approve payment batches. The listEligiblePaymentBatchApprovers operation returns a list of eligible approvers. The customer creating or editing the batch should select one or more from that list and add them to the batch with the addPaymentBatchApprovers operation. The length of the approvals array in the batch indicates the minimum number of approvals before a payment batch may be processed.

If a customer has submit permission on the batch, they can submit a batch with the submitPaymentBatch operation. If they also have approval permission, their approval is implicitly given. The batch remains in the pendingApproval state as long as the number of approvals given is less than required. Other approvers can either approve the batch (approvePaymentBatch) or reject it (rejectPaymentBatch). Once the minimum number of approvers have approved the batch, its state changes to scheduled. Customers with removeApproval permissions may also remove all approvals (removePaymentBatchApprovals) of a scheduled batch in order to make the batch editable, for example to change the processing date. Rejected batches require updating to address the given reason for rejection; rejecting also removes all approvals. After removing all approvals or rejecting a payment batch, the approval process starts over.

Dates

Payments have several dates associated with them:

Error Types

Error responses in this API may have one of the type values associated with the type names below. See Errors for more information on error responses and error types.

ambiguousOriginatorAddress

Type: https://production.api.apiture.com/errors/ambiguousOriginatorAddress/v1.0.0
Description: A wire transfer originator may not have both a US and international address.
Remediation: Set the unneeded originator address to null when patching the wire transfer payment batch.

duplicatePaymentInstruction

Type: https://production.api.apiture.com/errors/duplicatePaymentInstruction/v1.0.0
Description: There is already another payment instruction that matches the request.
Remediation: Enter unique data for this payment instruction.

duplicatePaymentMethod

Type: https://production.api.apiture.com/errors/duplicatePaymentMethod/v1.0.0
Description: There is already another payment method that matches the request.
Remediation: Enter unique data for this payment method.

immutablePaymentBatchState

Type: https://production.api.apiture.com/errors/immutablePaymentBatchState/v1.0.0
Description: The payment batch is not mutable.
Remediation: To update a scheduled batch, first remove approvals to move it back to pending or pendingApprovals state.

invalidAchInstructionAccountNumber

Type: https://production.api.apiture.com/errors/invalidAchInstructionAccountNumber/v1.0.0
Description: The ach.accountNumber is not a valid bank account number.
Remediation: Enter a valid 9 digit account number, fully padded.

invalidAchInstructionRoutingNumber

Type: https://production.api.apiture.com/errors/invalidAchInstructionRoutingNumber/v1.0.0
Description: The ach.routingNumber is not a valid bank routing number.
Remediation: Enter a valid 9 digit financial institution routing number.

invalidAchPaymentBatchDetails

Type: https://production.api.apiture.com/errors/invalidAchPaymentBatchDetails/v1.0.0
Description: The batch type was ach but the request did not include the ach property.
Remediation: Include a valid ach object in the new payment batch request.

invalidDirectionForWireTransfer

Type: https://production.api.apiture.com/errors/invalidDirectionForWireTransfer/v1.0.0
Description: If a payment batch is a wire transfer, the direction must be credit.
Remediation: Set the direction to credit in the request.

invalidInstructionForBatch

Type: https://production.api.apiture.com/errors/invalidInstructionForBatch/v1.0.0
Description: The payment instruction type does not match the payment batch type.
Remediation: Add only matching instructions to a patch (i.e. ach instructions to an ach batch, wireTransfer instructions to a wireTransfer batch).

invalidPaymentBatchForCopy

Type: https://production.api.apiture.com/errors/invalidPaymentBatchForCopy/v1.0.0
Description: The payment batch referenced by the paymentBatchId is not eligible for copying, or the customer does not have the copy permission.
Remediation: Pass an eligible payment batch ID.

invalidSettlementAccount

Type: https://production.api.apiture.com/errors/invalidSettlementAccount/v1.0.0
Description: The chosen settlement account does not exist, is not accessible, or is not entitled for the chosen money movement direction.
Remediation: Choose an available account that supports debit or credits that match the batch's money movement direction.

noSuchConfidentialCustomer

Type: https://production.api.apiture.com/errors/noSuchConfidentialCustomer/v1.0.0
Description: There is no such customer for the given confidentialCustomers[i].id.
Remediation: Pass a valid customer ID.

noSuchContact

Type: https://production.api.apiture.com/errors/noSuchContact/v1.0.0
Description: There is no such contact resource for the given contactId.
Remediation: Pass a valid contact ID or omit the contactId from the request.

noSuchInstruction

Type: https://production.api.apiture.com/errors/noSuchInstruction/v1.0.0
Description: There is no such payment instruction for the given paymentInstructionId.
Remediation: Pass a valid payment instruction ID.

noSuchPaymentBatch

Type: https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0
Description: There is no such payment batch for the given paymentBatchId.
Remediation: Pass a valid payment batch ID.

noSuchPaymentBatchCompany

Type: https://production.api.apiture.com/errors/noSuchPaymentBatchCompany/v1.0.0
Description: No such company was found or accessible for the given company id and type.
Remediation: Enter the correct company ID and type that the user is entitled to use for payment batches.

noSuchPaymentMethod

Type: https://production.api.apiture.com/errors/noSuchPaymentMethod/v1.0.0
Description: There is no such contact resource for the given paymentMethodId.
Remediation: Pass a valid payment method ID or omit the paymentMethodId from the request.

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

License: Apiture API License

Authentication

Payment Batches

Payment Batches

listPaymentBatches

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentBatches \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentBatches HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentBatches',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentBatches', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentBatches", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return a collection of payment batches

GET /paymentBatches

Return a paginated collection of payment batches. This collection list operation includes pending, scheduled, and processed payment batches. Filter by the state of the batches if you want just pending or just processed (historical) batches. The result is ordered in reverse chronological order based on the scheduled date, scheduledOn.

Parameters

ParameterDescription
state array[string]
Return only payment batches whose state matches one of the items in this pipe-separated list.
unique items
minItems: 1
maxItems: 5
pipe-delimited
items:
» enum values: pending, pendingApproval, rejected, scheduled, processing, processed, reversalPending, partiallyReversed, reversed, canceled
type array[string]
Return only payment batches whose type matches this value.
unique items
minItems: 1
pipe-delimited
items:
» enum values: ach, wireTransfer
name string
Return payment batches whose name contains this substring (of at least two characters), ignoring case.
minLength: 2
accountId string
Return only payment batches whose settlementAccount.id matches this value. Note that this is unrelated to the account number or masked account number.
scheduledOn dateRange
Return only payment batches whose scheduledOn date is in the given date range. Examples of date ranges:
  • 2022-05-19
  • match only payments made on May 19, 2022.
  • [2022-05-01,2022-05-31] between May 1 and 31, 2022, inclusive
  • [2022-05-01,2022-06-01) in May, 2022: on or after May 1, but before June 1
  • [2022-05-19,] on or after May 19, 2022
  • (2022-05-19,) after May 19, 2022
  • [,2022-05-19] on or before May 19, 2022
  • (,2022-05-19) before May 19, 2022

pattern: ^\d{4}-\d{2}-\d{2}|([[(](\d{4}-\d{2}-\d{2},(\d{4}-\d{2}-\d{2})?|,\d{4}-\d{2}-\d{2})[)\]])$
customerId readOnlyResourceId
Filter batches based on the banking customer ID. This is a business customer for business payment batches. The customer ID is inferred from the settlement account.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
companyId string
Return only payment batches where the company.id value matches this value.
trackingNumber string
Return only payment batches whose trackingNumber contains this substring.
minLength: 2
maxLength: 9
confidential string
Return only payment batches where the confidential flag matches this value.
sameDay boolean
Return only same-day ACH payment batches (those where sameDay is true.)
approvable boolean
Return only payment batches that the current authenticated user may approve but have not yet approved.

Example responses

200 Response

{
  "items": [
    {
      "id": "0399abed-fd3d",
      "type": "ach",
      "name": "Payroll 03",
      "description": "2022-03 Employee Payroll",
      "state": "pendingApprovals",
      "toSummary": "47 payees",
      "fromSummary": "Payroll Checking *7890",
      "creditTotal": "2467.50",
      "debitTotal": "0.00",
      "creditCount": 12,
      "debitCount": 30,
      "trackingNumber": "15474162",
      "information": "You have missed the cutoff time. Please re-schedule.",
      "ach": {
        "secCode": "ppd",
        "imported": false,
        "direction": "credit",
        "companyName": "Well's Roofing",
        "confidentialCustomers": [
          {
            "id": "64446f8d-780f",
            "name": "Philip F. Duciary"
          },
          {
            "id": "58853981-24bb",
            "name": "Alice A. Tuary"
          }
        ],
        "approvalDueAt": "2022-06-09T20:30:00.000Z",
        "sameDayApprovalDue": [
          "2022-06-09T15:00:00.000Z",
          "2022-06-09T18:00:00.000Z",
          "2022-06-09T20:30:00.000Z"
        ]
      },
      "settlementType": "detailed",
      "settlementAccount": {
        "label": "Payroll Checking *7890",
        "maskedNumber": "*1008",
        "id": "bf23bc970-91e8"
      },
      "schedule": {
        "scheduleOn": "2022-05-01",
        "effectiveOn": "2022-04-30",
        "frequency": "monthly"
      },
      "allows": {
        "approve": false,
        "edit": true,
        "requestApproval": true,
        "delete": false,
        "removeApprovals": false,
        "reject": false,
        "reverse": false,
        "copy": true
      },
      "createdAt": "2022-04-28T07:48:20.375Z",
      "updatedAt": "2022-04-28T07:48:49.375Z"
    },
    {
      "id": "d62c0701-0d74",
      "type": "ach",
      "information": "other fields for batch d62c0701-0d74 omitted here for brevity"
    },
    {
      "id": "89382459-6e1c",
      "type": "ach",
      "information": "other fields for d62c0701-0d74 omitted here for brevity"
    }
  ]
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentBatches
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

createPaymentBatch

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "type": "ach",
  "direction": "credit",
  "company": {
    "id": "123-56-7890",
    "type": "taxId"
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "ach": {
    "secCode": "ppd",
    "sameDay": false,
    "discretionaryData": "Payroll adjust 22-05",
    "imported": false,
    "companyName": "Well's Roofing"
  },
  "settlementAccount": {
    "id": "69464d06366ac48f2ef6",
    "maskedNumber": "*7890",
    "label": "Payroll Checking *7890"
  },
  "settlementType": "detailed",
  "schedule": {
    "scheduledOn": "2022-05-01",
    "frequency": "monthlyFirstDay"
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Create a new payment batch

POST /paymentBatches

Create a new payment batch within the payment batches collection.

Body parameter

{
  "type": "ach",
  "direction": "credit",
  "company": {
    "id": "123-56-7890",
    "type": "taxId"
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "ach": {
    "secCode": "ppd",
    "sameDay": false,
    "discretionaryData": "Payroll adjust 22-05",
    "imported": false,
    "companyName": "Well's Roofing"
  },
  "settlementAccount": {
    "id": "69464d06366ac48f2ef6",
    "maskedNumber": "*7890",
    "label": "Payroll Checking *7890"
  },
  "settlementType": "detailed",
  "schedule": {
    "scheduledOn": "2022-05-01",
    "frequency": "monthlyFirstDay"
  }
}

Parameters

ParameterDescription
body newPaymentBatch
The data necessary to create a new payment batch.

Example responses

201 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

422 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/invalidSettlementAccount/v1.0.0",
  "title": "Unprocessable Entity",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The settlement account does not exist or is not eligible for this payment",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/invalidSettlementAccount/v1.0.0",
  "title": "Unprocessable Entity",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The settlement account does not exist or is not eligible for this payment",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-575041fcd617"
}

Responses

StatusDescription
201 Created
Created.
Schema: paymentBatch
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity

Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
201 Location string uri-reference
The URI of the new payment batch.
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

getPaymentBatch

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Fetch a representation of this payment batch

GET /paymentBatches/{paymentBatchId}

Return the JSON representation of this payment batch resource.

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentBatch
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

patchPaymentBatch

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId} \
  -H 'Content-Type: application/merge-patch+json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/merge-patch+json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "company": {
    "id": "123-56-7890",
    "type": "taxId"
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "ach": {
    "sameDay": false,
    "discretionaryData": "Payroll adjust 22-05"
  },
  "settlementAccount": {
    "id": "69464d06366ac48f2ef6",
    "maskedNumber": "*7890",
    "label": "Payroll Checking *7890"
  },
  "settlementType": "detailed",
  "schedule": {
    "scheduledOn": "2022-05-01",
    "frequency": "monthlyFirstDay",
    "recurrenceType": "fixed"
  }
}';
const headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
  method: 'patch',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/merge-patch+json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/merge-patch+json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/merge-patch+json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Update this payment batch

PATCH /paymentBatches/{paymentBatchId}

Perform a partial update of this payment batch as per JSON Merge Patch. Only fields in the request body are updated on the resource; fields which are omitted are not updated.

Body parameter

{
  "company": {
    "id": "123-56-7890",
    "type": "taxId"
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "ach": {
    "sameDay": false,
    "discretionaryData": "Payroll adjust 22-05"
  },
  "settlementAccount": {
    "id": "69464d06366ac48f2ef6",
    "maskedNumber": "*7890",
    "label": "Payroll Checking *7890"
  },
  "settlementType": "detailed",
  "schedule": {
    "scheduledOn": "2022-05-01",
    "frequency": "monthlyFirstDay",
    "recurrenceType": "fixed"
  }
}

Parameters

ParameterDescription
body paymentBatchPatch
The new payment batch.
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

422 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/invalidSettlementAccount/v1.0.0",
  "title": "Unprocessable Entity",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The settlement account does not exist or may not be used for this type of payment.",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/invalidSettlementAccount/v1.0.0",
  "title": "Unprocessable Entity",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The settlement account does not exist or may not be used for this type of payment.",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentBatch
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity

Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

deletePaymentBatch

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId} \
  -H 'Accept: application/problem+json' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/problem+json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
  method: 'delete',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/problem+json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/problem+json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/problem+json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Delete this payment batch resource

DELETE /paymentBatches/{paymentBatchId}

Delete this payment batch resource. One cannot delete a scheduled batch. You must first remove approvals for the batch in order to delete it.

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

409 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchAccount/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists for the given account reference",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
204 No Content
No Content. The operation succeeded but returned no response body.
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. A batch that has already started processing may not be deleted.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

copyPaymentBatch

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/copies", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Create a copy of this payment batch resource

POST /paymentBatches/{paymentBatchId}/copies

Create a copy of this payment batch resource. Copies of the payment batch resource has a status of pending. The copy contains a reference to the original payment batch in the copyOf object. The paymentBatch.allows.copy property must be true on the batch for the current customer.

The following fields are reset or assigned according to the new batch state:

The copy operation should not be used to create a payment batch reversal. Instead, use the reverse payment batch operation.

Body parameter

{}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchCopyRequest

Example responses

201 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
201 Created
Created.
Schema: paymentBatch
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity

Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
201 Location string uri-reference
The URI of the new payment resource.
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

listEligiblePaymentBatchApprovers

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/eligibleApprovers", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

List Eligible Payment Batch Approvers

GET /paymentBatches/{paymentBatchId}/eligibleApprovers

Return a list of customers eligible to approve the batch. If the batch is marked confidential, the response includes only those who are also in the batch's list of confidential customers.

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "items": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ]
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded.
Schema: eligiblePaymentBatchApprovers
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

listAchCustomers

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers?direction=debit&secCode=arc \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers?direction=debit&secCode=arc HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers?direction=debit&secCode=arc',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers',
  method: 'get',
  data: '?direction=debit&secCode=arc',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers',
  params: {
  'direction' => 'string',
'secCode' => '[paymentBatchAchSecCode](#schemapaymentbatchachseccode)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers', params={
  'direction': 'debit',  'secCode': 'arc'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers?direction=debit&secCode=arc");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/accounts/{accountId}/achCustomers", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

List ACH-entitled customers

GET /accounts/{accountId}/achCustomers

List ACH-entitled customers who have access to this account for viewing ACH payment batches or other ACH activity. This operation requires the secCode and direction query parameters. The items in the response may be used for the confidentialCustomers property of a newAchPaymentBatch or in a patch to an ACH payment batch.

Parameters

ParameterDescription
direction string (required)
List only customers who can mange ACH payments in the given direction.
enum values: debit, credit, both
secCode paymentBatchAchSecCode (required)
List only customers who can mange ACH payments of the given Standard Entry Class (SEC) code.
enum values: arc, boc, ccd, cie, ctx, pop, ppd, rck, tel, web
type achPaymentBatchType
List only customers who can manage ACH payments that have this specific ACH payment type. Omit this parameter to match any ACH payment type.
enum values: other, vendorCredit
accountId resourceId (required)
The unique identifier of this account resource. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "items": [
    {
      "id": "64446f8d-780f",
      "name": "Philip F. Duciary"
    },
    {
      "id": "58853981-24bb",
      "name": "Alice A. Tuary"
    }
  ]
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: confidentialAchCustomerList
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such banking account resource at the specified {accountId}. The response body contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

Payment Batch Actions

Actions on Payment Batches

addPaymentBatchApprovers

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "items": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ]
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvers", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Add Payment Batch Approvers

POST /paymentBatches/{paymentBatchId}/approvers

Add one or more approvers to this payment batch. The approvers should be items selected from the listEligiblePaymentBatchApprovers operation's response. This operation also notifies those approvers that they need to review/approve the batch. This operation is not allowed if the batch has begun processing. This operation is allowed even if the batch is in a pending state and has errors. Approvers may not actually approve the batch until all the problems are fixed.

Body parameter

{
  "items": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ]
}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchApprovers
A list of approvers for this payment batch.

Example responses

200 Response

{
  "items": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ]
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The response is the full list of all approvers assigned to this batch.
Schema: paymentBatchApprovers
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. The batch has already begun processing and no approvers may be added.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

submitPaymentBatch

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/submitted", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Submit a payment batch

POST /paymentBatches/{paymentBatchId}/submitted

Submit a batch payment for approval or scheduling. If the customer has approval permission this action adds the customer to the paymentBatch.approvers list. If all the required approvals have been given, the batch changes to the scheduled state to be processed, otherwise it transitions to the approvalPending state. The paymentBatch.allows.approve or paymentBatch.allows.submit property must be true on the batch for the current customer. This operation is idempotent: no changes are made if the batch is already in the approvalPending or scheduled state.

Body parameter

{}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchSubmitRequest
Request data accompanying the action to approve the batch.

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded.
Schema: paymentBatch
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. The request to submit the payment batch is not allowed. Either the batch still has problems which prevent it from being submitted, or its state is scheduled or beyond.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

approvePaymentBatch

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/approvals", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Approve a payment batch

POST /paymentBatches/{paymentBatchId}/approvals

Approve a payment batch for processing. This adds the customer to the paymentBatch.approvers list. If all the required approvals have been given, the batch changes to the scheduled state to be processed. The paymentBatch.allows.approve property must be true on the batch for the current customer. This operation is idempotent: no changes are made if the customer has already approved this payment batch.

Body parameter

{}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchApprovalRequest
Request data accompanying the action to approve the batch.

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded.
Schema: paymentBatch
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. The request to approve the payment batch is not allowed. This operation is not allowed if the batch has started processing, or if the batch is still pending and has problems.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

removePaymentBatchApprovals

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/removedApprovals", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Remove approvals from a payment batch

POST /paymentBatches/{paymentBatchId}/removedApprovals

Remove all approvals from a payment batch. Removing approvals allows for updating the payment batch and payment instructions and for resubmission. The updated batch requires new approvals. The paymentBatch.allows.removeApprovals property must be true on the batch for the current customer. The response is the updated representation of the payment batch. This operation is idempotent: no changes are made if the payment batch state is already pendingApproval or pending.

Body parameter

{}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchApprovalRemovalRequest
Request data accompanying the action to remove approvals.

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. All approvals have been removed from the payment batch. If the batch is still valid, its state is changed to pendingApproval. If there are any problems with the batch, its state is changed to pending.
Schema: paymentBatch
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. The request to remove approvals of the payment batch is not allowed. This operation is not allowed if the batch has been rejected or has started processing.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

rejectPaymentBatch

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/rejections", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Reject a payment batch

POST /paymentBatches/{paymentBatchId}/rejections

Reject a payment batch, requesting changes to the batch as described in the request body's reason. Rejecting a batch allow for updating the payment batch and payment instructions and for resubmission. This is the opposite of approving a batch that is pending approval. Rejecting a batch allows editing the payment batch details and its payment instructions, then resubmitting it. The updated batch requires new approvals. The paymentBatch.allows.reject property must be true on the batch for the current customer. The response is the updated representation of the payment batch. This operation is idempotent: no changes are made if the payment batch state is already rejected, pendingApproval, or pending.

Body parameter

{}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchRejectionRequest
Request data accompanying the action to remove approvals.

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. All approvals have been removed from the payment batch. The batch's state is changed to rejected. If there are any problems with the batch, its state is changed to pending.
Schema: paymentBatch
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. The request to reject the payment batch is not allowed. This operation is not allowed if the batch is not pendingApprovals or rejected.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

reversePaymentBatch

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/reversals", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Reverse a payment batch

POST /paymentBatches/{paymentBatchId}/reversals

Request that a payment batch be reversed. The system attempts to cancel any unprocessed payments in the batch, or to reverse any payments that have already been submitted. The paymentBatch.allows.reverse property must be true on the batch for the current customer. The response is the updated representation of the payment batch. This operation is idempotent: no changes are made if the payment batch state is already reversalPending, reversed or partiallyReversed.

Body parameter

{}

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body paymentBatchReversalRequest
Request data accompanying the action to remove approvals.

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK. The operation succeeded.
Schema: paymentBatch
202 Accepted
Accepted. The request was accepted and is being worked on, but may not be complete. The state remains reversalPending until the reversals have been processed, after which the state becomes reversed or partiallyReversed.
Schema: paymentBatch
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse
StatusDescription
409 Conflict
Conflict. The request to request reversal of the payment batch is not allowed. The batch must have started processing to allow reversing.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

Payment Instructions

Payment Instructions

listPaymentInstructions

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return a collection of payment instructions

GET /paymentBatches/{paymentBatchId}/paymentInstructions

Return a collection of payment instructions within this payment batch.

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "items": [
    {
      "id": "0399abed-fd3d",
      "traceNumber": 8706658,
      "name": "Pauline Stonemason",
      "identifier": "C-00523",
      "amount": "1287.65",
      "hold": false,
      "direction": "credit",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "123456789",
        "prenote": false
      },
      "methodId": "ach0001",
      "contactId": "3e8375b1-8c34"
    },
    {
      "id": "0399abed-fd3d",
      "traceNumber": 8764783,
      "name": "Pauline Stonemason",
      "identifier": "C-012295",
      "amount": "2090.35",
      "hold": false,
      "direction": "credit",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "234567890",
        "prenote": false
      },
      "methodId": "ach0002",
      "contactId": "3a32a4a8-5502"
    }
  ]
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/notFound/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The resource at the request URL does not exist.",
  "instance": "https://production.api.apiture.com/banking/paymentBatches/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstructions
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment batch resource at the specified {paymentBatchId}. The response body contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

createPaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789"
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Create a new payment instruction

POST /paymentBatches/{paymentBatchId}/paymentInstructions

Add a new payment instruction to the payment instructions in this payment batch.

Body parameter

{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789"
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}

Parameters

ParameterDescription
body newPaymentInstruction
The data necessary to create a new payment instruction.
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

201 Response

{
  "id": "0399abed-fd3d",
  "traceNumber": 8706658,
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": false,
  "direction": "credit",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "prenote": false
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}

Responses

StatusDescription
201 Created
Created.
Schema: paymentInstruction
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment instruction resource at the specified {paymentBatchId} and {paymentInstructionId}.

This error response may have one of the following type values:

Schema: problemResponse
StatusDescription
409 Conflict

Conflict.

This error response may have one of the following type values:

Schema: problemResponse
StatusDescription
422 Unprocessable Entity

Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
201 Location string uri-reference
The URI of the new payment instruction.
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

getPaymentInstruction

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Fetch a representation of this payment instruction

GET /paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}

Return the JSON representation of this payment instruction resource for the given payment batch or payment batch template.

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
paymentInstructionId resourceId (required)
The unique identifier of this payment instruction. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "traceNumber": 8706658,
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": false,
  "direction": "credit",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "prenote": false
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstruction
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment instruction resource at the specified {paymentBatchId} and {paymentInstructionId}.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

patchPaymentInstruction

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId} \
  -H 'Content-Type: application/merge-patch+json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/merge-patch+json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": true,
  "ach": {
    "accountNumber": "123456789"
  }
}';
const headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
  method: 'patch',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/merge-patch+json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/merge-patch+json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/merge-patch+json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Update this payment instruction

PATCH /paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}

Perform a partial update of this payment instruction as per JSON Merge Patch. Only fields in the request body are updated on the resource; fields which are omitted are not updated.

Body parameter

{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": true,
  "ach": {
    "accountNumber": "123456789"
  }
}

Parameters

ParameterDescription
body paymentInstructionPatch
The new payment instruction.
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
paymentInstructionId resourceId (required)
The unique identifier of this payment instruction. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": true,
  "ach": {
    "accountNumber": "123456789"
  }
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstructionPatch
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment instruction resource at the specified {paymentBatchId} and {paymentInstructionId}.

This error response may have one of the following type values:

Schema: problemResponse
StatusDescription
409 Conflict

Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

This error response may have one of the following type values:

Schema: problemResponse
StatusDescription
422 Unprocessable Entity

Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

deletePaymentInstruction

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId} \
  -H 'Accept: application/problem+json' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/problem+json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
  method: 'delete',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/problem+json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/problem+json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/problem+json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.devbank.apiture.com/banking/paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Delete this payment instruction resource

DELETE /paymentBatches/{paymentBatchId}/paymentInstructions/{paymentInstructionId}

Delete this payment instruction resource from this payment batch.

Parameters

ParameterDescription
paymentBatchId resourceId (required)
The unique identifier of a payment batch. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
paymentInstructionId resourceId (required)
The unique identifier of this payment instruction. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchPaymentBatch/v1.0.0",
  "title": "Not Found",
  "status": 404,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No such transaction exists for the given `{paymentBatchId}` bb709151-5750",
  "instance": "https://production.api.apiture.com/banking/payments/bb709151-5750/instructions/3dfda85a-ce87"
}

Responses

StatusDescription
204 No Content
No Content. The operation succeeded but returned no response body.
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment instruction resource at the specified {paymentBatchId} and {paymentInstructionId}.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

Payment Contacts

Payment Contacts

listPaymentContacts

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentContacts \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentContacts HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentContacts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentContacts', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentContacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return a collection of payment contacts

GET /paymentContacts

Return a paginated collection of payment contacts. The nextPage_url in the response is a pagination link.

Parameters

ParameterDescription
type contactType
Filter payment contacts to a subset of individual or business contacts.
enum values: individual, business
name string
Filter payment contacts to a subset of contacts based on their name. This filter is case insensitive and can match on a substring of the contact name.
maxLength: 55
method string
Filter payment contacts to a subset of contacts with ach or wire payment method.
enum values: ach, wireTransfer
start string
The location of the next item in the collection. This is an opaque cursor supplied by the API service. Omit this to start at the beginning of the collection. The client does not define this value; the API services automatically pass the ?start= parameter on the nextPage_url.
Default: ""
maxLength: 256
limit integer(int32)
The maximum number of items to return in this page response.
Default: 100
minimum: 0
maximum: 1000

Example responses

200 Response

{
  "start": "d1b48af913464aa49fcb07065dcc0616",
  "limit": 10,
  "nextPage_url": "https://production.api.apiture.com/payments/paymentContacts?start=6117a4dcefb841cab7316cef1ac8b58c&limit=10",
  "items": [
    {
      "id": "0399abed-fd3d",
      "name": "James Bond",
      "contactIdentification": "007",
      "address": {
        "address1": "1405 Tiburon Dr",
        "locality": "Wilmington",
        "region": "NC",
        "postalCode": "28403",
        "countryCode": "US"
      },
      "phone": [
        {
          "type": "business",
          "number": "+19105550007"
        }
      ],
      "email": "james.bond@mi6.gov.uk",
      "type": "individual",
      "employee": true,
      "ownerId": "0399abed-fd3d"
    },
    {
      "id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
      "name": "Dr. Stephen Strange",
      "address": {
        "address1": "177A Bleecker Street",
        "locality": "New York",
        "region": "NY",
        "postalCode": "10012",
        "countryCode": "US"
      },
      "phone": [
        {
          "type": "cell",
          "number": "+19105550007"
        }
      ],
      "email": "stephen.strange@marvel.com",
      "type": "individual",
      "employee": false,
      "ownerId": "0399abed-fd3d"
    }
  ]
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentContacts
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

createPaymentContact

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentContacts \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentContacts HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentContacts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentContacts', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentContacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Create a new payment contact

POST /paymentContacts

Create a new payment contact within the payment contacts collection.

Body parameter

{
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

Parameters

ParameterDescription
body newPaymentContact
The data necessary to create a new payment contact.

Example responses

201 Response

{
  "id": "0399abed-fd3d",
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
201 Created
Created.
Schema: paymentContact
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.
Schema: problemResponse

Response Headers

StatusDescription
201 Location string uri-reference
The URI of the new payment contact.
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

getPaymentContact

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Fetch a representation of this payment contact

GET /paymentContacts/{paymentContactId}

Return the JSON representation of this payment contact resource.

Parameters

ParameterDescription
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentContact
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment contact resource at the specified {paymentContactId}. The _error field in the response contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

patchPaymentContact

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId} \
  -H 'Content-Type: application/merge-patch+json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/merge-patch+json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ]
}';
const headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
  method: 'patch',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/merge-patch+json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/merge-patch+json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/merge-patch+json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Update this payment contact

PATCH /paymentContacts/{paymentContactId}

Perform a partial update of this payment contact as per JSON Merge Patch format and processing rules. Only fields in the request body are updated on the resource; fields which are omitted are not updated. Patch operations do not modify the payment contact's existing payment batches or templates; payment instructions contain only copies of the contact's information.

Body parameter

{
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ]
}

Parameters

ParameterDescription
body paymentContactPatch
The fields to update within the payment contact.
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentContact
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment contact resource at the specified {paymentContactId}. The _error field in the response contains details about the request error.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid. The _error field in the response contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

deletePaymentContact

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId} \
  -H 'Accept: application/problem+json' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/problem+json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
  method: 'delete',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/problem+json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/problem+json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/problem+json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Delete this payment contact resource

DELETE /paymentContacts/{paymentContactId}

Deleting contacts does not modify any existing payment batches or templates; payment instructions contain only copies of the contact's information.

Parameters

ParameterDescription
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchAccount/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists for the given account reference",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
204 No Content
No Content. The operation succeeded but returned no response body.
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found
Not Found. There is no such payment contact resource at the specified {paymentContactId}. The _error field in the response contains details about the request error.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

Payment Methods

Payment Methods

listPaymentMethods

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return this contact's collection of payment methods

GET /paymentContacts/{paymentContactId}/paymentMethods

Return a payment method collection for this contact.

Parameters

ParameterDescription
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "items": [
    {
      "id": "0399abed-fd3d",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "123456789",
        "type": "checking",
        "primary": true
      }
    },
    {
      "id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "123457780",
        "type": "checking",
        "primary": false
      }
    }
  ]
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

422 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unprocessableEntity/v1.0.0",
  "title": "Unprocessable Entity",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request body and/or query parameters were well-formed but otherwise invalid.",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unprocessableEntity/v1.0.0",
  "title": "Unprocessable Entity",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request body and/or query parameters were well-formed but otherwise invalid.",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentMethods
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well-formed but otherwise invalid.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

createPaymentMethod

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Create a new payment method

POST /paymentContacts/{paymentContactId}/paymentMethods

Create a new payment method for this contact.

Body parameter

{
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

Parameters

ParameterDescription
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
body newPaymentMethod
The data necessary to create a new payment method.

Example responses

201 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
201 Created
Created.
Schema: paymentMethod
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
409 Conflict

Conflict.

This error response may have one of the following type values:

Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.
Schema: problemResponse

Response Headers

StatusDescription
201 Location string uri-reference
The URI of the new payment method.
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

getPaymentMethod

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Fetch a representation of this payment method

GET /paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}

Return the JSON representation of this payment method resource.

Parameters

ParameterDescription
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
paymentMethodId resourceId (required)
The unique identifier of a payment method. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentMethod
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment method resource at the specified {paymentMethodId}.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

patchPaymentMethod

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId} \
  -H 'Content-Type: application/merge-patch+json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/merge-patch+json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "type": "ach",
  "ach": {
    "accountNumber": "123456789"
  }
}';
const headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/merge-patch+json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
  method: 'patch',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/merge-patch+json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/merge-patch+json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/merge-patch+json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Update this payment method

PATCH /paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}

Perform a partial update of this payment method as per JSON Merge Patch format and processing rules. Only fields in the request body are updated on the resource; fields which are omitted are not updated.

Body parameter

{
  "type": "ach",
  "ach": {
    "accountNumber": "123456789"
  }
}

Parameters

ParameterDescription
body paymentMethodPatch
The fields to update within the payment method.
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
paymentMethodId resourceId (required)
The unique identifier of a payment method. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

200 Response

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

400 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/badRequest/v1.0.0",
  "title": "Bad Request",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "Input did not parse as JSON",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentMethod
StatusDescription
400 Bad Request
Bad Request. The request body, request headers, and/or query parameters are not well-formed.
Schema: problemResponse
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment method resource at the specified {paymentMethodId}.

This error response may have one of the following type values:

Schema: problemResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.
Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

deletePaymentMethod

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId} \
  -H 'Accept: application/problem+json' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/problem+json

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/problem+json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
  method: 'delete',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/problem+json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/problem+json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/problem+json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.devbank.apiture.com/banking/paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Delete this payment method resource

DELETE /paymentContacts/{paymentContactId}/paymentMethods/{paymentMethodId}

Delete this payment method resource. Deleting the payment method does not negatively impact any payment instructions in payment batches or templates that were instantiated from the payment method; those contain copies of the payment method data and continue to work even if this payment method is deleted.

Parameters

ParameterDescription
paymentContactId resourceId (required)
The unique identifier of a payment contact. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
paymentMethodId resourceId (required)
The unique identifier of a payment method. This is an opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

Example responses

401 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 400,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/unauthorized/v1.0.0",
  "title": "Unauthorized",
  "status": 401,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request lacks valid authentication credentials",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

403 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}
{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/forbidden/v1.0.0",
  "title": "Forbidden",
  "status": 403,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

404 Response

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchAccount/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists for the given account reference",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Responses

StatusDescription
204 No Content
No Content. The operation succeeded but returned no response body.
StatusDescription
401 Unauthorized
Unauthorized. The operation require authentication but none was given.
Schema: problemResponse
StatusDescription
403 Forbidden
Forbidden. The authenticated caller is not authorized to perform the requested operation.
Schema: problemResponse
StatusDescription
404 Not Found

Not Found. There is no such payment method resource at the specified {paymentMethodId}.

This error response may have one of the following type values:

Schema: problemResponse

Response Headers

StatusDescription
403 WWW-Authenticate string
Indicates the additional authentication scheme(s) and parameters applicable to the target resource/operation.

Schemas

accountRoutingNumber

"stringstr"

Account Routing Number (v1.0.0)

A reusable type for an account routing number.

Type: string
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$

achPaymentBatch

{
  "companyName": "Well's Roofing",
  "secCode": "ppd",
  "sameDay": false,
  "imported": true,
  "confidentialCustomers": [
    {
      "id": "64446f8d-780f",
      "name": "Philip F. Duciary"
    },
    {
      "id": "58853981-24bb",
      "name": "Alice A. Tuary"
    }
  ],
  "approvalDueAt": "2022-06-09T20:30:00.000Z",
  "sameDayApprovalDue": [
    "2022-06-09T15:00:00.000Z",
    "2022-06-09T18:00:00.000Z",
    "2022-06-09T20:30:00.000Z"
  ]
}

ACH Payment Batch (v1.3.0)

Properties unique to ACH payment batches.

Properties

NameDescription
confidentialCustomers array: [confidentialAchCustomer]
A list of customers entitled to view and manage this confidential payment batch. If this property is omitted, the batch is not confidential. To remove confidential customers in a batch and make the batch non-confidential, set this property to null in a patchPaymentBatch operation.
minItems: 1
companyName string (required)
The name of the company associated with this ACH batch. This short form of the business name is included in the corresponding NACHA file which imposes a maximum length of 16 characters.
maxLength: 16
type string: achPaymentBatchType
Optionally defines a specific type of ACH payment batch. Used for Vendor Credit batches.
enum values: other, vendorCredit
secCode string: paymentBatchAchSecCode (required)
The SEC code for these ACH payments. This is derived from type.
read-only
enum values: arc, boc, ccd, cie, ctx, pop, ppd, rck, tel, web
discretionaryData string
Discretionary text data which is carried over to the settlement entry.
maxLength: 20
sameDay boolean (required)
The ACH payment should be processed on the same day, if enabled by the financial institution.
read-only
Default: false
imported boolean (required)
If true, this batch was imported from a NACHA file. Imported batches only allow changing the hold boolean property in payment instructions.
Default: false
approvalDueAt string(date-time)
The date and time when the payment must be fully approved so that it can be processed in time to complete by the scheduledOn date. The time component of this timestamp is the financial institution's cut-off time. This is expressed in RFC 3339 YYYY-MM-DDThh:mm:ss.sssZ date-time format.
read-only
sameDayApprovalDue array: [string]
A list of date-times when a same day payment must be fully approved so that it can be processed that day. The financial institution may process same-day ACH batches multiple times per day. The time component of each date-time is the financial institution's same-day cut-off time. This is expressed in RFC 3339 YYYY-MM-DDThh:mm:ss.sssZ date-time format. Same day batches submitted on non-business days are processed the next business day.
read-only
minItems: 1
maxItems: 8
reversedPaymentId string: readOnlyResourceId
If this payment is a reversal of another batch, this is the id of that reversed payment batch.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

achPaymentBatchPatch

{
  "sameDay": false,
  "discretionaryData": "Payroll adjust 22-05"
}

ACH Payment Batch Patch (v1.0.0)

Patchable properties of ACH payment batches.

Properties

NameDescription
confidentialCustomers array: [confidentialAchCustomer]
A list of customers entitled to view and manage this confidential payment batch. If this property is omitted, the batch is not confidential. To remove confidential customers in a batch and make the batch non-confidential, set this property to null in a patchPaymentBatch operation.
minItems: 1
discretionaryData string
Discretionary text data which is carried over to the settlement entry.
maxLength: 20
sameDay boolean
The ACH payment should be processed on the same day, if enabled by the financial institution.
Default: false

achPaymentBatchType

"other"

ACH Payment Batch Type (v1.0.0)

Defines the type of this ACH payment batch.

achPaymentBatchType strings may have one of the following enumerated values:

ValueDescription
otherOther: An other ACH payment type
vendorCreditVendor Credit: Pay vendor via Corporate Trade Exchange (CTX)

Type: string
enum values: other, vendorCredit

achPaymentInstruction

{
  "routingNumber": "123123123",
  "accountNumber": "123456789",
  "prenote": false
}

ACH Payment Instruction (v1.1.1)

The payment bank account number and routing number for paying or drafting from a contact's account by ACH.

Properties

NameDescription
routingNumber string: accountRoutingNumber (required)
The financial institution routing number to be used for the payment.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
accountNumber string: fullAccountNumber (required)
The financial institution full account number to be used for the payment.
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$
accountType string: achPaymentMethodAccountType
The type of banking account for the financial institution, if known.
enum values: checking, savings, loan
addendum string
An optional memo addendum.
maxLength: 80
prenote boolean (required)
If true, this item requires prenote validation to validate the routing number and account number. When submitting a prenote batch from a payment batch, all the ACH instructions tagged with prenote: true are be submitted (with amount: "0.00").
vendorCreditAddenda array: [vendorCreditAddendum]
Vendor Credit Corporate Trade Exchange (CTX) addenda. This array is only used if payment direction is credit, the secCode is ctx, and the ach.type is vendorCredit. This object is omitted when in a paymentInstructionItem in a collection of payment batches, even if the item is a CTX Vendor Payment credit.
minItems: 1
maxItems: 9999
rePresentedCheck object: rePresentedCheck
A re-presented check (RCK) ACH payment instruction. This field is only used if the payment direction is debit and the payment secCode is rck. This object is omitted when in a paymentInstructionItem, even if the item is a RCK instance.
canceled boolean
true if the payment instruction was canceled.
reversed boolean
true if the payment instruction was reversed.

achPaymentInstructionPatch

{
  "routingNumber": "123123123",
  "accountNumber": "123456789"
}

ACH Payment Instruction Patch (v1.1.1)

The payment bank account number and routing number for paying or drafting from a contact's account by ACH.

Properties

NameDescription
routingNumber string: accountRoutingNumber
The financial institution routing number to be used for the payment.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
accountNumber string: fullAccountNumber
The financial institution full account number to be used for the payment.
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$
accountType string: achPaymentMethodAccountType
The type of banking account for the financial institution, if known.
enum values: checking, savings, loan
addendum string
An optional memo addendum.
maxLength: 80
vendorCreditAddenda array: [vendorCreditAddendumPatch]
Vendor Credit Corporate Trade Exchange (CTX) addenda. This array is only used if payment direction is credit, the secCode is ctx, and the ach.type is vendorCredit.
minItems: 1
maxItems: 9999
rePresentedCheck object: rePresentedCheckPatch
A re-presented check (RCK) ACH payment instruction. This field is only used if the payment direction is debit and the payment secCode is rck.

achPaymentMethod

{
  "routingNumber": "123123123",
  "accountNumber": "123456789",
  "type": "checking",
  "primary": true
}

ACH Payment Method (v1.0.0)

Data necessary for defining the customer's ACH payment method.

Properties

NameDescription
routingNumber string: accountRoutingNumber (required)
The financial institution routing number to be used for the payment.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
accountNumber string: fullAccountNumber (required)
The financial institution full account number to be used for the payment.
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$
type string: achPaymentMethodAccountType (required)
The type of account for the financial institution.
enum values: checking, savings, loan
primary boolean (required)
Designates this as the primary ACH payment method. There can only be one primary ACH payment method. If a new ACH payment method is set as the primary method when there is an already existing primary ACH payment method, the new ACH payment method becomes the primary method. Primary payment methods are only supported when the associated payment customer for this resource is of type employee.

achPaymentMethodAccountType

"checking"

ACH Payment Method Account Type (v1.0.0)

The product type of the ACH payment method account.

achPaymentMethodAccountType strings may have one of the following enumerated values:

ValueDescription
checkingChecking: The ACH payment method is sourced from a checking account
savingsSavings: The ACH payment method is sourced from a savings account
loanLoan: The ACH payment method is sourced from a loan account

Type: string
enum values: checking, savings, loan

achPaymentMethodPatch

{
  "type": "checking",
  "accountNumber": "123456789"
}

ACH Payment Method Patch Request (v1.0.0)

Representation used to patch an existing payment method using the JSON Merge Patch format and processing rules.

Properties

NameDescription
routingNumber string: accountRoutingNumber
The financial institution routing number to be used for the payment.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
accountNumber string: fullAccountNumber
The financial institution full account number to be used for the payment.
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$
type string: achPaymentMethodAccountType
The type of account for the financial institution.
enum values: checking, savings, loan
primary boolean
Designates this as the primary ACH payment method. There can only be one primary ACH payment method. If a new ACH payment method is set as the primary method when there is an already existing primary ACH payment method, the new ACH payment method becomes the primary method. Primary payment methods are only supported when the associated payment customer for this resource is of type employee.

address

{
  "address1": "1805 Tiburon Dr.",
  "address2": "Building 14, Suite 1500",
  "locality": "Wilmington",
  "regionName": "North Carolina",
  "countryCode": "US",
  "postalCode": "28412"
}

Address (v1.0.0)

A postal address that can hold a US address or an international (non-US) postal addresses.

Properties

NameDescription
address1 string (required)
The first line of the postal address. In the US, this typically includes the building number and street name.
maxLength: 35
address2 string
The second line of the street address. This should only be used if it has a value. Typical values include building numbers, suite numbers, and other identifying information beyond the first line of the postal address.
maxLength: 35
locality string (required)
The city/town/municipality of the address.
maxLength: 20
countryCode string (required)
The ISO-3611 alpha-2 value for the country associated with the postal address.
minLength: 2
maxLength: 2
regionName string
The state, district, or outlying area of the postal address. This is required if countryCode. regionCode and regionName are mutually exclusive.
minLength: 2
maxLength: 20
regionCode string (required)
The state, district, or outlying area of the postal address. This is required if countryCode is US regionCode and regionName are mutually exclusive.
minLength: 2
maxLength: 2
postalCode string (required)
The postal code, which varies in format by country. If countryCode is US, this should be a five digit US ZIP code or ten character ZIP+4.
minLength: 5
maxLength: 10

apiProblem

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/accountNotFound/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists at the given account_url",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

API Problem (v1.1.0)

API problem or error, as per RFC 7807 application/problem+json.

Properties

NameDescription
type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
title string
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
detail string
A human-readable explanation specific to this occurrence of the problem.
instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
id string: readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
occurredAt string(date-time): readOnlyTimestamp
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
read-only
minLength: 20
maxLength: 30
problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

confidentialAchCustomer

{
  "id": "f48291b6-14ce",
  "name": "Amanda Cummins"
}

Confidential ACH Customer (v1.0.0)

A reference to a customer that is entitled to view and manage a confidential ACH payment batch.

Properties

NameDescription
id string: resourceId (required)
The unique id of the customer.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
name string (required)
The customer's full name.
minLength: 2
maxLength: 48

confidentialAchCustomerList

{
  "items": [
    {
      "id": "64446f8d-780f",
      "name": "Philip F. Duciary"
    },
    {
      "id": "58853981-24bb",
      "name": "Alice A. Tuary"
    }
  ]
}

Confidential ACH Customer List (v1.0.0)

A list of customers who are entitled to access to confidential ACH payment batches.

Properties

NameDescription
items array: [confidentialAchCustomer]
A list of customers entitled to view and manage this confidential payment batch. If this property is omitted, the batch is not confidential.
minItems: 1

confidentialWireCustomer

{
  "id": "f48291b6-14ce",
  "name": "Amanda Cummins"
}

Confidential Wire Customer (v1.0.0)

A reference to a customer that is entitled to view and manage a confidential wire payment payment batch.

Properties

NameDescription
id string: resourceId (required)
The unique id of the customer.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
name string (required)
The customer's full name.
minLength: 2
maxLength: 48

contactType

"individual"

Contact Type (v1.0.0)

The type descriptor of the contact to denote the relationship.

contactType strings may have one of the following enumerated values:

ValueDescription
individualIndividual: The contact for the payment is a non-employee of the payer
businessBusiness: The contact for the payment is a business entity rather than a person

Type: string
enum values: individual, business

creditOrDebitValue

"3456.78"

Credit Or Debit Value (v1.0.0)

The monetary value representing a credit (positive amounts with no prefix or a + prefix) or debit (negative amounts with a - prefix). The numeric value is represented as a string so that it can be exact with no loss of precision.
The schema creditOrDebitValue was added on version 0.4.0 of the API.

Type: string
pattern: ^(-|+)?(0|[1-9][0-9]*).[0-9][0-9]$

customerReference

{
  "id": "f48291b6-14ce",
  "name": "Amanda Cummins"
}

Customer Reference (v1.0.0)

A reference to a customer. The name property is the customer's name at the time this reference was created.

Properties

NameDescription
id string: resourceId (required)
The unique id of the customer.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
name string (required)
The customer's full name.
minLength: 2
maxLength: 48

dateRange

"2022-05-19"

Date Range (v1.0.0)

A date range, supporting inclusive or exclusive endpoints. Dates ranges use dates expressed in YYYY-MM-DD RFC 3339 date format. The value may have the following forms:

Type: string
pattern: ^\d{4}-\d{2}-\d{2}|([([)]])$

eligiblePaymentBatchApprovers

{
  "items": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ]
}

Eligible Payment Batch Approvers (v1.0.0)

A list of customers eligible to approve a payment batch. If the batch is marked confidential, the items includes only those who are also in the batch's list of confidential customers.

Properties

NameDescription
items array: [paymentBatchApprover] (required)
The list of eligible approvers.

fullAccountNumber

"123456789"

Full Account Number (v1.0.0)

A full account number. This is the number that the customer uses to reference the account within the financial institution.

Type: string
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$

maskedAccountNumber

"*1008"

Masked Account Number (v1.0.0)

A masked account number: an asterisk * followed by up to four digits.

Type: string
minLength: 2
maxLength: 5
pattern: ^*[- _a-zA-Z0-9.]{1,4}$

monetaryValue

"3456.78"

Monetary Value (v1.0.0)

The monetary value, supporting only positive amounts. The numeric value is represented as a string so that it can be exact with no loss of precision.
The schema monetaryValue was added on version 0.4.0 of the API.

Type: string
pattern: ^(0|[1-9][0-9]*).[0-9][0-9]$

newAchPaymentBatch

{
  "companyName": "Well's Roofing",
  "secCode": "ppd",
  "sameDay": false,
  "discretionaryData": "Payroll adjust 22-05",
  "confidentialCustomers": [
    {
      "id": "64446f8d-780f",
      "name": "Philip F. Duciary"
    },
    {
      "id": "58853981-24bb",
      "name": "Alice A. Tuary"
    }
  ]
}

New ACH Payment Batch (v1.1.0)

Properties to create new ACH payment batches.

Properties

NameDescription
confidentialCustomers array: [confidentialAchCustomer]
A list of customers entitled to view and manage this confidential payment batch. If this property is omitted, the batch is not confidential. To remove confidential customers in a batch and make the batch non-confidential, set this property to null in a patchPaymentBatch operation.
minItems: 1
companyName string
The name of the company associated with this ACH batch. This short form of the business name is included in the corresponding NACHA file which imposes a maximum length of 16 characters.
maxLength: 16
type string: achPaymentBatchType
Optionally defines a specific type of ACH payment batch. Used for Vendor Credit batches.
enum values: other, vendorCredit
secCode string: paymentBatchAchSecCode (required)
The SEC code for these ACH payments. This is derived from type.
enum values: arc, boc, ccd, cie, ctx, pop, ppd, rck, tel, web
discretionaryData string
Discretionary text data which is carried over to the settlement entry.
maxLength: 20
sameDay boolean
The ACH payment should be processed on the same day, if enabled by the financial institution.
Default: false

newAchPaymentInstruction

{
  "routingNumber": "123123123",
  "accountNumber": "123456789"
}

New ACH Payment Instruction (v1.2.1)

The payment bank account number and routing number for paying or drafting from a contact's account by ACH.

Properties

NameDescription
routingNumber string: accountRoutingNumber (required)
The financial institution routing number to be used for the payment.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
accountNumber string: fullAccountNumber (required)
The financial institution full account number to be used for the payment.
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$
accountType string: achPaymentMethodAccountType
The type of banking account for the financial institution, if known.
enum values: checking, savings, loan
addendum string
An optional memo addendum.
maxLength: 80
vendorCreditAddenda array: [newVendorCreditAddendum]
Vendor Credit Corporate Trade Exchange (CTX) addenda. This array is only used (and is required) if the payment direction is credit and the payment secCode is ctx, and the ach.type is vendorCredit.
minItems: 1
maxItems: 9999
rePresentedCheck object: newRePresentedCheck
An new re-presented check (RCK) ACH payment instruction. This field is only used (and is required) if the payment direction is debit and the payment secCode is rck.

newAchPaymentMethod

{
  "routingNumber": "123123123",
  "accountNumber": "123456789",
  "type": "checking",
  "primary": true
}

New ACH Payment Method (v1.0.0)

Data necessary for defining the customer's ACH payment method.

Properties

NameDescription
routingNumber string: accountRoutingNumber (required)
The financial institution routing number to be used for the payment.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
accountNumber string: fullAccountNumber (required)
The financial institution full account number to be used for the payment.
minLength: 1
maxLength: 32
pattern: ^[- a-zA-Z0-9.]{1,32}$
type string: achPaymentMethodAccountType (required)
The type of account for the financial institution.
enum values: checking, savings, loan
primary boolean (required)
Designates this as the primary ACH payment method. There can only be one primary ACH payment method. If a new ACH payment method is set as the primary method when there is an already existing primary ACH payment method, the new ACH payment method becomes the primary method. Primary payment methods are only supported when the associated payment customer for this resource is of type employee.

newPaymentBatch

{
  "type": "ach",
  "direction": "credit",
  "company": {
    "id": "123-56-7890",
    "type": "taxId"
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "ach": {
    "secCode": "ppd",
    "sameDay": false,
    "discretionaryData": "Payroll adjust 22-05",
    "imported": false,
    "companyName": "Well's Roofing"
  },
  "settlementAccount": {
    "id": "69464d06366ac48f2ef6",
    "maskedNumber": "*7890",
    "label": "Payroll Checking *7890"
  },
  "settlementType": "detailed",
  "schedule": {
    "scheduledOn": "2022-05-01",
    "frequency": "monthlyFirstDay"
  }
}

New Payment Batch (v1.5.0)

Representation used to create a new ACH payment batch. If the name is omitted, the service assigns a name based on the payment type. If type is wireTransfer, direction must be credit.

Properties

NameDescription
name string
The user-assigned name of this payment batch.
maxLength: 10
description string
The user-assigned detailed description of this payment batch.
maxLength: 100
settlementAccount object: paymentSettlementAccountReference
The account where the payment funds are drawn or credited.
settlementType string: paymentBatchSettlementType

How the payment processing is applied to the settlement account.

paymentBatchSettlementType strings may have one of the following enumerated values:

ValueDescription
summarySummary: All the payments in the batch are combined into one transaction against the account
detailedDetailed: Each payments in the batch is recorded as individual transactions against the account

enum values: summary, detailed
company object: paymentBatchCompany
Identification of the company making this payment batch or draft.
type string: paymentBatchType (required)
Defines the type of this payment batch.
enum values: ach, wireTransfer
ach object: newAchPaymentBatch
ACH-specific details of the payment batch. This object is required if type is ach and ignored otherwise.
wireTransfer object: newWireTransferPaymentBatch
The definition of a wire transfer batch. This object is required if type is wireTransfer and ignored otherwise.
schedule object: newPaymentBatchSchedule
The target date when the payment is due, and any recurrence.
direction string: paymentBatchDirection (required)
The direction in which funds flow for this payment batch. This must be credit for wire transfers.
enum values: none, credit, debit, both

newPaymentBatchSchedule

{
  "recurrenceType": "fixed",
  "scheduledOn": "2019-08-24",
  "frequency": "once",
  "endsOn": "2019-08-24"
}

New Payment Batch Schedule (v1.2.0)

The date when the payment should be completed, and any recurrence.

Properties

NameDescription
recurrenceType string: paymentRecurrenceType

Describes whether the payment instruction amounts in the batch vary or are fixed when the payment recurs. This is ignored if the payment frequency is once.

paymentRecurrenceType strings may have one of the following enumerated values:

ValueDescription
fixedFixed: The payment amounts are the same each time a payment recurs
variablevariable: The payment amounts vary and must be entered/verified each time a payment recurs

enum values: fixed, variable
scheduledOn string(date) (required)
The payment's target completion date, in YYYY-MM-DD RFC 3339 date format. For recurring batches, this date get recalculated after each recurrence is processed.
frequency string: paymentFrequency (required)

For recurring payments and drafts, the interval at which the money movement recurs.

paymentFrequency strings may have one of the following enumerated values:

ValueDescription
onceonce: Payment does not repeat
dailydaily: Repeat daily on business days
weeklyweekly: Repeat weekly
biweeklybiweekly: Repeat every two weekly (26 times a year)
semimonthlysemimonthly: Repeat twice a month (24 times a year)
monthlymonthly: Repeat monthly
monthlyFirstDaymonthlyFirstDay: Repeat on the first business day of the month
monthLastDaymonthLastDay: Repeat on the last business day of the month
bimonthlybimonthly: Repeat every other month
quarterlyquarterly: Repeat quarterly (four times a year)
semiyearlysemiyearly: Repeat every six months (twice a year)
yearlyyearly: Repeat once every year

enum values: once, daily, weekly, biweekly, semimonthly, monthly, monthlyFirstDay, monthLastDay, bimonthly, quarterly, semiyearly, yearly
endsOn string(date)
The optional date when the batch schedule ends, in YYYY-MM-DD RFC 3339 date format. Subsequent recurring payments may be scheduled up to and including this date, but not after. This property is ignored if frequency is once.

newPaymentContact

{
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

New Payment Contact (v1.0.0)

Representation used to create a new payment contact.

Properties

NameDescription
name string (required)
The name of the payment contact. This can be used to represent a person or a business.
maxLength: 55
contactIdentification string
An identifier provided to differentiate contacts. For example, if you had multiple payment contacts for a payroll batch with the name Michael Scott, you could enter in their Employee ID in this field to know which employee should be the recipient of the payment.
maxLength: 55
address object: usAddress
The physical address of the payment contact.
phone array: [typedPhoneNumber]
A list of phone numbers for the payment contact. Each phone number lists a type to serve as a descriptor for the phone number.
email string(email)
The email address of the contact.
minLength: 4
maxLength: 120
type string: contactType (required)

The type descriptor of the contact to denote the relationship.

contactType strings may have one of the following enumerated values:

ValueDescription
individualIndividual: The contact for the payment is a non-employee of the payer
businessBusiness: The contact for the payment is a business entity rather than a person

enum values: individual, business
employee boolean
Indicates whether or not the contact is an employee or not.
ownerId string: readOnlyResourceId (required)
The customer identifier of the owner associated with the contact.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

newPaymentInstruction

{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789"
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}

Create Payment Instruction (v1.2.1)

Representation used to create a new payment instruction. If the payment batch type is ach, the body must contain the ach property. The amount may be "0.00" but a non-zero amount must be set, or the item marked as hold, in order to approve the batch.

Properties

NameDescription
name string (required)
The name of the party being paid or drafted.
minLength: 3
maxLength: 22
identifier string
A optional string, such as an employee ID, which distinguishes this payment contact from others with the same name.
maxLength: 15
amount string: monetaryValue (required)
The amount of money to send or draft from this payment contact.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
hold boolean
If true, do not process this instruction.
contactId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the contact's id.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
methodId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the id of that contact's payment method.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ach object: newAchPaymentInstruction
The ACH details. This object is required if and only if the payment batch's type is ach.
wireTransfer object: newWireTransferPaymentInstruction
The wire transfer details. This object is required if and only if the payment batch's type is wireTransfer. The payment direction must be credit for wire transfers.

newPaymentMethod

{
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

New Payment Method (v1.2.0)

Representation used to create a new payment method.

Properties

NameDescription
type string: paymentBatchType (required)
The type of the payment method. This determines which sub-resource fields must be present. For example, if type is ach, the ach field is required and contains the fields required for an ACH payment.
enum values: ach, wireTransfer
ach object: newAchPaymentMethod
Enumerates the payment method details for an ACH payment. This object is required when the type is ach.
wireTransfer object: newWireTransferPaymentMethod
Enumerates the payment method details for a wire transfer payment. This object is required when the type is wireTransfer.

newRePresentedCheck

{
  "checkNumber": 43318
}

New Re-Presented Check (v1.0.0)

A new re-presented check (RCK) ACH payment instruction. An RCK instruction represents a check that was returned for non-sufficient or uncollected funds and is being presented again for payment.

Properties

NameDescription
checkNumber integer (required)
The check number that was presented again.
minimum: 1
maximum: 999999999999999

newVendorCreditAddendum

{
  "description": "Addenda",
  "adjustmentDescription": "Dup",
  "adjustmentType": "extensionError",
  "discountAmount": "22.00",
  "invoiceAmount": "20.00",
  "invoicedOn": "2022-04-22",
  "invoiceNumber": "123123",
  "referenceIdType": "billOfLading",
  "referenceId": "123123",
  "remittanceAmount": "22.00",
  "adjustmentAmount": "32.00"
}

New ACH Payment Vendor Credit Addendum (v1.1.0)

Details of a new Vendor Credit ACH addendum.

Properties

NameDescription
description string (required)
The description of this payment addendum.
maxLength: 80
adjustmentDescription string (required)
The description of the adjustment.
maxLength: 8
adjustmentAmount string: monetaryValue (required)
The value of the adjustment as an exact decimal amount.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
adjustmentType string: vendorCreditAdjustmentType (required)

The type of a vendor credit adjustment.

vendorCreditAdjustmentType strings may have one of the following enumerated values:

ValueDescription
noneNone
pricingErrorPricing Error
extensionErrorExtension Error
damagedDamaged
qualityConcernQuality Concern
qualityContestedQuality Contested
wrongProductWrong Product
returnsDueToDamageReturns-Damage
returnsDueToQualityReturns-Quality
itemNotReceivedItem Not Received
creditAdAgreedCredit as Agreed
creditMemoCredit Memo

enum values: none, pricingError, extensionError, damaged, qualityConcern, qualityContested, wrongProduct, returnsDueToDamage, returnsDueToQuality, itemNotReceived, creditAdAgreed, creditMemo
discountAmount string: monetaryValue (required)
The monetary value of the discount, if any.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
invoiceAmount string: monetaryValue (required)
The monetary value of the invoice, if any.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
invoicedOn string(date) (required)
The date the original purchase was invoiced.
invoiceNumber string (required)
The invoice number
maxLength: 6
referenceIdType string: vendorCreditReferenceIdType (required)

A list of codes which describe the type of the referenceId.

vendorCreditReferenceIdType strings may have one of the following enumerated values:

ValueDescription
noneNone
billOfLadingBill of Lading
purchaseOrderPurchase Order
accountReceivableItemAccts Recv Item
voucherVoucher

enum values: none, billOfLading, purchaseOrder, accountReceivableItem, voucher
referenceId string (required)
The vendor's reference ID. This ID number is of type described by referenceIdType.
maxLength: 6
remittanceAmount string: monetaryValue (required)
The amount of the adjustment/remittance.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$

newWireTransferPaymentBatch

{
  "originator": {
    "name": "Phil Duciary",
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "confidentialCustomers": [
    {
      "id": "f48291b6-14ce",
      "name": "Amanda Cummins"
    },
    {
      "id": "eaf488ab-fbf7",
      "name": "Stephen Walker"
    }
  ],
  "localClearingCode": "TBD",
  "scope": "domestic"
}

New Wire Transfer Payment Batch (v1.0.0)

Properties of a new wire transfer payment.

Properties

NameDescription
originator object: wireTransferOriginator
The person who created the wire transfer.
confidentialCustomers array: [confidentialWireCustomer]
A list of customers entitled to view and manage this confidential wire transfer payment batch. If this property is omitted, the batch is not confidential. To remove confidential customers in a batch and make the batch non-confidential, set this property to null in a patchPaymentBatch operation.
minItems: 1
scope string: wireTransferPaymentScope (required)
Indicates if the wire transfer is a domestic wire or an international wire. This must be assigned when creating a wire transfer and is immutable after creation.
enum values: domestic, international

newWireTransferPaymentInstruction

{
  "beneficiary": {
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "intermediaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "routingNumber": "503000196"
  },
  "beneficiaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "locator": "503000196",
    "locatorType": "abaRoutingNumber",
    "instructions": "Account should be a savings account."
  },
  "receivingInstitution": {
    "name": "Old State Federal Savings Bank",
    "routingNumber": "503000196",
    "instructions": "Account should be a savings account."
  },
  "localClearingCode": "TBD"
}

New Wire Transfer Payment Instruction (v1.0.0)

Data to create a new wire transfer payment instruction. Note: The wire originator information is in the containing paymentBatch.wireTransfer object.

Properties

NameDescription
beneficiary object: wireTransferBeneficiary
The individual or business who receives the wire transfer funds.
beneficiaryInstitution object: wireTransferBeneficiaryInstitution
The beneficiary financial institution. A receivingInstitution branch of this beneficiary financial institution may be the ultimate location where the wire transfer is deposited.
intermediaryInstitution object: wireTransferIntermediaryInstitution
This financial institution serves as an intermediary between the issuer and beneficiary institutions to processes the wire transfer. Required for international wire transfers where the issuing financial institution is unable to process the international wire.
receivingInstitution object: wireTransferReceivingInstitution
For international wires, a receiving institution may be used if the beneficiary's account at the beneficiary's institution should be routed to a local branch. The receiving institution represents the local branch.
localClearingCode string
TBD.
maxLength: 63

newWireTransferPaymentMethod

{
  "beneficiary": {
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "intermediaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "routingNumber": "503000196"
  },
  "beneficiaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "locator": "503000196",
    "locatorType": "abaRoutingNumber",
    "instructions": "Account should be a savings account."
  },
  "receivingInstitution": {
    "name": "Old State Federal Savings Bank",
    "routingNumber": "503000196",
    "instructions": "Account should be a savings account."
  },
  "localClearingCode": "TBD",
  "scope": "domestic"
}

New Wire Transfer Payment Method (v1.0.0)

Data necessary for defining the customer's wire transfer payment method.

Properties

NameDescription
beneficiary object: wireTransferBeneficiary (required)
The individual or business who receives the wire transfer funds.
beneficiaryInstitution object: wireTransferBeneficiaryInstitution (required)
The beneficiary financial institution. A receivingInstitution branch of this beneficiary financial institution may be the ultimate location where the wire transfer is deposited.
intermediaryInstitution object: wireTransferIntermediaryInstitution
This financial institution serves as an intermediary between the issuer and beneficiary institutions to processes the wire transfer. Required for international wire transfers where the issuing financial institution is unable to process the international wire.
receivingInstitution object: wireTransferReceivingInstitution
For international wires, a receiving institution may be used if the beneficiary's account at the beneficiary's institution should be routed to a local branch. The receiving institution represents the local branch.
localClearingCode string
TBD.
maxLength: 63
scope string: wireTransferPaymentScope (required)
Indicates if the wire transfer is a domestic wire or an international wire.
enum values: domestic, international

paymentBatch

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2467.50",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30",
    "frequency": "monthly"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true,
    "requestApproval": true
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "information": "You have missed the cutoff time. Please re-schedule.",
  "imported": true,
  "approvers": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ],
  "approvals": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "si...42@wellsroofing.com",
      "approvedAt": "2022-04-25T09:02:57.375Z"
    },
    null
  ],
  "direction": "credit",
  "settlementType": "detailed",
  "createdAt": "2022-04-28T07:48:20.375Z",
  "updatedAt": "2022-04-28T07:48:49.375Z",
  "problems": []
}

Payment Batch (v1.10.0)

Representation of a payment batch resource.

Properties

NameDescription
name string
The user-assigned name of this payment batch.
maxLength: 10
description string
The user-assigned detailed description of this payment batch.
maxLength: 100
settlementAccount object: paymentSettlementAccountReference
The account where the payment funds are drawn or credited.
settlementType string: paymentBatchSettlementType

How the payment processing is applied to the settlement account.

paymentBatchSettlementType strings may have one of the following enumerated values:

ValueDescription
summarySummary: All the payments in the batch are combined into one transaction against the account
detailedDetailed: Each payments in the batch is recorded as individual transactions against the account

enum values: summary, detailed
company object: paymentBatchCompany
Identification of the company making this payment batch or draft.
schedule object: paymentBatchSchedule
The date when the payment should be processed, and any recurrence.
id string: readOnlyResourceId (required)
The unique identifier for this payment batch resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
fromSummary string
A short summary string describing where the payment batch originates, such as a description of the settlement account for credit payments, or a description of the draft account (if only one) or number of payee for debit payments.
read-only
maxLength: 80
toSummary string
A short summary string describing where the funds are credited. such as a description of the settlement account for debit payments, or a description of the payee (if only one) or number of payees for debit payments.
read-only
maxLength: 80
type string: paymentBatchType (required)
Defines the type of this payment batch.
enum values: ach, wireTransfer
state string: paymentBatchState (required)
The state of this payment batch.
read-only
enum values: pending, pendingApproval, rejected, scheduled, processing, processed, reversalPending, partiallyReversed, reversed, canceled
stateReason string
The reason given when someone rejected the batch, reversed the batch, or removed approvals. This string is only present if a reason was given and the state has not changed since the reason was given.
read-only
maxLength: 80
customerId string: readOnlyResourceId
The ID of the banking customer. This is a business customer for business payment batches. The customer ID is inferred from the settlement account.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ach object: achPaymentBatch
ACH-specific details of the payment batch. This object is present if and only if the batch's type is ach.
read-only
wireTransfer object: wireTransferPaymentBatch
Wire-specific details of the payment batch. This object is present if and only if the batch's type is wireTransfer.
direction string: paymentBatchDirection (required)
The direction in which funds flow for this payment batch.
read-only
enum values: none, credit, debit, both
creditTotal string: creditOrDebitValue (required)
The total of all the payment credit amounts in this batch's payment instructions, expressed as a decimal value. These amounts are credits to the remote accounts and a debit to the settlement account. The total omits instructions where hold is true.
read-only
pattern: ^(-|\+)?(0|[1-9][0-9]*)\.[0-9][0-9]$
debitTotal string: creditOrDebitValue (required)
The total of all the payment debit amounts in this batch's payment instructions, expressed as a decimal value. These amounts are debits to the remote accounts and a credit to the settlement account. The total omits instructions where hold is true.
read-only
pattern: ^(-|\+)?(0|[1-9][0-9]*)\.[0-9][0-9]$
creditCount integer (required)
The number of all the credit instructions in this payment batch. The count omits instructions where hold is true.
read-only
debitCount integer (required)
The number of all the debit instructions in this payment batch. The count omits instructions where hold is true.
read-only
allows object: paymentBatchAllows (required)
Indicates what payment batch actions are allowed for the current customer, given the user's entitlements and the state of the ACH batch.
information string
A text string with additional information about the status of the batch.
read-only
maxLength: 100
trackingNumber string (required)
A unique tracking number for this batch. Unlike the id, this numeric value is visible to the customer, and can be used to lookup a batch by this ID.
read-only
minLength: 6
maxLength: 9
pattern: ^[0-9]+$
copyOf object
If this batch was copied from another, this object describes that source payment batch. This field is only be present when the payment batch was created via the copy operation.
read-only
» id string: readOnlyResourceId (required)
The unique identifier for the origin payment batch resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
» trackingNumber string (required)
The unique tracking number for the batch this was copied from.
minLength: 6
maxLength: 9
pattern: ^[0-9]+$
» type string: paymentBatchCopyType (required)

The type of the payment batch copy.

paymentBatchCopyType strings may have one of the following enumerated values:

ValueDescription
prenotePrenote Payment Batch: A prenote payment batch to validate the ACH routing number and account number
copyCopy Payment Batch: A copy of an existing payment batch

enum values: prenote, copy
createdAt string(date-time) (required)
The date-time when this resource was created, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC. This is derived and immutable.
read-only
updatedAt string(date-time) (required)
The date-time when the resource was last updated, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC. This is derived and immutable.
read-only
approvers array: [paymentBatchApprover] (required)
An array of customers that are entitled to approve the containing payment batch. This may also be an empty array if the settlement account is not yet set.
read-only
minItems: 0
maxItems: 8
approvals array: [paymentBatchApproval] (required)
An array of approvals. A null item indicates a required approval is still pending. The length of this array indicates how many approvals are needed before this payment batch may be actively scheduled for processing. This may also be an empty array if the settlement account is not yet set.
read-only
minItems: 0
maxItems: 3
problems array: [paymentProblem]
A list of problems that prevent approving the payment batch.

paymentBatchAchSecCode

"arc"

ACH Payment (v1.0.0)

The Standard Entry Class (SEC) code that denotes the ACH payment authorization type.

paymentBatchAchSecCode strings may have one of the following enumerated values:

ValueDescription
arcAccounts Receivable
bocBack Office Conversion
ccdCredit or Debit
cieCustomer-Initiated
ctxCorporate Trade Exchange
popPoint of Purchase
ppdPrearranged Payment and Deposit
rckRe-Presented Check
telTelephone-initiated
webInternet-initiated/Mobile

Type: string
enum values: arc, boc, ccd, cie, ctx, pop, ppd, rck, tel, web

paymentBatchAllows

{
  "approve": false,
  "edit": false,
  "submit": true,
  "delete": false,
  "removeApprovals": false,
  "reject": false,
  "reverse": false,
  "copy": false
}

Payment Batch Allows (v1.2.0)

Indicates what payment batch actions are allowed for the current customer, given the user's entitlements and the state of the ACH batch.

Properties

NameDescription
approve boolean (required)
The customer is allowed to approve the batch.
edit boolean (required)
The customer is allowed to edit the batch.
submit boolean (required)
The customer is allowed to submit batches for approval.
reject boolean (required)
The customer is allowed to reject the payment batch.
reverse boolean (required)
The customer is allowed to reverse the payment batch.
delete boolean (required)
The customer is allowed to delete the batch.
removeApprovals boolean (required)
The customer is allowed to remove approvals for the batch.
copy boolean (required)
The customer is allowed to copy the batch.

paymentBatchApproval

{
  "id": "327d8bea-2553",
  "name": "Tom Allison",
  "identification": "to...58@wellsroofing.com",
  "approvedAt": "2022-05-23T08:01:28.375Z"
}

Payment Batch Approval (v1.0.0)

The customer who approved a payment batch, and when it was approved.

Properties

NameDescription
id string: resourceId (required)
The unique id of the customer.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
name string (required)
The customer's full name.
minLength: 2
maxLength: 48
identification string
Descriptive identifying text about the approver, such as a (masked) email address.
maxLength: 64
approvedAt string(date-time): readOnlyTimestamp (required)
The date-time when the approver last approved this payment batch.
read-only
minLength: 20
maxLength: 30

paymentBatchApprovalRemovalRequest

{}

Payment Batch Approval Removal Request (v1.1.0)

Request data accompanying the action to remove approvals.

Properties

NameDescription
reason string
The optional reason the customer is removing approvals for this batch.
maxLength: 80

paymentBatchApprovalRequest

{}

Payment Batch Approval Request (v1.0.0)

Request data accompanying the action to approve a payment batch.

Properties

paymentBatchApprover

{
  "id": "327d8bea-2553",
  "name": "Tom Allison",
  "identification": "to...58@wellsroofing.com"
}

Payment Batch Approver (v1.0.0)

A reference to a customer that is entitled to approve the containing payment batch.

Properties

NameDescription
id string: resourceId (required)
The unique id of the customer.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
name string (required)
The customer's full name.
minLength: 2
maxLength: 48
identification string
Descriptive identifying text about the approver, such as a (masked) email address.
maxLength: 64

paymentBatchApprovers

{
  "items": [
    {
      "name": "Tom Allison",
      "id": "327d8bea-2553",
      "identification": "to...58@wellsroofing.com"
    },
    {
      "name": "Silvia Wilkenson",
      "id": "06cf8996-d093",
      "identification": "si...42@wellsroofing.com"
    }
  ]
}

Payment Batch Approvers (v1.0.0)

A list of customers assigned to approve a payment batch.

Properties

NameDescription
items array: [paymentBatchApprover] (required)
The list of eligible approvers.
minItems: 1

paymentBatchCompany

{
  "id": "string",
  "type": "taxId"
}

Payment Batch Company (v1.0.0)

Identification of the company associated with this payment batch.

Properties

NameDescription
id string (required)
The company identifier
maxLength: 32
type string: paymentBatchCompanyIdType (required)
The type of this company identification number
enum values: taxId, dunsNumber, userDefined, companyId

paymentBatchCompanyIdType

"taxId"

Payment Batch Company Id Type (v1.0.0)

An enumeration of allowed company ID types.

paymentBatchCompanyIdType strings may have one of the following enumerated values:

ValueDescription
taxIdTax Id: Government issued TAX identification ID
dunsNumberDUNS Number: Dunn & Bradstreet company identification number
userDefinedUser Defined ID
companyIdCompany ID

Type: string
enum values: taxId, dunsNumber, userDefined, companyId

paymentBatchCopyRequest

{}

Payment Batch Copy Request (v1.0.0)

Request data accompanying the action to copy a payment batch.

Properties

NameDescription
type string: paymentBatchCopyType (required)

The type of the payment batch copy.

paymentBatchCopyType strings may have one of the following enumerated values:

ValueDescription
prenotePrenote Payment Batch: A prenote payment batch to validate the ACH routing number and account number
copyCopy Payment Batch: A copy of an existing payment batch

enum values: prenote, copy

paymentBatchCopyType

"prenote"

Payment Batch Copy Type (v1.0.0)

The type of the payment batch copy.

paymentBatchCopyType strings may have one of the following enumerated values:

ValueDescription
prenotePrenote Payment Batch: A prenote payment batch to validate the ACH routing number and account number
copyCopy Payment Batch: A copy of an existing payment batch

Type: string
enum values: prenote, copy

paymentBatchDirection

"none"

Batch Payment Direction (v1.0.0)

Indicates the direction of money flow for a payment batch.

paymentBatchDirection strings may have one of the following enumerated values:

ValueDescription
noneNone: No payment instructions to determine direction
creditcredit: Payments are credit in the external accounts, debit to the settlement account
debitdebit: Payments are debits in the external accounts, credit to the settlement account
bothboth: Payment instructions include both debits and credits

Type: string
enum values: none, credit, debit, both

paymentBatchItem

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "state": "pendingApprovals",
  "toSummary": 12,
  "fromSummary": "Payroll Checking *7890",
  "ach": {
    "secCode": "ppd",
    "companyName": "Well's Roofing",
    "imported": false,
    "confidentialCustomers": [
      {
        "id": "64446f8d-780f",
        "name": "Philip F. Duciary"
      },
      {
        "id": "58853981-24bb",
        "name": "Alice A. Tuary"
      }
    ],
    "approvalDueAt": "2022-06-09T20:30:00.000Z",
    "sameDayApprovalDue": [
      "2022-06-09T15:00:00.000Z",
      "2022-06-09T18:00:00.000Z",
      "2022-06-09T20:30:00.000Z"
    ]
  },
  "trackingNumber": "15474162",
  "creditTotal": "2640.60",
  "debitTotal": "0.00",
  "creditCount": 12,
  "debitCount": 30,
  "settlementAccount": {
    "label": "Payroll Checking *7890",
    "maskedNumber": "*7890",
    "id": "bf23bc970-91e8"
  },
  "schedule": {
    "scheduleOn": "2022-05-01",
    "effectiveOn": "2022-04-30"
  },
  "allows": {
    "approve": false,
    "edit": true,
    "submit": true,
    "delete": false,
    "removeApprovals": false,
    "reject": false,
    "reverse": false,
    "copy": true
  }
}

Payment Batch Item (v1.10.0)

Summary representation of a payment batch resource in payment batches collections.

Properties

NameDescription
name string
The user-assigned name of this payment batch.
maxLength: 10
description string
The user-assigned detailed description of this payment batch.
maxLength: 100
settlementAccount object: paymentSettlementAccountReference
The account where the payment funds are drawn or credited.
settlementType string: paymentBatchSettlementType

How the payment processing is applied to the settlement account.

paymentBatchSettlementType strings may have one of the following enumerated values:

ValueDescription
summarySummary: All the payments in the batch are combined into one transaction against the account
detailedDetailed: Each payments in the batch is recorded as individual transactions against the account

enum values: summary, detailed
company object: paymentBatchCompany
Identification of the company making this payment batch or draft.
schedule object: paymentBatchSchedule
The date when the payment should be processed, and any recurrence.
id string: readOnlyResourceId (required)
The unique identifier for this payment batch resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
fromSummary string
A short summary string describing where the payment batch originates, such as a description of the settlement account for credit payments, or a description of the draft account (if only one) or number of payee for debit payments.
read-only
maxLength: 80
toSummary string
A short summary string describing where the funds are credited. such as a description of the settlement account for debit payments, or a description of the payee (if only one) or number of payees for debit payments.
read-only
maxLength: 80
type string: paymentBatchType (required)
Defines the type of this payment batch.
enum values: ach, wireTransfer
state string: paymentBatchState (required)
The state of this payment batch.
read-only
enum values: pending, pendingApproval, rejected, scheduled, processing, processed, reversalPending, partiallyReversed, reversed, canceled
stateReason string
The reason given when someone rejected the batch, reversed the batch, or removed approvals. This string is only present if a reason was given and the state has not changed since the reason was given.
read-only
maxLength: 80
customerId string: readOnlyResourceId
The ID of the banking customer. This is a business customer for business payment batches. The customer ID is inferred from the settlement account.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ach object: achPaymentBatch
ACH-specific details of the payment batch. This object is present if and only if the batch's type is ach.
read-only
wireTransfer object: wireTransferPaymentBatch
Wire-specific details of the payment batch. This object is present if and only if the batch's type is wireTransfer.
direction string: paymentBatchDirection (required)
The direction in which funds flow for this payment batch.
read-only
enum values: none, credit, debit, both
creditTotal string: creditOrDebitValue (required)
The total of all the payment credit amounts in this batch's payment instructions, expressed as a decimal value. These amounts are credits to the remote accounts and a debit to the settlement account. The total omits instructions where hold is true.
read-only
pattern: ^(-|\+)?(0|[1-9][0-9]*)\.[0-9][0-9]$
debitTotal string: creditOrDebitValue (required)
The total of all the payment debit amounts in this batch's payment instructions, expressed as a decimal value. These amounts are debits to the remote accounts and a credit to the settlement account. The total omits instructions where hold is true.
read-only
pattern: ^(-|\+)?(0|[1-9][0-9]*)\.[0-9][0-9]$
creditCount integer (required)
The number of all the credit instructions in this payment batch. The count omits instructions where hold is true.
read-only
debitCount integer (required)
The number of all the debit instructions in this payment batch. The count omits instructions where hold is true.
read-only
allows object: paymentBatchAllows (required)
Indicates what payment batch actions are allowed for the current customer, given the user's entitlements and the state of the ACH batch.
information string
A text string with additional information about the status of the batch.
read-only
maxLength: 100
trackingNumber string (required)
A unique tracking number for this batch. Unlike the id, this numeric value is visible to the customer, and can be used to lookup a batch by this ID.
read-only
minLength: 6
maxLength: 9
pattern: ^[0-9]+$
copyOf object
If this batch was copied from another, this object describes that source payment batch. This field is only be present when the payment batch was created via the copy operation.
read-only
» id string: readOnlyResourceId (required)
The unique identifier for the origin payment batch resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
» trackingNumber string (required)
The unique tracking number for the batch this was copied from.
minLength: 6
maxLength: 9
pattern: ^[0-9]+$
» type string: paymentBatchCopyType (required)

The type of the payment batch copy.

paymentBatchCopyType strings may have one of the following enumerated values:

ValueDescription
prenotePrenote Payment Batch: A prenote payment batch to validate the ACH routing number and account number
copyCopy Payment Batch: A copy of an existing payment batch

enum values: prenote, copy

paymentBatchPatch

{
  "company": {
    "id": "123-56-7890",
    "type": "taxId"
  },
  "name": "Payroll 03",
  "description": "2022-03 Employee Payroll",
  "ach": {
    "sameDay": false,
    "discretionaryData": "Payroll adjust 22-05"
  },
  "settlementAccount": {
    "id": "69464d06366ac48f2ef6",
    "maskedNumber": "*7890",
    "label": "Payroll Checking *7890"
  },
  "settlementType": "detailed",
  "schedule": {
    "scheduledOn": "2022-05-01",
    "frequency": "monthlyFirstDay",
    "recurrenceType": "fixed"
  }
}

Payment Batch Patch Request (v1.4.0)

Representation used to patch an existing ACH payment batch using the JSON Merge Patch format and processing rules.

Properties

NameDescription
name string
The user-assigned name of this payment batch.
maxLength: 10
description string
The user-assigned detailed description of this payment batch.
maxLength: 100
settlementAccount object: paymentSettlementAccountReference
The account where the payment funds are drawn or credited.
settlementType string: paymentBatchSettlementType

How the payment processing is applied to the settlement account.

paymentBatchSettlementType strings may have one of the following enumerated values:

ValueDescription
summarySummary: All the payments in the batch are combined into one transaction against the account
detailedDetailed: Each payments in the batch is recorded as individual transactions against the account

enum values: summary, detailed
company object: paymentBatchCompany
Identification of the company making this payment batch or draft.
schedule object: paymentBatchSchedule
The target date when the payment is due, and any recurrence.
ach object: achPaymentBatchPatch
ACH-specific details for patching the payment batch. This object is only used if type is ach.
wireTransfer object: wireTransferPaymentBatchPatch
Wire-specific details for patching the payment batch. This object is only used if type is wireTransfer.

paymentBatchRejectionRequest

{}

Payment Batch Rejection Request (v1.0.0)

Request data accompanying the action to reject a payment batch.

Properties

NameDescription
reason string (required)
The optional reason the customer is removing approvals for this batch.
maxLength: 80

paymentBatchReversalRequest

{}

Payment Batch Reversal Request (v1.1.0)

Request data accompanying the action to reverse a payment batch that has started processing.

Properties

NameDescription
reason string
The optional reason the customer is reversing this batch.
maxLength: 80

paymentBatchSchedule

{
  "recurrenceType": "fixed",
  "scheduledOn": "2019-08-24",
  "frequency": "once",
  "endsOn": "2019-08-24",
  "effectiveOn": "2019-08-24"
}

Payment Batch Schedule (v1.2.0)

The scheduled date when the payment should be completed, the recurrence, if any, and other derived dates based on the scheduled date.

Properties

NameDescription
recurrenceType string: paymentRecurrenceType

Describes whether the payment instruction amounts in the batch vary or are fixed when the payment recurs. This is ignored if the payment frequency is once.

paymentRecurrenceType strings may have one of the following enumerated values:

ValueDescription
fixedFixed: The payment amounts are the same each time a payment recurs
variablevariable: The payment amounts vary and must be entered/verified each time a payment recurs

enum values: fixed, variable
scheduledOn string(date)
The payment's target completion date, in YYYY-MM-DD RFC 3339 date format. For recurring batches, this date get recalculated after each recurrence is processed.
frequency string: paymentFrequency

For recurring payments and drafts, the interval at which the money movement recurs.

paymentFrequency strings may have one of the following enumerated values:

ValueDescription
onceonce: Payment does not repeat
dailydaily: Repeat daily on business days
weeklyweekly: Repeat weekly
biweeklybiweekly: Repeat every two weekly (26 times a year)
semimonthlysemimonthly: Repeat twice a month (24 times a year)
monthlymonthly: Repeat monthly
monthlyFirstDaymonthlyFirstDay: Repeat on the first business day of the month
monthLastDaymonthLastDay: Repeat on the last business day of the month
bimonthlybimonthly: Repeat every other month
quarterlyquarterly: Repeat quarterly (four times a year)
semiyearlysemiyearly: Repeat every six months (twice a year)
yearlyyearly: Repeat once every year

enum values: once, daily, weekly, biweekly, semimonthly, monthly, monthlyFirstDay, monthLastDay, bimonthly, quarterly, semiyearly, yearly
endsOn string(date)
The optional date when the recurring batch schedule ends, in YYYY-MM-DD RFC 3339 date format. Subsequent recurring payments may be scheduled up to and including this date, but not after. This property is omitted if frequency is once.
effectiveOn string(date)
The target date when the batch payment or draft should be processed, in YYYY-MM-DD RFC 3339 date format. This is derived from the scheduledOn date. For recurring batches, this date get recalculated after each recurrence is processed.
read-only

paymentBatchSettlementType

"summary"

Settlement Type (v1.0.0)

How the payment processing is applied to the settlement account.

paymentBatchSettlementType strings may have one of the following enumerated values:

ValueDescription
summarySummary: All the payments in the batch are combined into one transaction against the account
detailedDetailed: Each payments in the batch is recorded as individual transactions against the account

Type: string
enum values: summary, detailed

paymentBatchState

"pending"

Payment Batch State (v1.0.0)

Defines the state of this payment batch.

paymentBatchState strings may have one of the following enumerated values:

ValueDescription
pendingPending: A batch that has incomplete or erroneous data or has not yet be submitted for approval
pendingApprovalPending Approval: At least one approval is necessary before the payment batch may be scheduled
rejectedRejected: An approver rejected a payment batch
scheduledScheduled: A payment batch that is scheduled to be processed
processingProcessing: A payment patch that has begun payment processes
processedProcessed: A payment batch that has completed its payment processing
reversalPendingReversal Pending: A customer has requested reversal which has not yet started
partiallyReversedPartially Reversed: Some of the payment instructions in a payment batch have been reversed
reversedReversed: The entire batch has been fully reversed
canceledCanceled: A reversed batch has been canceled before an account has been debited

Type: string
enum values: pending, pendingApproval, rejected, scheduled, processing, processed, reversalPending, partiallyReversed, reversed, canceled

paymentBatchSubmitRequest

{}

Payment Batch Submit Request (v1.0.0)

Request data accompanying the action to submit a payment batch for approval and processing.

Properties

paymentBatchType

"ach"

Payment Batch Type (v1.1.0)

Defines the type of this payment batch.

Type: string
enum values: ach, wireTransfer

paymentBatches

{
  "items": [
    {
      "id": "0399abed-fd3d",
      "type": "ach",
      "name": "Payroll 03",
      "description": "2022-03 Employee Payroll",
      "state": "pendingApprovals",
      "toSummary": "47 payees",
      "fromSummary": "Payroll Checking *7890",
      "creditTotal": "2467.50",
      "debitTotal": "0.00",
      "creditCount": 12,
      "debitCount": 30,
      "trackingNumber": "15474162",
      "information": "You have missed the cutoff time. Please re-schedule.",
      "ach": {
        "secCode": "ppd",
        "imported": false,
        "direction": "credit",
        "companyName": "Well's Roofing",
        "confidentialCustomers": [
          {
            "id": "64446f8d-780f",
            "name": "Philip F. Duciary"
          },
          {
            "id": "58853981-24bb",
            "name": "Alice A. Tuary"
          }
        ],
        "approvalDueAt": "2022-06-09T20:30:00.000Z",
        "sameDayApprovalDue": [
          "2022-06-09T15:00:00.000Z",
          "2022-06-09T18:00:00.000Z",
          "2022-06-09T20:30:00.000Z"
        ]
      },
      "settlementType": "detailed",
      "settlementAccount": {
        "label": "Payroll Checking *7890",
        "maskedNumber": "*1008",
        "id": "bf23bc970-91e8"
      },
      "schedule": {
        "scheduleOn": "2022-05-01",
        "effectiveOn": "2022-04-30",
        "frequency": "monthly"
      },
      "allows": {
        "approve": false,
        "edit": true,
        "requestApproval": true,
        "delete": false,
        "removeApprovals": false,
        "reject": false,
        "reverse": false,
        "copy": true
      },
      "createdAt": "2022-04-28T07:48:20.375Z",
      "updatedAt": "2022-04-28T07:48:49.375Z"
    },
    {
      "id": "d62c0701-0d74",
      "type": "ach",
      "information": "other fields for batch d62c0701-0d74 omitted here for brevity"
    },
    {
      "id": "89382459-6e1c",
      "type": "ach",
      "information": "other fields for d62c0701-0d74 omitted here for brevity"
    }
  ]
}

Payment Batch Collection (v1.10.0)

Collection of payment batches. The items in the collection are ordered in the items array.

Properties

NameDescription
items array: [paymentBatchItem] (required)
An array containing the payment batch items.

paymentContact

{
  "id": "0399abed-fd3d",
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

Payment Contact (v1.0.1)

Representation of a payment contact resource. Payment contacts are people or companies that may be payed or drafted via ACH, wire transfers, or other payment methods.

Properties

NameDescription
name string (required)
The name of the payment contact. This can be used to represent a person or a business.
maxLength: 55
contactIdentification string
An identifier provided to differentiate contacts. For example, if you had multiple payment contacts for a payroll batch with the name Michael Scott, you could enter in their Employee ID in this field to know which employee should be the recipient of the payment.
maxLength: 55
address object: usAddress
The physical address of the payment contact.
phone array: [typedPhoneNumber]
A list of phone numbers for the payment contact. Each phone number lists a type to serve as a descriptor for the phone number.
email string(email)
The email address of the contact.
minLength: 4
maxLength: 120
type string: contactType (required)

The type descriptor of the contact to denote the relationship.

contactType strings may have one of the following enumerated values:

ValueDescription
individualIndividual: The contact for the payment is a non-employee of the payer
businessBusiness: The contact for the payment is a business entity rather than a person

enum values: individual, business
employee boolean
Indicates whether or not the contact is an employee or not.
id string: readOnlyResourceId (required)
The unique identifier for this payment contact resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ownerId string: readOnlyResourceId (required)
The customer identifier of the owner associated with the contact.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

paymentContactItem

{
  "id": "0399abed-fd3d",
  "name": "James Bond",
  "contactIdentification": "007",
  "address": {
    "address1": "1405 Tiburon Dr",
    "locality": "Wilmington",
    "region": "NC",
    "postalCode": "28403",
    "countryCode": "US"
  },
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ],
  "email": "james.bond@mi6.gov.uk",
  "type": "individual",
  "employee": true,
  "ownerId": "0399abed-fd3d"
}

Payment Contact Item (v1.0.1)

Summary representation of a payment contact resource in payment contacts collections. Payment contacts are people or companies that may be payed or drafted via ACH, wire transfers, or other payment methods.

Properties

NameDescription
name string (required)
The name of the payment contact. This can be used to represent a person or a business.
maxLength: 55
contactIdentification string
An identifier provided to differentiate contacts. For example, if you had multiple payment contacts for a payroll batch with the name Michael Scott, you could enter in their Employee ID in this field to know which employee should be the recipient of the payment.
maxLength: 55
address object: usAddress
The physical address of the payment contact.
phone array: [typedPhoneNumber]
A list of phone numbers for the payment contact. Each phone number lists a type to serve as a descriptor for the phone number.
email string(email)
The email address of the contact.
minLength: 4
maxLength: 120
type string: contactType (required)

The type descriptor of the contact to denote the relationship.

contactType strings may have one of the following enumerated values:

ValueDescription
individualIndividual: The contact for the payment is a non-employee of the payer
businessBusiness: The contact for the payment is a business entity rather than a person

enum values: individual, business
employee boolean
Indicates whether or not the contact is an employee or not.
id string: readOnlyResourceId (required)
The unique identifier for this payment contact resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ownerId string: readOnlyResourceId (required)
The customer identifier of the owner associated with the contact.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

paymentContactPatch

{
  "phone": [
    {
      "type": "business",
      "number": "+19105550007"
    }
  ]
}

Payment Contact Patch Request (v1.0.0)

Representation used to patch an existing payment contact using the JSON Merge Patch format and processing rules.

Properties

NameDescription
name string
The name of the payment contact. This can be used to represent a person or a business.
maxLength: 55
contactIdentification string
An identifier provided to differentiate contacts. For example, if you had multiple payment contacts for a payroll batch with the name Michael Scott, you could enter in their Employee ID in this field to know which employee should be the recipient of the payment.
maxLength: 55
address object: usAddress
The physical address of the payment contact.
phone array: [typedPhoneNumber]
A list of phone numbers for the payment contact. Each phone number lists a type to serve as a descriptor for the phone number.
email string(email)
The email address of the contact.
minLength: 4
maxLength: 120
type string: contactType

The type descriptor of the contact to denote the relationship.

contactType strings may have one of the following enumerated values:

ValueDescription
individualIndividual: The contact for the payment is a non-employee of the payer
businessBusiness: The contact for the payment is a business entity rather than a person

enum values: individual, business
employee boolean
Indicates whether or not the contact is an employee or not.

paymentContacts

{
  "start": "d1b48af913464aa49fcb07065dcc0616",
  "limit": 10,
  "nextPage_url": "https://production.api.apiture.com/payments/paymentContacts?start=6117a4dcefb841cab7316cef1ac8b58c&limit=10",
  "items": [
    {
      "id": "0399abed-fd3d",
      "name": "James Bond",
      "contactIdentification": "007",
      "address": {
        "address1": "1405 Tiburon Dr",
        "locality": "Wilmington",
        "region": "NC",
        "postalCode": "28403",
        "countryCode": "US"
      },
      "phone": [
        {
          "type": "business",
          "number": "+19105550007"
        }
      ],
      "email": "james.bond@mi6.gov.uk",
      "type": "individual",
      "employee": true,
      "ownerId": "0399abed-fd3d"
    },
    {
      "id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
      "name": "Dr. Stephen Strange",
      "address": {
        "address1": "177A Bleecker Street",
        "locality": "New York",
        "region": "NY",
        "postalCode": "10012",
        "countryCode": "US"
      },
      "phone": [
        {
          "type": "cell",
          "number": "+19105550007"
        }
      ],
      "email": "stephen.strange@marvel.com",
      "type": "individual",
      "employee": false,
      "ownerId": "0399abed-fd3d"
    }
  ]
}

Payment Contact Collection (v1.0.1)

Collection of payment contacts. The items in the collection are ordered in the items array. The response object may contain the nextPage_url pagination link.

Properties

NameDescription
limit integer(int32) (required)
The number of items requested for this page response. The length of the items array may be less that limit.
Default: 100
minimum: 0
nextPage_url string(uri)
The URL of the next page of resources. If this URL is omitted, there are no more resources in the collection.
read-only
maxLength: 8000
start string
The opaque cursor that specifies the starting location of this page of items.
maxLength: 256
items array: [paymentContactItem] (required)
An array containing a page of payment contact items.

paymentFrequency

"once"

Payment Frequency (v1.0.0)

For recurring payments and drafts, the interval at which the money movement recurs.

paymentFrequency strings may have one of the following enumerated values:

ValueDescription
onceonce: Payment does not repeat
dailydaily: Repeat daily on business days
weeklyweekly: Repeat weekly
biweeklybiweekly: Repeat every two weekly (26 times a year)
semimonthlysemimonthly: Repeat twice a month (24 times a year)
monthlymonthly: Repeat monthly
monthlyFirstDaymonthlyFirstDay: Repeat on the first business day of the month
monthLastDaymonthLastDay: Repeat on the last business day of the month
bimonthlybimonthly: Repeat every other month
quarterlyquarterly: Repeat quarterly (four times a year)
semiyearlysemiyearly: Repeat every six months (twice a year)
yearlyyearly: Repeat once every year

Type: string
enum values: once, daily, weekly, biweekly, semimonthly, monthly, monthlyFirstDay, monthLastDay, bimonthly, quarterly, semiyearly, yearly

paymentInstruction

{
  "id": "0399abed-fd3d",
  "traceNumber": 8706658,
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": false,
  "direction": "credit",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "prenote": false
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}

Payment Instruction (v1.2.0)

Representation of a payment instruction resource.

Properties

NameDescription
name string (required)
The name of the party being paid or drafted.
minLength: 3
maxLength: 22
identifier string
A optional string, such as an employee ID, which distinguishes this payment contact from others with the same name.
maxLength: 15
amount string: monetaryValue (required)
The amount of money to send or draft from this payment contact.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
hold boolean (required)
If true, do not process this instruction.
contactId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the contact's id.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
methodId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the id of that contact's payment method.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
id string: resourceId (required)
The unique identifier for this payment instruction resource. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
traceNumber integer (required)
A unique non-negative integer for tracing this payment through the payment system. This is an immutable opaque string of digits, assigned by the system.
read-only
minimum: 1
maximum: 999999999
direction string: paymentInstructionDirection (required)
Indicates if this item is a debit or credit, relative to this payment contact. This field is immutable.
read-only
enum values: credit, debit
ach object: achPaymentInstruction
The payment instruction details for an ACH payment. This field is used only if the payment batch type is ach.
wireTransfer object: wireTransferPaymentInstruction
Wire-specific details of the payment instruction. This object is present if and only if the payment batch's type is wireTransfer.
problems array: [paymentProblem]
A list of problems that prevent approving the payment batch.

paymentInstructionDirection

"credit"

Payment Instruction Direction (v1.0.0)

Indicates the direction of money flow for a payment instruction.

paymentInstructionDirection strings may have one of the following enumerated values:

ValueDescription
creditcredit: Payment is a credit in the external account, debit to the settlement account
debitdebit: Payment is a debit in the external account, credit to the settlement account

Type: string
enum values: credit, debit

paymentInstructionItem

{
  "id": "0399abed-fd3d",
  "traceNumber": 8706658,
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": false,
  "direction": "credit",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking"
  },
  "methodId": "ach0001",
  "contactId": "3e8375b1-8c34"
}

Payment Instruction Item (v1.1.1)

Summary representation of a payment instruction resource in payment instructions collections.

Properties

NameDescription
name string (required)
The name of the party being paid or drafted.
minLength: 3
maxLength: 22
identifier string
A optional string, such as an employee ID, which distinguishes this payment contact from others with the same name.
maxLength: 15
amount string: monetaryValue (required)
The amount of money to send or draft from this payment contact.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
hold boolean (required)
If true, do not process this instruction.
contactId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the contact's id.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
methodId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the id of that contact's payment method.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
id string: resourceId (required)
The unique identifier for this payment instruction resource. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
traceNumber integer (required)
A unique non-negative integer for tracing this payment through the payment system. This is an immutable opaque string of digits, assigned by the system.
read-only
minimum: 1
maximum: 999999999
direction string: paymentInstructionDirection (required)
Indicates if this item is a debit or credit, relative to this payment contact. This field is immutable.
read-only
enum values: credit, debit
ach object: achPaymentInstruction
The payment instruction details for an ACH payment. This field is used only if the payment batch type is ach.

paymentInstructionPatch

{
  "name": "Pauline Stonemason",
  "identifier": "C-00523",
  "amount": "1287.65",
  "hold": true,
  "ach": {
    "accountNumber": "123456789"
  }
}

Payment Instruction Patch (v1.1.1)

Representation of a patch to a payment instruction resource.

Properties

NameDescription
name string
The name of the party being paid or drafted.
minLength: 3
maxLength: 22
identifier string
A optional string, such as an employee ID, which distinguishes this payment contact from others with the same name.
maxLength: 15
amount string: monetaryValue
The amount of money to send or draft from this payment contact.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
hold boolean
If true, do not process this instruction.
contactId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the contact's id.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
methodId string: resourceId
If this payment instruction is derived from a contact in the list of payment contacts, this is the id of that contact's payment method.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ach object: achPaymentInstructionPatch
The payment instruction details for an ACH payment. This field is used only if the payment batch type is ach.

paymentInstructions

{
  "items": [
    {
      "id": "0399abed-fd3d",
      "traceNumber": 8706658,
      "name": "Pauline Stonemason",
      "identifier": "C-00523",
      "amount": "1287.65",
      "hold": false,
      "direction": "credit",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "123456789",
        "prenote": false
      },
      "methodId": "ach0001",
      "contactId": "3e8375b1-8c34"
    },
    {
      "id": "0399abed-fd3d",
      "traceNumber": 8764783,
      "name": "Pauline Stonemason",
      "identifier": "C-012295",
      "amount": "2090.35",
      "hold": false,
      "direction": "credit",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "234567890",
        "prenote": false
      },
      "methodId": "ach0002",
      "contactId": "3a32a4a8-5502"
    }
  ]
}

Payment Instruction Collection (v1.1.1)

Collection of payment instructions. The items in the collection are ordered in the items array.

Properties

NameDescription
items array: [paymentInstructionItem]
An array containing a page of payment instruction items.

paymentMethod

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

Payment Method (v1.2.0)

Representation of a payment method resource.

Properties

NameDescription
type string: paymentBatchType (required)
The type of the payment method. This determines which sub-resource fields must be present. For example, if type is ach, the ach field is required and contains the fields required for an ACH payment.
enum values: ach, wireTransfer
id string: readOnlyResourceId (required)
The unique identifier for this payment method resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ach object: achPaymentMethod
Enumerates the payment method details for an ACH payment. This object is required when the type is ach.
wireTransfer object: wireTransferPaymentMethod
Enumerates the payment method details for a wire transfer payment. This object is required when the type is wireTransfer.

paymentMethodItem

{
  "id": "0399abed-fd3d",
  "type": "ach",
  "ach": {
    "routingNumber": "123123123",
    "accountNumber": "123456789",
    "type": "checking",
    "primary": true
  }
}

Payment Method Item (v1.2.0)

Summary representation of a payment method resource in payment method collections. To fetch the full representation of this payment method, use the getPaymentMethod operation, passing this item's id field as the paymentMethodId path parameter.

Properties

NameDescription
type string: paymentBatchType (required)
The type of the payment method. This determines which sub-resource fields must be present. For example, if type is ach, the ach field is required and contains the fields required for an ACH payment.
enum values: ach, wireTransfer
id string: readOnlyResourceId (required)
The unique identifier for this payment method resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
ach object: achPaymentMethod
Enumerates the payment method details for an ACH payment. This object is required when the type is ach.
wireTransfer object: wireTransferPaymentMethod
Enumerates the payment method details for a wire transfer payment. This object is required when the type is wireTransfer.

paymentMethodPatch

{
  "type": "ach",
  "ach": {
    "accountNumber": "123456789"
  }
}

Payment Method Patch (v1.2.0)

Representation used to patch an existing payment method using the JSON Merge Patch format and processing rules.

Properties

NameDescription
type string: paymentBatchType
The type of the payment method. This determines which sub-resource fields must be present. For example, if type is ach, the ach field is required and contains the fields required for an ACH payment.
enum values: ach, wireTransfer
ach object: achPaymentMethodPatch
Enumerates the payment method details for an ACH payment. This object is required when the type is ach.
wireTransfer object: wireTransferPaymentMethodPatch
Enumerates the payment method details for a wire transfer payment. This object is required when the type is wireTransfer.

paymentMethods

{
  "items": [
    {
      "id": "0399abed-fd3d",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "123456789",
        "type": "checking",
        "primary": true
      }
    },
    {
      "id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
      "type": "ach",
      "ach": {
        "routingNumber": "123123123",
        "accountNumber": "123457780",
        "type": "checking",
        "primary": false
      }
    }
  ]
}

Payment Method Collection (v1.2.0)

Collection of payment methods. The items in the collection are ordered in the items array.

Properties

NameDescription
items array: [paymentMethodItem] (required)
An array containing the contact's payment method items.

paymentProblem

{
  "type": "https://production.api.apiture.com/errors/accountNotFound/v1.0.0",
  "title": "Past cutoff time",
  "detail": "The current time is past the financial institution's cutoff time.",
  "attributes": {
    "referencedAt": "2022-07-13T020:52:19.375Z",
    "cutoffAt": "2022-07-13T10:00:00.000Z"
  }
}

Payment Problem (v1.0.0)

Describes a problem with a payment batch or payment instruction that prevents submitting or approving the batch. Clients should get the most recent revision of the payment batch and its instructions to check for problems.

Properties

NameDescription
type string(uri-reference) (required)
A URI reference (RFC3986) that identifies the problem type. This is the URL of human-readable HTML documentation for the problem type.
title string (required)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
detail string (required)
A human-readable explanation specific to this occurrence of the problem.
attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

paymentRecurrenceType

"fixed"

Payment Recurrence Type (v1.0.0)

Describes whether the payment instruction amounts in the batch vary or are fixed when the payment recurs. This is ignored if the payment frequency is once.

paymentRecurrenceType strings may have one of the following enumerated values:

ValueDescription
fixedFixed: The payment amounts are the same each time a payment recurs
variablevariable: The payment amounts vary and must be entered/verified each time a payment recurs

Type: string
enum values: fixed, variable

paymentSettlementAccountReference

{
  "label": "Payroll Checking *1008",
  "maskedNumber": "*1008",
  "id": "bf23bc970b78d27691e"
}

Payment Settlement Account Reference (v1.2.0)

Descriptive fields that identify a payment's internal settlement account.

Properties

NameDescription
id string: readOnlyResourceId (required)
The account's unique, opaque resource ID.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
label string (required)
A text label which describes this account. This is derived from the account.label.
read-only
maxLength: 80
maskedNumber string: maskedAccountNumber (required)
A masked account number: an asterisk * followed by up to four digits.
minLength: 2
maxLength: 5
pattern: ^\*[- _a-zA-Z0-9.]{1,4}$

problemResponse

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchAccount/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists for the given account reference",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Problem Response (v0.3.0)

API problem or error response, as per RFC 7807 application/problem+json.

Properties

NameDescription
type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
title string
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
detail string
A human-readable explanation specific to this occurrence of the problem.
instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
id string: readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$
occurredAt string(date-time): readOnlyTimestamp
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
read-only
minLength: 20
maxLength: 30
problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

rePresentedCheck

{
  "checkNumber": 43318
}

Re-Presented Check (v1.0.0)

A re-presented check (RCK) ACH payment instruction. An RCK instruction represents a check that was returned for non-sufficient or uncollected funds and is being presented again for payment.

Properties

NameDescription
checkNumber integer (required)
The check number that was presented again.
minimum: 1
maximum: 999999999999999

rePresentedCheckPatch

{
  "checkNumber": 43318
}

Re-Presented Check Patch (v1.0.0)

A patch request to an RCK ACH payment instruction.

Properties

NameDescription
checkNumber integer (required)
The check number that was presented again.
minimum: 1
maximum: 999999999999999

readOnlyResourceId

"string"

Read-only Resource Identifier (v1.0.0)

The unique, opaque system-assigned identifier for a resource. This case-sensitive ID is also used in URLs as path parameters or in other properties or parameters that reference a resource by ID rather than URL. Resource IDs are immutable.

Type: string
read-only
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

readOnlyTimestamp

"2021-10-30T19:06:04.250Z"

Read-Only Timestamp (v1.0.0)

A readonly or derived timestamp (an instant in time) formatted in RFC 3339 date-time UTC format: YYYY-MM-DDThh:mm:ss.sssZ.
The schema readOnlyTimestamp was added on version 0.4.0 of the API.

Type: string(date-time)
read-only
minLength: 20
maxLength: 30

resourceId

"string"

Resource Identifier (v1.0.0)

The unique, opaque system identifier for a resource. This case-sensitive ID is also used as path parameters in URLs or in other properties or parameters that reference a resource by ID rather than URL.

Type: string
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]+$

simplePhoneNumber

"+19105550155"

Simple Phone Number (v1.0.0)

The phone number as a string. The service strips all spaces, hyphens, periods and parentheses from input. The default country code prefix is +1. Phone numbers are returned in responses in E.164 format with a leading +, country code (up to 3 digits) and subscriber number for a total of up to 15 digits. See Phone Number Representations for more information.
The schema simplePhoneNumber was added on version 0.5.0 of the API.

Type: string(phone-number)
minLength: 8
maxLength: 20

typedPhoneNumber

{
  "type": "business",
  "number": "+19105550155"
}

Typed Phone Number (v1.0.0)

A combination of a phone number and a method of description. This should be used when a resource is permitted to include more than one phone number.
The schema typedPhoneNumber was added on version 0.5.0 of the API.

Properties

NameDescription
type string (required)
A typed method to differentiate the phone number.
number string(phone-number): simplePhoneNumber (required)
The phone number as a string. The service strips all spaces, hyphens, periods and parentheses from input. The default country code prefix is +1. Phone numbers are returned in responses in E.164 format with a leading +, country code (up to 3 digits) and subscriber number for a total of up to 15 digits. See Phone Number Representations for more information.
The schema simplePhoneNumber was added on version 0.5.0 of the API.
minLength: 8
maxLength: 20

usAddress

{
  "address1": "1805 Tiburon Dr.",
  "address2": "Building 14, Suite 1500",
  "locality": "Wilmington",
  "regionCode": "NC",
  "countryCode": "US",
  "postalCode": "28412"
}

Address (United States) (v1.1.0)

A postal address within the United States or US territories.
The schema usAddress was added on version 0.5.0 of the API.

Properties

NameDescription
address1 string (required)
The first line of the postal address. In the US, this typically includes the building number and street name.
maxLength: 35
address2 string
The second line of the street address. This should only be used if it has a value. Typical values include building numbers, suite numbers, and other identifying information beyond the first line of the postal address.
maxLength: 35
locality string (required)
The city/town/municipality of the address.
maxLength: 20
countryCode string (required)
The ISO-3611 alpha-2 value for the country associated with the postal address.
minLength: 2
maxLength: 2
regionCode string (required)
The state, district, or outlying area of the postal address.
minLength: 2
maxLength: 2
postalCode string (required)
A group of five or nine numbers that are added to a postal address to assist the sorting of mail.
minLength: 5
maxLength: 10
pattern: ^\d{5}(?:[- ]?\d{4})?$

vendorCreditAddendum

{
  "description": "Addenda",
  "adjustmentDescription": "Dup",
  "adjustmentType": "extensionError",
  "discountAmount": "22.00",
  "invoiceAmount": "20.00",
  "invoicedOn": "2022-04-22",
  "invoiceNumber": "123123",
  "referenceIdType": "billOfLading",
  "referenceId": "123123",
  "remittanceAmount": "22.00",
  "adjustmentAmount": "32.00"
}

ACH Payment Vendor Credit Addendum (v1.1.0)

Details of a Vendor Credit Corporate Trade Exchange (CTX) ACH batch payment.

Properties

NameDescription
description string (required)
The description of this payment addendum.
maxLength: 80
adjustmentDescription string (required)
The description of the adjustment.
maxLength: 8
adjustmentAmount string: monetaryValue (required)
The value of the adjustment as an exact decimal amount.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
adjustmentType string: vendorCreditAdjustmentType (required)

The type of a vendor credit adjustment.

vendorCreditAdjustmentType strings may have one of the following enumerated values:

ValueDescription
noneNone
pricingErrorPricing Error
extensionErrorExtension Error
damagedDamaged
qualityConcernQuality Concern
qualityContestedQuality Contested
wrongProductWrong Product
returnsDueToDamageReturns-Damage
returnsDueToQualityReturns-Quality
itemNotReceivedItem Not Received
creditAdAgreedCredit as Agreed
creditMemoCredit Memo

enum values: none, pricingError, extensionError, damaged, qualityConcern, qualityContested, wrongProduct, returnsDueToDamage, returnsDueToQuality, itemNotReceived, creditAdAgreed, creditMemo
discountAmount string: monetaryValue (required)
The monetary value of the discount, if any.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
invoiceAmount string: monetaryValue (required)
The monetary value of the invoice, if any.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
invoicedOn string(date) (required)
The date the original purchase was invoiced.
invoiceNumber string (required)
The invoice number
maxLength: 6
referenceIdType string: vendorCreditReferenceIdType (required)

A list of codes which describe the type of the referenceId.

vendorCreditReferenceIdType strings may have one of the following enumerated values:

ValueDescription
noneNone
billOfLadingBill of Lading
purchaseOrderPurchase Order
accountReceivableItemAccts Recv Item
voucherVoucher

enum values: none, billOfLading, purchaseOrder, accountReceivableItem, voucher
referenceId string (required)
The vendor's reference ID. This ID number is of type described by referenceIdType.
maxLength: 6
remittanceAmount string: monetaryValue (required)
The amount of the adjustment/remittance.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$

vendorCreditAddendumPatch

{
  "description": "Addenda",
  "adjustmentDescription": "Dup",
  "adjustmentType": "extensionError",
  "discountAmount": "22.00",
  "invoiceAmount": "20.00",
  "invoicedOn": "2022-04-22",
  "invoiceNumber": "123123",
  "referenceIdType": "billOfLading",
  "referenceId": "123123",
  "remittanceAmount": "22.00"
}

ACH Payment Vendor Credit Addendum Patch (v1.1.0)

Patch request of a Vendor Credit ACH batch payment.

Properties

NameDescription
description string
The description of this payment addendum.
maxLength: 80
adjustmentDescription string
The description of the adjustment.
maxLength: 8
adjustmentAmount string: monetaryValue
The value of the adjustment as an exact decimal amount.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
adjustmentType string: vendorCreditAdjustmentType

The type of a vendor credit adjustment.

vendorCreditAdjustmentType strings may have one of the following enumerated values:

ValueDescription
noneNone
pricingErrorPricing Error
extensionErrorExtension Error
damagedDamaged
qualityConcernQuality Concern
qualityContestedQuality Contested
wrongProductWrong Product
returnsDueToDamageReturns-Damage
returnsDueToQualityReturns-Quality
itemNotReceivedItem Not Received
creditAdAgreedCredit as Agreed
creditMemoCredit Memo

enum values: none, pricingError, extensionError, damaged, qualityConcern, qualityContested, wrongProduct, returnsDueToDamage, returnsDueToQuality, itemNotReceived, creditAdAgreed, creditMemo
discountAmount string: monetaryValue
The monetary value of the discount, if any.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
invoiceAmount string: monetaryValue
The monetary value of the invoice, if any.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$
invoicedOn string(date)
The date the original purchase was invoiced.
invoiceNumber string
The invoice number
maxLength: 6
referenceIdType string: vendorCreditReferenceIdType

A list of codes which describe the type of the referenceId.

vendorCreditReferenceIdType strings may have one of the following enumerated values:

ValueDescription
noneNone
billOfLadingBill of Lading
purchaseOrderPurchase Order
accountReceivableItemAccts Recv Item
voucherVoucher

enum values: none, billOfLading, purchaseOrder, accountReceivableItem, voucher
referenceId string
The vendor's reference ID. This ID number is of type described by referenceIdType.
maxLength: 6
remittanceAmount string: monetaryValue
The amount of the adjustment/remittance.
pattern: ^(0|[1-9][0-9]*)\.[0-9][0-9]$

vendorCreditAdjustmentType

"none"

Vendor Credit Adjustment Type (v1.0.0)

The type of a vendor credit adjustment.

vendorCreditAdjustmentType strings may have one of the following enumerated values:

ValueDescription
noneNone
pricingErrorPricing Error
extensionErrorExtension Error
damagedDamaged
qualityConcernQuality Concern
qualityContestedQuality Contested
wrongProductWrong Product
returnsDueToDamageReturns-Damage
returnsDueToQualityReturns-Quality
itemNotReceivedItem Not Received
creditAdAgreedCredit as Agreed
creditMemoCredit Memo

Type: string
enum values: none, pricingError, extensionError, damaged, qualityConcern, qualityContested, wrongProduct, returnsDueToDamage, returnsDueToQuality, itemNotReceived, creditAdAgreed, creditMemo

vendorCreditReferenceIdType

"none"

Vendor Credit Reference Id Type (v1.0.0)

A list of codes which describe the type of the referenceId.

vendorCreditReferenceIdType strings may have one of the following enumerated values:

ValueDescription
noneNone
billOfLadingBill of Lading
purchaseOrderPurchase Order
accountReceivableItemAccts Recv Item
voucherVoucher

Type: string
enum values: none, billOfLading, purchaseOrder, accountReceivableItem, voucher

wireTransferBeneficiary

{
  "taxId": "112-22-3333",
  "address": {
    "address1": "1805 Tiburon Dr.",
    "address2": "Building 14, Suite 1500",
    "locality": "Wilmington",
    "regionCode": "NC",
    "countryCode": "US",
    "postalCode": "28412"
  },
  "phoneNumber": "+9105551234"
}

Wire Transfer Beneficiary (v1.0.0)

The individual or business entity which is the recipient of the wire transfer funds. Note: The beneficiary's name is in the payment instruction's name.

Properties

NameDescription
taxId string
The Tax ID of the wire transfer originator.
minLength: 2
maxLength: 11
address object: address
The beneficiary's postal mailing address.
phoneNumber string(phone-number): simplePhoneNumber
The beneficiary's phone number.
minLength: 8
maxLength: 20

wireTransferBeneficiaryInstitution

{
  "name": "First Bank of Andalasia",
  "address": {
    "address1": "239 West Princess Ave.",
    "locality": "Andalasia",
    "regionCode": "NC",
    "countryCode": "US",
    "postalCode": "28407"
  },
  "locator": "503000196",
  "locatorType": "abaRoutingNumber"
}

Wire Transfer Beneficiary Institution (v1.0.0)

Describes the beneficiary institution for a wire transfer.

Properties

NameDescription
name string (required)
The financial institution's name.
maxLength: 35
address object: address
The financial institution's postal mailing address.
locator string (required)
The American Bankers Association routing number, SWIFT Business Business Identifier Code (BIC) code, or IBAN account number of the institution. The form of this institution locator string is set with the locatorType property.
maxLength: 36
locatorType string: wireTransferLocatorType (required)
Indicates the type of the institution locator.
enum values: abaRoutingNumber, swiftBicCode, ibanAccountNumber

wireTransferInstitutionFields

{
  "name": "First Bank of Andalasia",
  "address": {
    "address1": "239 West Princess Ave.",
    "locality": "Andalasia",
    "regionCode": "NC",
    "countryCode": "US",
    "postalCode": "28407"
  }
}

Wire Transfer Institution Fields (v1.0.0)

Describes a financial institution used within a wire transfer. May be a domestic US institution or an international institution.

Properties

NameDescription
name string (required)
The financial institution's name.
maxLength: 35
address object: address
The financial institution's postal mailing address.

wireTransferIntermediaryInstitution

{
  "name": "First Bank of Andalasia",
  "address": {
    "address1": "239 West Princess Ave.",
    "locality": "Andalasia",
    "regionCode": "NC",
    "countryCode": "US",
    "postalCode": "28407"
  },
  "routingNumber": "503000196"
}

Wire Transfer Intermediary Institution (v1.0.0)

Describes the intermediary institution for a wire transfer.

Properties

NameDescription
name string (required)
The financial institution's name.
maxLength: 35
address object: address
The financial institution's postal mailing address.
routingNumber string: accountRoutingNumber (required)
The routing number of the intermediary financial institution.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$

wireTransferLocatorType

"abaRoutingNumber"

Wire Transfer Locator Type (v1.0.0)

Indicates the type of the institution locator.

wireTransferLocatorType strings may have one of the following enumerated values:

ValueDescription
abaRoutingNumberABA Routing Number: The [American Bankers Association routing number](https://www.aba.com/about-us/routing-number) of a financial institution
swiftBicCodeswiftBicCode: The [SWIFT Business Business Identifier Code (BIC) code](https://www.swift.com/standards/data-standards/bic-business-identifier-code) of a financial institution
ibanAccountNumberIBAN Account Number: [International Bank Account Number (IBAN)](https://www.ecbs.org/iban.htm) Account Number

Type: string
enum values: abaRoutingNumber, swiftBicCode, ibanAccountNumber

wireTransferOriginator

{
  "name": "Phil Duciary",
  "taxId": "112-22-3333",
  "address": {
    "address1": "1805 Tiburon Dr.",
    "address2": "Building 14, Suite 1500",
    "locality": "Wilmington",
    "regionCode": "NC",
    "countryCode": "US",
    "postalCode": "28412"
  },
  "phoneNumber": "+9105551234"
}

Wire Transfer Originator (v1.0.0)

Describes the originator of a wire transfer.

Properties

NameDescription
name string (required)
The name of the person who created the wire transfer.
maxLength: 35
taxId string
The Tax ID of the wire transfer originator.
minLength: 2
maxLength: 11
address object: address
The originator's postal mailing address.
phoneNumber string(phone-number): simplePhoneNumber
The phone number of the wire transfer originator.
minLength: 8
maxLength: 20

wireTransferOriginatorPatch

{
  "name": "Phil Duciary",
  "taxId": "112-22-3333",
  "address": {
    "address1": "1805 Tiburon Dr.",
    "address2": "Building 14, Suite 1500",
    "locality": "Wilmington",
    "regionCode": "NC",
    "countryCode": "US",
    "postalCode": "28412"
  },
  "phoneNumber": "+9105551234"
}

Wire Transfer Originator Patch (v1.0.0)

Fragment schema use to build other wire transfer originator schemas.

Properties

wireTransferPaymentBatch

{
  "originator": {
    "name": "Phil Duciary",
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "confidentialCustomers": [
    {
      "id": "f48291b6-14ce",
      "name": "Amanda Cummins"
    },
    {
      "id": "eaf488ab-fbf7",
      "name": "Stephen Walker"
    }
  ],
  "localClearingCode": "TBD",
  "scope": "domestic",
  "approvalDue": [
    "2022-06-09T15:00:00.000Z",
    "2022-06-09T18:00:00.000Z",
    "2022-06-09T20:30:00.000Z"
  ]
}

Wire Transfer Payment Batch (v1.1.0)

Properties of a wire transfer payment.

Properties

NameDescription
originator object: wireTransferOriginator
The person who created the wire transfer.
confidentialCustomers array: [confidentialWireCustomer]
A list of customers entitled to view and manage this confidential wire transfer payment batch. If this property is omitted, the batch is not confidential. To remove confidential customers in a batch and make the batch non-confidential, set this property to null in a patchPaymentBatch operation.
minItems: 1
scope string: wireTransferPaymentScope (required)
Indicates if the wire transfer is a domestic wire or an international wire. This must be assigned when creating a wire transfer and is immutable after.
read-only
enum values: domestic, international
approvalDue array: [string]
A list of date-times, in ascending order, when a wire transfer payment must be fully approved so that it can be processed at the financial institution's cut-off time. These times reflect either the financial institution's domestic or international wire cut off times, as determined by this wire transfer's scope. The financial institution may process wire transfers batches multiple times per day. The time component of each date-time is the financial institution's cut-off time. This is expressed in RFC 3339 YYYY-MM-DDThh:mm:ss.sssZ date-time format. Note: Some of these times may be in the past.
read-only
minItems: 1
maxItems: 8

wireTransferPaymentBatchPatch

{
  "originator": {
    "name": "Phil Duciary",
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "confidentialCustomers": [
    {
      "id": "f48291b6-14ce",
      "name": "Amanda Cummins"
    }
  ]
}

Wire Transfer Payment Batch Patch (v1.0.0)

Mutable properties of a patch to a wire transfer payment.

Properties

NameDescription
originator object: wireTransferOriginatorPatch
The person who created the wire transfer.
confidentialCustomers array: [confidentialWireCustomer]
A list of customers entitled to view and manage this confidential wire transfer payment batch. If this property is omitted, the batch is not confidential. To remove confidential customers in a batch and make the batch non-confidential, set this property to null in a patchPaymentBatch operation.
minItems: 1

wireTransferPaymentInstruction

{
  "beneficiary": {
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "intermediaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "routingNumber": "503000196"
  },
  "beneficiaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "locator": "503000196",
    "locatorType": "abaRoutingNumber",
    "instructions": "Account should be a savings account."
  },
  "receivingInstitution": {
    "name": "Old State Federal Savings Bank",
    "routingNumber": "503000196",
    "instructions": "Account should be a savings account."
  },
  "localClearingCode": "TBD"
}

Wire Transfer Payment Instruction (v1.0.1)

A payment instruction for sending funds via a wire transfer. Note: The wire originator information is in the containing paymentBatch.wireTransfer object.

Properties

NameDescription
beneficiary object: wireTransferBeneficiary
The individual or business who receives the wire transfer funds.
beneficiaryInstitution object: wireTransferBeneficiaryInstitution
The beneficiary financial institution. A receivingInstitution branch of this beneficiary financial institution may be the ultimate location where the wire transfer is deposited.
intermediaryInstitution object: wireTransferIntermediaryInstitution
This financial institution serves as an intermediary between the issuer and beneficiary institutions to processes the wire transfer. Required for international wire transfers where the issuing financial institution is unable to process the international wire.
receivingInstitution object: wireTransferReceivingInstitution
For international wires, a receiving institution may be used if the beneficiary's account at the beneficiary's institution should be routed to a local branch. The receiving institution represents the local branch.
localClearingCode string
TBD.
maxLength: 63

wireTransferPaymentMethod

{
  "beneficiary": {
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "intermediaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "routingNumber": "503000196"
  },
  "beneficiaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "locator": "503000196",
    "locatorType": "abaRoutingNumber",
    "instructions": "Account should be a savings account."
  },
  "receivingInstitution": {
    "name": "Old State Federal Savings Bank",
    "routingNumber": "503000196",
    "instructions": "Account should be a savings account."
  },
  "localClearingCode": "TBD",
  "scope": "domestic"
}

Wire Transfer Payment Method (v1.0.0)

Data necessary for defining the customer's wire transfer payment method.

Properties

NameDescription
beneficiary object: wireTransferBeneficiary (required)
The individual or business who receives the wire transfer funds.
beneficiaryInstitution object: wireTransferBeneficiaryInstitution (required)
The beneficiary financial institution. A receivingInstitution branch of this beneficiary financial institution may be the ultimate location where the wire transfer is deposited.
intermediaryInstitution object: wireTransferIntermediaryInstitution
This financial institution serves as an intermediary between the issuer and beneficiary institutions to processes the wire transfer. Required for international wire transfers where the issuing financial institution is unable to process the international wire.
receivingInstitution object: wireTransferReceivingInstitution
For international wires, a receiving institution may be used if the beneficiary's account at the beneficiary's institution should be routed to a local branch. The receiving institution represents the local branch.
localClearingCode string
TBD.
maxLength: 63
scope string: wireTransferPaymentScope (required)
Indicates if the wire transfer is a domestic wire or an international wire.
enum values: domestic, international

wireTransferPaymentMethodPatch

{
  "beneficiary": {
    "taxId": "112-22-3333",
    "address": {
      "address1": "1805 Tiburon Dr.",
      "address2": "Building 14, Suite 1500",
      "locality": "Wilmington",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28412"
    },
    "phoneNumber": "+9105551234"
  },
  "intermediaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "routingNumber": "503000196"
  },
  "beneficiaryInstitution": {
    "name": "First Bank of Andalasia",
    "address": {
      "address1": "239 West Princess Ave.",
      "locality": "Andalasia",
      "regionCode": "NC",
      "countryCode": "US",
      "postalCode": "28407"
    },
    "locator": "503000196",
    "locatorType": "abaRoutingNumber",
    "instructions": "Account should be a savings account."
  },
  "receivingInstitution": {
    "name": "Old State Federal Savings Bank",
    "routingNumber": "503000196",
    "instructions": "Account should be a savings account."
  },
  "localClearingCode": "TBD",
  "type": "checking",
  "accountNumber": "123456789"
}

Wire Transfer Payment Method Patch Request (v1.0.0)

Representation used to patch an existing payment method using the JSON Merge Patch format and processing rules.

Properties

NameDescription
beneficiary object: wireTransferBeneficiary
The individual or business who receives the wire transfer funds.
beneficiaryInstitution object: wireTransferBeneficiaryInstitution
The beneficiary financial institution. A receivingInstitution branch of this beneficiary financial institution may be the ultimate location where the wire transfer is deposited.
intermediaryInstitution object: wireTransferIntermediaryInstitution
This financial institution serves as an intermediary between the issuer and beneficiary institutions to processes the wire transfer. Required for international wire transfers where the issuing financial institution is unable to process the international wire.
receivingInstitution object: wireTransferReceivingInstitution
For international wires, a receiving institution may be used if the beneficiary's account at the beneficiary's institution should be routed to a local branch. The receiving institution represents the local branch.
localClearingCode string
TBD.
maxLength: 63

wireTransferPaymentScope

"domestic"

Wire Transfer Payment Scope (v1.0.0)

Indicates if the wire transfer is a domestic wire or an international wire.

wireTransferPaymentScope strings may have one of the following enumerated values:

ValueDescription
domesticDomestic: A wire transfer in which both the sender and beneficiary (recipient) financial institutions are in the US.
internationalInternational: A wire transfer in which the beneficiary (recipient) financial institution is not in the US.

Type: string
enum values: domestic, international

wireTransferReceivingInstitution

{
  "name": "Old State Federal Savings Bank",
  "routingNumber": "503000196",
  "instructions": "Account should be a savings account."
}

Wire Transfer Receiving Institution (v1.0.0)

For international wires, the beneficiary may designate a receiving institution if they wish to receive the wire transfer funds at a local branch.

Properties

NameDescription
name string (required)
The name of the receiving institution (the beneficiary financial institution's branch name).
maxLength: 35
routingNumber string: accountRoutingNumber (required)
The routing number of the beneficiary's account at the local branch (receiving institution).
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
instructions string
Additional or special instructions for the receiving institution to process the wire transfer.
maxLength: 195