Payments v0.12.1

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

The Payments API allows banking customers to suubmit instructions to pay people or businesses using one of several payment methods, such as wire transfers, bill payment, or person to person payment. The payment is drafted from an eligle account. This API does not process or execute the payments.

The API provides metadata which describes each available payment method, its terms and conditions, whether the payment method supports scheduling payments in the future, or whether the user can edit or cancel submitted payment instructions.

The customer can create payees and manage the payment method details of each payee, such as how to pay them via wire transfer and/or bill pay. Payees may be people or businesses (or other non-person entity). Use the createPayee operation to create a new payee. The customer owns their payees, which are not visible to other customers. However, the details of payment instructions, which includes some details of the payee, are visible to other account holders.

The client can create a payment instruction. A payment instruction represents a user's request to make a payment. Payment instructions contain an existing payee or data for a new payee, and details of one payment method with which to pay that payee. The new payment instruction is in the pending state. The client application may update the pending payment instruction or delete it. When ready, the client should submit the payment instruction. (Payment instructions are not processed unless they are submitted.) The client may cancel some submitted payment instruction, before they are processed, although not all payment methods support canceling.

The customer can view their pending, submitted, and processing getPaymentInstructions. Other account holders can also view payment instructions on the account.

Finally, the customer can view their payment history - a list of completed or failed payments.

Multi-factor authentication challenges

Some payment methods, such as wire transfers, may require multi-factor authentication (MFA) when submitting payment instructions. An MFA challenge is a process to verify the user's identity through one or more additional authentication steps.

If the client tries the operation without a valid redeemable Apiture-Challenge request header, the operation may fail with a 409 Conflict. The response body, defined by the challengeErrorResponse schema, contains a challenge resource which includes one or more authenticators. The client should start at least one of the authenticators, optionally allowing the user to choose which one to use, depending on how many authenticators are required.

For example, the challenge may include an authenticator that sends a verification code to the user's mobile phone. The user completes the authentication by entering the code in the client application. Once the authentication step has completed successfully, the client must pass the resource ID of the challenge resource in the Apiture-Challenge request header in order to complete the operation. Thus, these operations require two tries: the first (without the Apiture-Challenge header), which fails with a 409 status but returns the challenge object, then after completing the challenges' authenticators, a second try, passing in the Apiture-Challenge header.

Payment instruction processing

After submitting, the financial institution may begin processing the payment instructions There may be some delay, from minutes to hours or days, depending on the payment method.

The financial institution may reject the payment instructions, for example, if the account has insufficient funds when the payment is processed, or if the account is locked or closed.

The financial institution executes submitted payment instructions through other processes. The API supports two types of payment processing:

  1. Instantaneous (or "real time"), where the submitted payment is complete (the account has been debited) as soon as it is processed. For this case, the financial institution should invoke the completePaymentInstruction operation on the submitted payment instruction. This may be the case with wire transfers.
  2. Batch, where the financial institution first marks payment instruction as processed. When the financial institution later gets confirmation that the payment has completed and the account has been debited, the financial institution should mark the payment instruction as complete.

If the financial institution tries but is is unable to process or complete the payment instructions, it should invoke the failPaymentInstruction operation.

When Payment Instruction Actions are Allowed

Various payment instructions actions are allowed based on the payment instruction's state:

  • pending → submitted (users)
  • pending → expired (system)
  • submitted → rejected (admin)
  • submitted → processing (admin,system)
  • processing → failed (system)
  • processing → completes (system)
  • processing → rejected (admin)

Note that these actions are idempotent; i.e. the submitPaymentInstruction is also allowed (and is a no-op) if the instruction's state is already submitted.

Service Configuration

This API also supports service configuration operations.

Error Types

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

addressMissingRegion

Description: If a non-US countryCode is given, then region must be supplied.
Remediation: Include the region in the request body.

addressMissingRegionCode

Description: If a US countryCode is given, then regionCode must be supplied.
Remediation: Include the regionCode in the request body.

cannotChangePaymentMethodType

Description: Once a payment instruction has been submitted, the payment method type is not mutable.
Remediation: Contact the financial institution to cancel the payment and submit a new payment instruction.

cannotUpdateCompletedPaymentInstructions

Description: Completed payment instructions are immutable.
Remediation: Only update pending requests or submitted requests that allow updates as per the payment method definition.

challengeRefNotFound

Description: There is no challence resource corresponding to the referenced challenge.
Remediation: Pass a reference to a valid challence resource.

challengedAlreadyRedeemed

Description: The challenge resource has already been redeemed.
Remediation: Use the most recently issued challenge.

challengedExpired

Description: The challenge resource has expired.
Remediation: Use the most recently issued challenge and complete the authenticators before the challenge expires.

groupNotFound

Description: No Groups were found for the specified groupName.
Remediation: Check to make sure that the supplied groupName corresponds to an apiture group resource.

incompletePaymentMethod

Description: The payment method details in the payment instruction are incomplete.
Remediation: Include all properties from the corresponding payee's payment method.

invalidAccount

Description: The apiture:account link was missing, was not a valid URL, or refers to an account that is not eligible for debiting for payments.
Remediation: Pass the URL of an account that is suitable for payments.

invalidAttachment

Description: A file attachment URL is invalid, no such resource exists, the attachment content does not match the document type, or the attachment content is not an allowed.
Remediation: Pass a valid attachment document URL.

invalidDeletePaymentInstructionState

Description: The payment instruction cannot be deleted. Only pending payment instructions may be deleted.
Remediation: The payment instruction cannot be deleted as it has already been submitted.

invalidPaymentInstructionStateChange

Description: The requested state change cannot be applied. The PaymentInstruction is either in a terminal state or the state transition is prohibited.
Remediation: Check the state of your PaymentInstruction and the allowed state transitions in the Payments API documentation.

invalidPostalCode

Description: The postal code must match the format required for the given country code.
Remediation: Use the correct postal code format, such as ZIP or ZIP+4 for a US address.

missingApitureChallengeHeader

Description: The Apiture-Challenge request header is missing.
Remediation: Pass a reference to a valid challence resource in the Apiture-Challenge header.

noSuchPayee

Description: The payment instruction included a payee _id but no such payee exists.
Remediation: Update a payment instruction using an existing payee or a payee without _id to create a new payee.

payeeAddressMissingProperties

Description: When updating an payee, the address must be complete.
Remediation: Include the addressLine1, city, regionCode, postalCode and countryCode in the payee address.

payeeMismatch

Description: A payee with type of person must contain the person object and its required properties, and a payee with type of organization must contain the organization object and its required properties. Only one of the person and organization objects is allowed.
Remediation: Pass the required object corresponding to the payee's type.

payeeNotFound

Description: No Payee was found for the specified payeeId.
Remediation: Ensure the supplied payeeId corresponds to a valid payee resource.

payeeOrganizationMissingProperties

Description: When updating an organization payee, organization.name is required.
Remediation: Include the payee organizaiton.name in the request body.

payeePersonMissingProperties

Description: When updating a person payee, person.firstName and person.lastName are required.
Remediation: Include the payee person.firstName and person.lastName in the request body.

paymentInstructionAmountLimitExceeded

Description: The given payment amount exceeds the limit for the given payment method type.
Remediation: Resubmit the request with an amount that does not exceed the payment amount limit.

paymentInstructionNotFound

Description: No paymentInstruction was found for the specified paymentInstructionId.
Remediation: Ensure the supplied paymentInstructionId corresponds to a valid paymentInstruction resource.

paymentInstructionRefNotFound

Description: The supplied paymentInstructionId was malformed or a resource does not exist with that ID.
Remediation: Check to make sure that the supplied paymentInstructionId corresponds to an apiture paymentInstruction resource.

paymentMethodDisallowsUpdates

Description: Updates to payment instructions are not allowed for requests using this payment method.
Remediation: Contact the financial institution to cancel the payment and submit a new payment instruction.

paymentMethodMismatch

Description: The payment instruction does not include the corresponding payment details for the paymentMethod.type.
Remediation: Set the correct details in the request. For example if the paymentMethod.type is wireTransfer, the body must contain the paymentMethod.wireTransfer object.

paymentMethodNotFound

Description: No paymentMethod was found for the specified paymentMethodType.
Remediation: Ensure the supplied paymentMethodType corresponds to a valid paymentMethod resource.

paymentNotFound

Description: No payment was found for the specified paymentId.
Remediation: Ensure the supplied paymentId corresponds to a valid payment resource.

valueNotFound

Description: No Group values were found for the specified groupName and valueName.
Remediation: Check to make sure that the supplied groupName and valueName corresponds to an apiture group and value resource.

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

Authentication

  • API Key (apiKey)
    • header parameter: API-Key
    • API Key based authentication. See details at Secure Access.

Scope Scope Description
banking/read Read access to accounts and account-related resources such as transfers and transactions.
banking/write Write (update) access to accounts and account-related resources such as transfers and transactions.
banking/delete Delete access to If deletable accounts and account-related resources such as transfers.
banking/readBalance Read access to account balances. This must be granted in addition to the banking/read scope in order to view balances, but is included in the banking/full scope.
banking/full Full access to accounts and account-related resources such as transfers and transactions.

Payees

Payment Recipients

getPayees

Code samples

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

GET https://api.devbank.apiture.com/payments/payees HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/payments/payees',
{
  method: 'GET',

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

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

};

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

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

require 'rest-client'
require 'json'

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

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees");
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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Return a collection of payees

GET https://api.devbank.apiture.com/payments/payees

Return a paginated sortable filterable searchable collection of payees. The links in the response include pagination links.

Parameters

ParameterDescription
type
in: query
string
Filter the response to list only payees of this type.
enum values: person, organization
start
in: query
integer(int64)
The zero-based index of the first payee item to include in this page. The default 0 denotes the beginning of the collection.
format: int64
default: 0
limit
in: query
integer(int32)
The maximum number of payee representations to return in this page.
format: int32
default: 100
sortBy
in: query
string
Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2. The default sort order is by type, then by name (organization name or person lastname, firstname, middle name).
This collection may be sorted by the following properties:
createdAt
name
type.
filter
in: query
string
Optional filter criteria. See filtering.
This collection may be filtered by the following properties and functions:
• Property type using functions eq, ne.
q
in: query
string
Optional search string. See searching.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payees/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "/payments/payees?start=10&limit=10"
    },
    "first": {
      "href": "/payments/payees?start=0&limit=10"
    },
    "next": {
      "href": "/payments/payees?start=20&limit=10"
    },
    "collection": {
      "href": "/payments/payees"
    }
  },
  "name": "payees",
  "start": 10,
  "limit": 10,
  "count": 67,
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
        "type": "person",
        "person": {
          "firstName": "John",
          "middleName": "Daniel",
          "lastName": "Smith"
        },
        "address": {
          "addressLine1": "555 N Front Street",
          "addressLine2": "Suite 5555",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28401-5405",
          "countryCode": "US"
        },
        "createdBy": "johnsmith1234",
        "createdAt": "2020-10-02T11:09:20.375Z",
        "updatedAt": "2020-10-02T11:15:25.375Z",
        "_embedded": {
          "wireTransfer": {
            "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
            "account": {
              "number": "9876543210"
            },
            "institution": {
              "name": "3rd Party Bank",
              "address": {
                "addressLine1": "500 N. Elm St",
                "city": "Norman",
                "regionCode": "OK",
                "postalCode": "73070",
                "countryCode": "US"
              },
              "routingNumber": "021000021",
              "forFurtherCreditMemo": "Attention: John Smith"
            }
          }
        },
        "_links": {
          "self": {
            "href": "/payments/payees/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payees
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
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 will contain details about the request error.
Schema: errorResponse

createPayee

Code samples

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

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

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/createPayee/v1.2.2/profile.json",
  "_links": {},
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/payees',
{
  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',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees',
  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',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees");
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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Create a new payee

POST https://api.devbank.apiture.com/payments/payees

Create a new payee in the payees collection.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/createPayee/v1.2.2/profile.json",
  "_links": {},
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  }
}

Parameters

ParameterDescription
body createPayee
The data necessary to create a new payee.

Example responses

201 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Responses

StatusDescription
201 Created
Created.
Schema: payee
HeaderLocation
string uri
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme://host
HeaderETag
string
An entity tag which may be passed in the If-Match request header for PUT or PATCH operations which update the resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity

Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.

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

Schema: errorResponse

getPayee

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/payees/{payeeId} \
  -H 'Accept: application/json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/payees/{payeeId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-None-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/payees/{payeeId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}");
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"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch a representation of this payee

GET https://api.devbank.apiture.com/payments/payees/{payeeId}

Return a HAL representation of this payee resource.

Parameters

ParameterDescription
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payee
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payee resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse

updatePayee

Code samples

# You can also use wget
curl -X PUT https://api.devbank.apiture.com/payments/payees/{payeeId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.devbank.apiture.com/payments/payees/{payeeId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}',
{
  method: 'PUT',
  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',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  method: 'put',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.devbank.apiture.com/payments/payees/{payeeId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Update this payee

PUT https://api.devbank.apiture.com/payments/payees/{payeeId}

Perform a complete replacement of this payee. Note that this operation may change the payee type, although only one of the person and organization objects is allowed. If type is person, the person object must be provided , and if type is organization, the organization object must be provided. Nested _embedded and _links are ignored if included.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Parameters

ParameterDescription
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body payee
A new payee
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payee
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payee resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
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 will contain details about the request error.

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

Schema: errorResponse

patchPayee

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/payments/payees/{payeeId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/payments/payees/{payeeId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}',
{
  method: 'PATCH',
  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',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  method: 'patch',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('https://api.devbank.apiture.com/payments/payees/{payeeId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}");
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/json"},
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Update this payee

PATCH https://api.devbank.apiture.com/payments/payees/{payeeId}

Perform a partial update of this payee. Fields which are omitted are not updated. See also the constraints in updatePayee which also apply to this patch operation. Nested _embedded and _links are ignored if included.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Parameters

ParameterDescription
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body payee
The new payee.
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payee
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payee resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
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 will contain details about the request error.

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

Schema: errorResponse

deletePayee

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/payments/payees/{payeeId} \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/payments/payees/{payeeId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}',
{
  method: 'DELETE',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  method: 'delete',

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

require 'rest-client'
require 'json'

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

result = RestClient.delete 'https://api.devbank.apiture.com/payments/payees/{payeeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.delete('https://api.devbank.apiture.com/payments/payees/{payeeId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}");
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/json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Delete this payee resource

DELETE https://api.devbank.apiture.com/payments/payees/{payeeId}

Delete this payee resource and the payee's payment methods.

Parameters

ParameterDescription
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

404 Response

{
  "_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "Description of the error will appear here.",
    "statusCode": 422,
    "type": "specificErrorType",
    "attributes": {
      "value": "Optional attribute describing the error"
    },
    "remediation": "Optional instructions to remediate the error may appear here.",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://production.api.apiture.com/errors/specificErrorType"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Responses

StatusDescription
204 No Content
No Content. The resource was deleted successfully.
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse

Payment Instructions

Requests to Make a Payment

getPaymentInstructions

Code samples

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

GET https://api.devbank.apiture.com/payments/paymentInstructions HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/payments/paymentInstructions',
{
  method: 'GET',

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

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

};

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

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

require 'rest-client'
require 'json'

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

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Return a collection of payment instructions

GET https://api.devbank.apiture.com/payments/paymentInstructions

Return a paginated sortable filterable searchable collection of payment instructions. The links in the response include pagination links.

Parameters

ParameterDescription
type
in: query
string
Filter the response to list only payments of this payment method type.
enum values: billPay, personToPerson, wireTransfer
state
in: query
array[string]
Filter the response to list only payment instructions in this state.
unique items
pipe-delimited
items: string
» enum values: pending, submitted, canceled, processing, rejected, completed, failed, expired
account
in: query
array[string]
Filter the response to list only payment instructions for the specified accounts, identified by the accountId.
unique items
maxItems: 8
pipe-delimited
items: string
start
in: query
integer(int64)
The zero-based index of the first payment instruction item to include in this page. The default 0 denotes the beginning of the collection.
format: int64
default: 0
limit
in: query
integer(int32)
The maximum number of payment instruction representations to return in this page.
format: int32
default: 100
sortBy
in: query
string
Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2. The default sort order is by createdAt (descending).
This collection may be sorted by the following properties:
createdAt
type
state
payeeName
amount.value.
filter
in: query
string
Optional filter criteria. See filtering.
This collection may be filtered by the following properties and functions:
• Property state using functions eq, ne, in
• Property type using functions eq, ne, in
• Property submittedAt using functions lt, le, gt, ge
• Property amount.value using functions lt, le, gt, ge, eq, ne
• Property account using functions eq, ne, in
• Property createdAt using functions lt, le, gt, ge
• Property createdBy using functions eq, in
• Property payeeName using functions eq, contains.
q
in: query
string
Optional search string. See searching.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstructions/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "/payments/paymentInstructions?start=10&limit=10"
    },
    "first": {
      "href": "/payments/paymentInstructions?start=0&limit=10"
    },
    "next": {
      "href": "/payments/paymentInstructions?start=20&limit=10"
    },
    "collection": {
      "href": "/payments/paymentInstructions"
    }
  },
  "name": "paymentInstructions",
  "start": 10,
  "limit": 10,
  "count": 67,
  "_embedded": {
    "items": [
      {
        "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
        "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
        "amount": {
          "value": "5000.00",
          "currency": "USD"
        },
        "purpose": "Advance consulting fee",
        "payeeName": "John Daniel Smith",
        "accountName": "Premiere Checking",
        "payee": {
          "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
          "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
          "type": "person",
          "person": {
            "firstName": "John",
            "middleName": "Daniel",
            "lastName": "Smith"
          },
          "address": {
            "addressLine1": "555 N Front Street",
            "addressLine2": "Suite 5555",
            "city": "Wilmington",
            "regionCode": "NC",
            "postalCode": "28401-5405",
            "countryCode": "US"
          }
        },
        "paymentMethod": {
          "type": "wireTransfer",
          "wireTransfer": {
            "account": {
              "number": "9876543210"
            },
            "institution": {
              "name": "3rd Party Bank",
              "address": {
                "addressLine1": "500 N. Elm St",
                "city": "Norman",
                "regionCode": "OK",
                "postalCode": "73070",
                "countryCode": "US"
              },
              "routingNumber": "021000021",
              "forFurtherCreditMemo": "Attention: John Smith"
            },
            "attachments": [
              {
                "name": "invoice-2020-10-01a.pdf",
                "contentType": "application/pdf",
                "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
              }
            ]
          }
        },
        "state": "submitted",
        "createdBy": "johnsmith1234",
        "createdAt": "2020-10-02T11:09:20.375Z",
        "updatedAt": "2020-10-02T11:15:25.375Z",
        "expiresAt": "2020-10-05T11:15:25.375Z",
        "_links": {
          "self": {
            "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
          },
          "apiture:payee": {
            "href": "https://api.devbank.apiture.com/payments/payees/0399abed-fd3d-4830-a88b-30f38b8a365c"
          },
          "apiture:paymentMethod": {
            "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
          },
          "apiture:account": {
            "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstructions
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
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 will contain details about the request error.
Schema: errorResponse

createPaymentInstruction

Code samples

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

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

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/createPaymentInstruction/v1.3.1/profile.json",
  "_links": {
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "amount": {
    "value": "256.50",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/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',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/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',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Create a new payment instruction

POST https://api.devbank.apiture.com/payments/paymentInstructions

Create a new payment instruction. The new resource appears in the payment instructions collection.

The request body includes the payment amount, the payee, the details of a payment method, and the apiture:account link of the account where the payment is debited.

Upon creating the payment instruction, the service automatically writes the payee and payment method properties to the associated payee resource and its corresponding nested payment method resource. Future updates to the payee resource or their payment methods (such as updatePayeeWireTransferMethod) do not modify any payment instruction. This operation creates a new payee if the request body does not contain an payee._id (a refererence to an existing payee).

The payment remains pending until submitted with the submitPaymentInstruction. Pending payment instructions may be deleted via deletePaymentInstruction.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/createPaymentInstruction/v1.3.1/profile.json",
  "_links": {
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "amount": {
    "value": "256.50",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Parameters

ParameterDescription
body createPaymentInstruction
The data necessary to create a new payment instruction.

Example responses

201 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
201 Created
Created.
Schema: paymentInstruction
HeaderLocation
string uri
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme://host
HeaderETag
string
An entity tag which may be passed in the If-Match request header for PUT or PATCH operations which update the resource.
StatusDescription
400 Bad Request

Bad Request. The payment instructionrequest body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
422 Unprocessable Entity

Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.

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

Schema: errorResponse

getPaymentInstruction

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} \
  -H 'Accept: application/json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-None-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

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

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

var headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

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

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

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

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/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"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch a representation of this payment instruction

GET https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}

Return a HAL representation of this payment instruction resource.

Parameters

ParameterDescription
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.
paymentInstructionId
in: path
string (required)
The unique identifier of this payment instruction. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstruction
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payment instruction resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found

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

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

Schema: errorResponse

updatePaymentInstruction

Code samples

# You can also use wget
curl -X PUT https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}',
{
  method: 'PUT',
  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',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}',
  method: 'put',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Update this payment instruction

PUT https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}

Perform a complete replacement of this payment instruction. Upon updating a payment instruction, the service automatically writes the payee and payment method properties to the associated payee resource. This operation may also update the account, by passing a new account URL in the apiture:account link.

Some payment methods do not allow updating the payment instruction after it has been submitted. Updates are also prohibited if the state is completed or rejected or failed.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Parameters

ParameterDescription
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body paymentInstruction
A new payment instruction
paymentInstructionId
in: path
string (required)
The unique identifier of this payment instruction. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstruction
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payment instruction resource.
StatusDescription
400 Bad Request

Bad Request. The payment instructionrequest body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
404 Not Found

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

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The payment instruction cannot be updated.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
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 will contain details about the request error.

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

Schema: errorResponse

patchPaymentInstruction

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/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/json',
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

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

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

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

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/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/json"},
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Update this payment instruction

PATCH https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}

Perform a partial update of this payment instruction. Fields which are omitted are not updated. Nested _embedded and _links are ignored if included.

Upon updating a payment instruction, the details in the payment are automatically written to the associated payee and to the corresponding payee's details for the payment method. A new payee is created if the payment instruction does not contain an _id that refers to an existing payee.

Some payment methods do not allow updating the payment instruction after it has been submitted. Updates are also prohibited if the state is completed or rejected or failed.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Parameters

ParameterDescription
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body paymentInstruction
The new payment instruction.
paymentInstructionId
in: path
string (required)
The unique identifier of this payment instruction. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentInstruction
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payment instruction resource.
StatusDescription
400 Bad Request

Bad Request. The payment instructionrequest body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
404 Not Found

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

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The payment instruction cannot be updated.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity

Conflict. The payment instruction cannot be updated.

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

Schema: errorResponse

deletePaymentInstruction

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

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

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

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

};

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

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

require 'rest-client'
require 'json'

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

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/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/json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Delete this payment instruction resource

DELETE https://api.devbank.apiture.com/payments/paymentInstructions/{paymentInstructionId}

Delete this payment instruction resource and any resources that are owned by it. Only payment instruction with the state of pending may be deleted.

Parameters

ParameterDescription
paymentInstructionId
in: path
string (required)
The unique identifier of this payment instruction. This is an opaque string.

Example responses

404 Response

{
  "_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "Description of the error will appear here.",
    "statusCode": 422,
    "type": "specificErrorType",
    "attributes": {
      "value": "Optional attribute describing the error"
    },
    "remediation": "Optional instructions to remediate the error may appear here.",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://production.api.apiture.com/errors/specificErrorType"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Responses

StatusDescription
204 No Content
No Content. The resource was deleted successfully.
StatusDescription
404 Not Found

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

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The payment instruction cannot be deleted. Only pending payment instructions may be deleted.

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

Schema: errorResponse

Payment Instruction Actions

Actions on Payment Instructions

submitPaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/payments/submittedPaymentInstructions?paymentInstruction=string \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'Apiture-Challenge: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/payments/submittedPaymentInstructions?paymentInstruction=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-Match: string
Apiture-Challenge: string

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

const headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'Apiture-Challenge':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/submittedPaymentInstructions?paymentInstruction=string',
{
  method: 'POST',

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

var headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'Apiture-Challenge':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/submittedPaymentInstructions',
  method: 'post',
  data: '?paymentInstruction=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'Apiture-Challenge' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/payments/submittedPaymentInstructions',
  params: {
  'paymentInstruction' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-Match': 'string',
  'Apiture-Challenge': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/payments/submittedPaymentInstructions', params={
  'paymentInstruction': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/submittedPaymentInstructions?paymentInstruction=string");
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{
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "Apiture-Challenge": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Submit a payment instruction

POST https://api.devbank.apiture.com/payments/submittedPaymentInstructions

Submit a payment instruction to be processed by the financial institution. This changes the state property of the payment instruction to submitted. This operation is available via the apiture:submit link on the payment instruction resource, if and only if the payment instruction is eligible for the submit operation. The response is the updated representation of the payment instruction. The If-Match request header value, if passed, must match the current entity tag value of the payment instruction. This is a no-op if the state is submitted.

This operation requires passing a valid challenge ID in the Apiture-Challenge request header if the requiresMfaChallenge is true in the payment method definition. (See Multi-factor authentication challenges in the API overview.)

Parameters

ParameterDescription
paymentInstruction
in: query
string (required)
A string which uniquely identifies a payment instruction which is to added to the submitted payment instructions resource set. This may be the unique _id of the payment instruction ({paymentInstructionId}) or the URI of the payment instruction.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
Apiture-Challenge
in: header
string
The unique identifier of a Challenge resource which demonstrates the user has recently verified their identity. See the discussion of Multi-factor authentication challenges above. The value must be the _id string of a valid, redeemable Challenge resource which matches the challenge context.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The payment instruction was updated and its state changed to submitted.
Schema: paymentInstruction
204 No Content
No Content. If the payment has already been submitted, no changes are made. (This is an idempotent operation.)
StatusDescription
400 Bad Request

Bad Request. The paymentInstruction parameter was malformed or does not refer to an existing or accessible payment instruction.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to submit the payment instruction is not allowed, or the MFA challenge content (if required) is missing or invalid. The _error field in the response contains details about the request error.

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

Schema: challengeErrorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

cancelPaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/payments/canceledPaymentInstructions?paymentInstruction=string \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/payments/canceledPaymentInstructions?paymentInstruction=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/canceledPaymentInstructions?paymentInstruction=string',
{
  method: 'POST',

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

var headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/canceledPaymentInstructions',
  method: 'post',
  data: '?paymentInstruction=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/payments/canceledPaymentInstructions',
  params: {
  'paymentInstruction' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/payments/canceledPaymentInstructions', params={
  'paymentInstruction': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/canceledPaymentInstructions?paymentInstruction=string");
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{
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Cancel a payment instruction

POST https://api.devbank.apiture.com/payments/canceledPaymentInstructions

Cancel a payment instruction.

This changes the state property of the payment instruction to canceled. This operation is available via the apiture:cancel link on the payment instruction resource, if and only if the payment instruction is eligible for the cancel operation. Some payment memthods do not allow canceling. The response is the updated representation of the payment instruction. The If-Match request header value, if passed, must match the current entity tag value of the payment instruction. This is a no-op if the state is canceled.

Parameters

ParameterDescription
paymentInstruction
in: query
string (required)
A string which uniquely identifies a payment instruction which is to added to the submitted payment instructions resource set. This may be the unique _id of the payment instruction ({paymentInstructionId}) or the URI of the payment instruction.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The payment instruction was updated and its state changed to canceled.
Schema: paymentInstruction
204 No Content
No Content. If the payment has already been canceled, no changes are made. (This is an idempotent operation.)
StatusDescription
400 Bad Request

Bad Request. The paymentInstruction parameter was malformed or does not refer to an existing or accessible payment instruction.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to process the payment instruction is not allowed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

processPaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/payments/processingPaymentInstructions?paymentInstruction=string \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/payments/processingPaymentInstructions?paymentInstruction=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/processingPaymentInstructions?paymentInstruction=string',
{
  method: 'POST',

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

var headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/processingPaymentInstructions',
  method: 'post',
  data: '?paymentInstruction=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/payments/processingPaymentInstructions',
  params: {
  'paymentInstruction' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/payments/processingPaymentInstructions', params={
  'paymentInstruction': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/processingPaymentInstructions?paymentInstruction=string");
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{
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Process a payment instruction

POST https://api.devbank.apiture.com/payments/processingPaymentInstructions

Mark a payment instruction as in process. The state property of the payment is processing. This operation is available via the apiture:process link on the payment instruction resource, if and only if the payment instruction is eligible for the process operation. The response is the updated representation of the payment instruction. The If-Match request header value, if passed, must match the current entity tag value of the payment instruction. This is a no-op if the state is processed.

This operation is allowed only for administrative applications.

Parameters

ParameterDescription
paymentInstruction
in: query
string (required)
A string which uniquely identifies a payment instruction which is to added to the submitted payment instructions resource set. This may be the unique _id of the payment instruction ({paymentInstructionId}) or the URI of the payment instruction.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The payment instruction was updated and its state changed to processing.
Schema: paymentInstruction
204 No Content
No Content. If the payment has already been processed, no changes are made. (This is an idempotent operation.)
StatusDescription
400 Bad Request

Bad Request. The paymentInstruction parameter was malformed or does not refer to an existing or accessible payment instruction.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to process the payment instruction is not allowed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

rejectPaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/payments/rejectedPaymentInstructions?paymentInstruction=string \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/payments/rejectedPaymentInstructions?paymentInstruction=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/rejectedPaymentInstructions?paymentInstruction=string',
{
  method: 'POST',

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

var headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/rejectedPaymentInstructions',
  method: 'post',
  data: '?paymentInstruction=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/payments/rejectedPaymentInstructions',
  params: {
  'paymentInstruction' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/payments/rejectedPaymentInstructions', params={
  'paymentInstruction': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/rejectedPaymentInstructions?paymentInstruction=string");
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{
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Reject a payment instruction

POST https://api.devbank.apiture.com/payments/rejectedPaymentInstructions

Reject a payment instruction. This changes the state property of the payment instruction to rejected. This operation is available via the apiture:reject link on the payment instruction resource, if and only if the payment instruction is eligible for the reject operation. The response is the updated representation of the payment instruction. The If-Match request header value, if passed, must match the current entity tag value of the payment instruction. This is a no-op if the state is rejected.

This operation is allowed only for administrative applications.

Parameters

ParameterDescription
paymentInstruction
in: query
string (required)
A string which uniquely identifies a payment instruction which is to added to the submitted payment instructions resource set. This may be the unique _id of the payment instruction ({paymentInstructionId}) or the URI of the payment instruction.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The payment instruction was updated and its state changed to rejected.
Schema: paymentInstruction
204 No Content
No Content. If the payment has already been rejected, no changes are made. (This is an idempotent operation.)
StatusDescription
400 Bad Request

Bad Request. The paymentInstruction parameter was malformed or does not refer to an existing or accessible payment instruction.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to reject the payment instruction is not allowed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

completePaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/payments/completedPaymentInstructions?paymentInstruction=string \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/payments/completedPaymentInstructions?paymentInstruction=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/completedPaymentInstructions?paymentInstruction=string',
{
  method: 'POST',

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

var headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/completedPaymentInstructions',
  method: 'post',
  data: '?paymentInstruction=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/payments/completedPaymentInstructions',
  params: {
  'paymentInstruction' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/payments/completedPaymentInstructions', params={
  'paymentInstruction': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/completedPaymentInstructions?paymentInstruction=string");
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{
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Complete a payment instruction

POST https://api.devbank.apiture.com/payments/completedPaymentInstructions

Complete a payment instruction and create a payment in the payment history. This changes the state property of the payment instruction to completed the system deletes it after its expiration date has passed. The state of the new historical payment is also completed. This operation is available via the apiture:complete link on the payment instruction resource, if and only if the payment instruction is eligible for the complete operation. The response is the updated representation of the payment instruction. The If-Match request header value, if passed, must match the current entity tag value of the payment instruction. This is a no-op if the state is completed.

This operation is allowed only for administrative applications.

Parameters

ParameterDescription
paymentInstruction
in: query
string (required)
A string which uniquely identifies a payment instruction which is to added to the submitted payment instructions resource set. This may be the unique _id of the payment instruction ({paymentInstructionId}) or the URI of the payment instruction.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The payment instruction was updated and its state changed to completed.
Schema: paymentInstruction
204 No Content
No Content. If the payment has already been completed, no changes are made. (This is an idempotent operation.)
StatusDescription
400 Bad Request

Bad Request. The paymentInstruction parameter was malformed or does not refer to an existing or accessible payment instruction.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to complete the payment instruction is not allowed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

failPaymentInstruction

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/payments/failedPaymentInstructions?paymentInstruction=string \
  -H 'Accept: application/json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/payments/failedPaymentInstructions?paymentInstruction=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/failedPaymentInstructions?paymentInstruction=string',
{
  method: 'POST',

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

var headers = {
  'Accept':'application/json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/failedPaymentInstructions',
  method: 'post',
  data: '?paymentInstruction=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.devbank.apiture.com/payments/failedPaymentInstructions',
  params: {
  'paymentInstruction' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.devbank.apiture.com/payments/failedPaymentInstructions', params={
  'paymentInstruction': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/failedPaymentInstructions?paymentInstruction=string");
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{
        "Accept": []string{"application/json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fail a payment instruction

POST https://api.devbank.apiture.com/payments/failedPaymentInstructions

Mark payment instruction as failed and create a payment in the payment history. This changes the state property of the payment instruction to failed; the system deletes it after its expiration date has passed. The state of the new historical payment is also failed. Mark a payment instruction as failed. This changes the state property of the payment instruction to failed. This operation is available via the apiture:fail link on the payment instruction resource, if and only if the payment instruction is eligible for the reject operation. The response is the updated representation of the payment instruction. The If-Match request header value, if passed, must match the current entity tag value of the payment instruction. This is a no-op if the state is failed.

This operation is allowed only for administrative applications.

Parameters

ParameterDescription
paymentInstruction
in: query
string (required)
A string which uniquely identifies a payment instruction which is to added to the submitted payment instructions resource set. This may be the unique _id of the payment instruction ({paymentInstructionId}) or the URI of the payment instruction.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The payment instruction was updated and its state changed to failed.
Schema: paymentInstruction
204 No Content
No Content. If the payment has already failed, no changes are made. (This is an idempotent operation.)
StatusDescription
400 Bad Request

Bad Request. The paymentInstruction parameter was malformed or does not refer to an existing or accessible payment instruction.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to reject the payment instruction is not allowed. The _error field in the response contains details about the request error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

Payments

Completed Payments

getHistory

Code samples

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

GET https://api.devbank.apiture.com/payments/history HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/payments/history',
{
  method: 'GET',

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

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

};

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

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

require 'rest-client'
require 'json'

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

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/history");
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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Return a page of payments from the payment history. This lists payments for all the user's accounts unless the ?account= filter is applied.

GET https://api.devbank.apiture.com/payments/history

Return a paginated sortable filterable searchable collection of payments. The links in the response include pagination links.

Parameters

ParameterDescription
type
in: query
string
Filter the response to list only payments of this payment method type.
enum values: billPay, personToPerson, wireTransfer
state
in: query
array[string]
Filter the response to list only payment in this state.
unique items
pipe-delimited
items: string
» enum values: pending, submitted, canceled, processing, rejected, completed, failed, expired
account
in: query
array[string]
Filter the response to list only payment for the specified accounts, identified by the accountId.
unique items
maxItems: 8
pipe-delimited
items: string
start
in: query
integer(int64)
The zero-based index of the first payment item to include in this page. The default 0 denotes the beginning of the collection.
format: int64
default: 0
limit
in: query
integer(int32)
The maximum number of payment representations to return in this page.
format: int32
default: 100
sortBy
in: query
string
Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2. The default sort order is by completedAt (descending).
This collection may be sorted by the following properties:
completedAt
type
state
amount.value.
filter
in: query
string
Optional filter criteria. See filtering.
This collection may be filtered by the following properties and functions:
• Property type using functions eq, ne, in
• Property state using functions eq, ne, in
• Property account using functions eq, ne, in
• Property completedAt using functions lt, le, gt, ge
• Property createdBy using functions eq, in
• Property amount.value using functions lt, le, gt, ge, eq, ne.
q
in: query
string
Optional search string. See searching.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentHistory/v1.0.1/profile.json",
  "_links": {
    "self": {
      "href": "/payments/history?start=10&limit=10"
    },
    "first": {
      "href": "/payments/history?start=0&limit=10"
    },
    "next": {
      "href": "/payments/history?start=20&limit=10"
    },
    "collection": {
      "href": "/payments/history"
    }
  },
  "name": "history",
  "start": 10,
  "limit": 10,
  "count": 67,
  "_embedded": {
    "items": [
      {
        "_id": "3a0b0818-93d2-448d-a7d8-ed526f6ba80d",
        "_profile": "https://production.api.apiture.com/schemas/payments/summaryPayment/v1.0.1/profile.json",
        "amount": {
          "value": "256.50",
          "currency": "USD"
        },
        "payeeName": "John Daniel Smith",
        "accountName": "Premiere Checking",
        "paymentMethodType": "wireTransfer",
        "state": "submitted",
        "createdBy": "johnsmith1234",
        "createdAt": "2020-10-02T11:09:20.375Z",
        "completedAt": "2020-10-02T11:15:25.375Z",
        "_links": {
          "self": {
            "href": "https://api.devbank.apiture.com/payments/paymentInstructions/3a0b0818-93d2-448d-a7d8-ed526f6ba80d"
          },
          "apiture:paymentInstruction": {
            "href": "https://api.devbank.apiture.com/payments/paymentInstructions/3a0b0818-93d2-448d-a7d8-ed526f6ba80d"
          },
          "apiture:paymentMethod": {
            "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
          },
          "apiture:account": {
            "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentHistory
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
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 will contain details about the request error.
Schema: errorResponse

getPayment

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/history/{paymentId} \
  -H 'Accept: application/json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/history/{paymentId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-None-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/history/{paymentId}',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/history/{paymentId}',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/history/{paymentId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/history/{paymentId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/history/{paymentId}");
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"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch a representation of this payment

GET https://api.devbank.apiture.com/payments/history/{paymentId}

Return a HAL representation of this payment resource.

Parameters

ParameterDescription
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.
paymentId
in: path
string (required)
The unique identifier of this payment. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payment/v1.2.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentInstruction": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/3f9e4f91-f3a1-4bf0-87f1-d12c09b6a46f"
    },
    "apiture:paymentMethodDefinition": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "256.50",
    "currency": "USD"
  },
  "payeeName": "John Daniel Smith",
  "paymentMethodType": "wireTransfer",
  "state": "completed",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "completedAt": "2020-10-02T11:15:25.375Z",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "payeeName": "John Daniel Smith",
    "accountName": "Premiere Checking",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payment
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payment resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found

Not Found. There is no such payment resource at the specified {paymentId}. The _error field in the response contains details about the request error.

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

Schema: errorResponse

Payment Methods

Methods of Making Payments

getPaymentMethods

Code samples

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

GET https://api.devbank.apiture.com/payments/paymentMethods HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/payments/paymentMethods',
{
  method: 'GET',

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

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

};

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

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

require 'rest-client'
require 'json'

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

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

p JSON.parse(result)

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

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

A collection of payment method definitions

GET https://api.devbank.apiture.com/payments/paymentMethods

Return a collection of payment method definitions. This is a small, fixed collection (one per paymentMethodType), so there is no pagination, sorting or filtering.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinitions/v1.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethodDefinitions"
    }
  },
  "name": "paymentMethodDefinitions",
  "start": 0,
  "limit": 0,
  "count": 1,
  "_embedded": {
    "items": [
      {
        "type": "wireTransfer",
        "label": "Wire Transfer",
        "description": "Send funds via _wire transfer_, also as Real Time Gross Settlement (RTGS). In the US, wire transfers are processed by Fedwire, the US Federal Reserve Bank network. *Note*: There is a fee for each submitted wire transfer.",
        "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinition/v1.1.1/profile.json",
        "paymentLimit": {
          "amount": "200000.00",
          "currency": "USD"
        },
        "termsAndConditionsUri": "https://cdn.apiture.com/documents/terms/wireTransfer/2020-07-10.pdf",
        "termsAndConditionsContextUri": "https://api.devbank.apiture.com/payments/paymentMethodDefintions/billPayment",
        "consentNeeded": "perRequest",
        "enabled": true,
        "requiresMfaChallenge": true,
        "fees": {
          "currency": "USD",
          "transaction": "19.00"
        },
        "schedulingAllowed": false,
        "recurringSchedulesAllowed": false,
        "cancelAllowed": false,
        "updateAllowed": false,
        "presentHelpAfter": "P180D",
        "expirationPeriod": "P7D",
        "_links": {
          "self": {
            "href": "https://api.devbank.apiture.com/payments/paymentMethodDefinitions/wireTransfer"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentMethodDefinitions

getPaymentMethod

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType} \
  -H 'Accept: application/json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
If-None-Match: string

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

const headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType}',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType}',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType}");
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"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch a representation of this payment method

GET https://api.devbank.apiture.com/payments/paymentMethods/{paymentMethodType}

Return a HAL representation of this payment method resource.

Parameters

ParameterDescription
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.
paymentMethodType
in: path
string (required)
The unique name (type) of a payment method definition, corresponding to the type property of the paymentMethodDefinition.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinition/v1.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "type": "wireTransfer",
  "label": "Wire Transfer",
  "description": "Send funds via _wire transfer_, also known as Real Time Gross Settlement (RTGS). In the US, wire transfers are processed by Fedwire, the US Federal Reserve Bank network. *Note*: There is a fee for each submitted wire transfer.",
  "paymentLimit": {
    "amount": "200000.00",
    "currency": "USD"
  },
  "termsAndConditionsUri": "https://cdn.apiture.com/documents/terms/wireTransfer/2020-07-10.pdf",
  "termsAndConditionsContextUri": "https://api.devbank.apiture.com/payments/paymentMethodDefintions/billPayment",
  "consentNeeded": "perRequest",
  "enabled": true,
  "requiresMfaChallenge": true,
  "fees": {
    "transaction": "19.00",
    "currency": "USD"
  },
  "schedulingAllowed": false,
  "recurringSchedulesAllowed": false,
  "cancelAllowed": false,
  "updateAllowed": false,
  "presentHelpAfter": "P180D",
  "presentHelp": true,
  "expirationPeriod": "P7D"
}

Responses

StatusDescription
200 OK
OK.
Schema: paymentMethodDefinition
StatusDescription
404 Not Found

Not Found. There is no such payment method resource at the specified {paymentMethodType}. The _error field in the response contains details about the request error.

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

Schema: errorResponse

getPayeeWireTransferMethod

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
{
  method: 'GET',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
  method: 'get',

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

require 'rest-client'
require 'json'

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

result = RestClient.get 'https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.get('https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer");
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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch payee's wire transfer parameters

GET https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer

Fetch the parameters for wire transfers for this payee.

Parameters

ParameterDescription
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payeeWireTransferMethod
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payee resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse
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 will contain details about the request error.
Schema: errorResponse

updatePayeeWireTransferMethod

Code samples

# You can also use wget
curl -X PUT https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
{
  method: 'PUT',
  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',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
  method: 'put',

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

require 'rest-client'
require 'json'

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

result = RestClient.put 'https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.put('https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer", data)
    req.Header = headers

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

Update payee's wire transfer parameters

PUT https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer

Update the parameters for wire transfer payments for this payee.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Parameters

ParameterDescription
body payeeWireTransferMethod
The data necessary to create wire transfer instructions for this payee.
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payeeWireTransferMethod
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payee resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
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 will contain details about the request error.

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

Schema: errorResponse

patchPayeeWireTransferMethod

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
{
  method: 'PATCH',
  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',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
  method: 'patch',

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

require 'rest-client'
require 'json'

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

result = RestClient.patch 'https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.patch('https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer");
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/json"},
        "Accept": []string{"application/json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer", data)
    req.Header = headers

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

Patch a payee's wire transfer parameters

PATCH https://api.devbank.apiture.com/payments/payees/{payeeId}/paymentMethods/wireTransfer

Perform a partial update of this payee's parameters for wire transfer payments. This only updates mutable properties in the request body; this operation does not alter other properties.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Parameters

ParameterDescription
body payeeWireTransferMethod
The data necessary to create wire transfer instructions for this payee.
payeeId
in: path
string (required)
The unique identifier of this payee. This is an opaque string.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: payeeWireTransferMethod
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this payee resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such payee resource at the specified {payeeId}. The _error field in the response contains details about the payment instruction error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
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 will contain details about the request error.
Schema: errorResponse

API

The Payments API

getLabels

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/labels \
  -H 'Accept: application/json' \
  -H 'Accept-Language: string' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/payments/labels HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
Accept-Language: string

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

const headers = {
  'Accept':'application/json',
  'Accept-Language':'string',
  'API-Key':'API_KEY'

};

fetch('https://api.devbank.apiture.com/payments/labels',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'Accept-Language':'string',
  'API-Key':'API_KEY'

};

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

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Accept-Language' => 'string',
  'API-Key' => 'API_KEY'
}

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

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Accept-Language': 'string',
  'API-Key': 'API_KEY'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/labels");
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"},
        "Accept-Language": []string{"string"},
        "API-Key": []string{"API_KEY"},
        
    }

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

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

Localized Labels

GET https://api.devbank.apiture.com/payments/labels

Return a JSON object which defines labels for enumeration types defined by the schemas defined in this API. The labels in the response may not all match the requested language; some may be in the default language (en-us).

Parameters

ParameterDescription
Accept-Language
in: header
string
The weighted language tags which indicate the user's preferred natural language for the localized labels in the response, as per RFC 7231.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/common/labelGroups/v1.1.3/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "groups": {
    "firstGroup": {
      "unknown": {
        "label": "Unknown",
        "code": "0",
        "hidden": true
      },
      "key1": {
        "label": "Label for Key 1",
        "code": "1",
        "variants": {
          "es": {
            "label": "(Spanish label for Key 1)"
          },
          "fr": {
            "label": "(French label for Key 1)"
          }
        }
      },
      "key2": {
        "label": "Label for Key 2",
        "code": "2",
        "variants": {
          "es": {
            "label": "(Spanish label for Key 2)"
          },
          "fr": {
            "label": "(French label for Key 2)"
          }
        }
      },
      "key3": {
        "label": "Label for Key 3",
        "code": "3",
        "variants": {
          "es": {
            "label": "(Spanish label for Key 3)"
          },
          "fr": {
            "label": "(French label for Key 3)"
          }
        }
      },
      "other": {
        "label": "Other",
        "variants": {
          "es": {
            "label": "(Spanish label for Other)"
          },
          "fr": {
            "label": "(French label for Other)"
          }
        },
        "code": "254"
      }
    },
    "secondGroup": {
      "unknown": {
        "label": "Unknown",
        "code": "?",
        "hidden": true
      },
      "optionA": {
        "label": "Option A",
        "code": "A"
      },
      "optionB": {
        "label": "Option B",
        "code": "B"
      },
      "optionC": {
        "label": "Option C",
        "code": "C"
      },
      "other": {
        "label": "Other",
        "code": "_"
      }
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: labelGroups

getApi

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/ \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/payments/ HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json

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

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'

};

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

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

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'

};

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

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY'
}

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

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/");
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/hal+json"},
        "API-Key": []string{"API_KEY"},
        
    }

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

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

Top-level resources and operations in this API

GET https://api.devbank.apiture.com/payments/

Return links to the top-level resources and operations in this API.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/common/root/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0"
}

Responses

StatusDescription
200 OK
OK.
Schema: root

getApiDoc

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/apiDoc \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/payments/apiDoc HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

const headers = {
  'Accept':'application/json',
  'API-Key':'API_KEY'

};

fetch('https://api.devbank.apiture.com/payments/apiDoc',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'API-Key':'API_KEY'

};

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

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'API-Key' => 'API_KEY'
}

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

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'API-Key': 'API_KEY'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/apiDoc");
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"},
        "API-Key": []string{"API_KEY"},
        
    }

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

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

Return API definition document

GET https://api.devbank.apiture.com/payments/apiDoc

Return the OpenAPI document that describes this API.

Example responses

200 Response

{}

Responses

StatusDescription
200 OK
OK.
Schema: Inline

Response Schema

Configuration

Payments Service Configuration

getConfigurationGroups

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/configurations/groups \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/configurations/groups HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json

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

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/configurations/groups',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/configurations/groups', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups");
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/hal+json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Return a collection of configuration groups

GET https://api.devbank.apiture.com/payments/configurations/groups

Return a paginated sortable filterable searchable collection of configuration groups. The links in the response include pagination links.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "/configurations/configurations/groups?start=10&limit=10"
    },
    "first": {
      "href": "/configurations/configurations/groups?start=0&limit=10"
    },
    "next": {
      "href": "/configurations/configurations/groups?start=20&limit=10"
    },
    "collection": {
      "href": "/configurations/configurations/groups"
    }
  },
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "configurationGroups",
  "_embedded": {
    "items": [
      {
        "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.1/profile.json",
        "_links": {
          "self": {
            "href": "/configurations/groups/basic"
          }
        },
        "name": "basic",
        "label": "Basic Settings",
        "description": "The basic settings for the Transfers API"
      },
      {
        "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.1/profile.json",
        "_links": {
          "self": {
            "href": "/configurations/groups/calendar"
          }
        },
        "name": "calendar",
        "label": "Calendar",
        "description": "A calendar that specifies which dates are valid for performing transfers (e.g., weekdays excluding federal holidays)"
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: configurationGroups
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response contains details about the request error.
Schema: errorResponse
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 will contain details about the request error.
Schema: errorResponse

getConfigurationGroup

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string

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

const headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups/{groupName}");
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/hal+json"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch a representation of this configuration group

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}

Return a HAL representation of this configuration group resource.

Parameters

ParameterDescription
groupName
in: path
string (required)
The unique name of this configuration group.
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "/configurations/groups/basic"
    }
  },
  "name": "basic",
  "label": "Basic Settings",
  "description": "The basic settings for the Transfers API",
  "schema": {
    "type": "object",
    "properties": {
      "dailyLimit": {
        "type": "number",
        "description": "The daily limit for the number of transfers"
      },
      "cutoffTime": {
        "type": "string",
        "format": "time",
        "description": "The cutoff time for scheduling transfers for the current day"
      }
    }
  },
  "values": {
    "dailyLimit": 5,
    "cutoffTime": 63000
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: configurationGroup
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-None-Match request header for GET operations for this configuration group resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error.
Schema: errorResponse

getConfigurationGroupSchema

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string

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

const headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema");
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/hal+json"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch the schema for this configuration group

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/schema

Return a HAL representation of this configuration group schema resource.

Parameters

ParameterDescription
groupName
in: path
string (required)
The unique name of this configuration group.
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.

Example responses

200 Response

{
  "type": "object",
  "properties": {
    "dailyLimit": {
      "type": "number",
      "description": "The daily limit for the number of transfers"
    },
    "cutoffTime": {
      "type": "string",
      "format": "time",
      "description": "The cutoff time for scheduling transfers for the current day"
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: configurationSchema
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error.
Schema: errorResponse

getConfigurationGroupValues

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string

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

const headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values");
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/hal+json"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

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

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

Fetch the values for the specified configuration group

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values

Return a representation of this configuration group values resource.

Parameters

ParameterDescription
groupName
in: path
string (required)
The unique name of this configuration group.
If-None-Match
in: header
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET returns 304 (Not Modified) and no response body, else the resource representation will be returned.

Example responses

200 Response

{
  "dailyLimit": 5,
  "cutoffTime": 63000
}

Responses

StatusDescription
200 OK
OK.
Schema: configurationValues
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error.
Schema: errorResponse

updateConfigurationGroupValues

Code samples

# You can also use wget
curl -X PUT https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "dailyLimit": 5,
  "cutoffTime": 63000
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values',
  method: 'put',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/hal+json',
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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/hal+json"},
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values", data)
    req.Header = headers

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

Update the values for the specified configuration group

PUT https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values

Perform a complete replacement of this set of values.

Body parameter

{
  "dailyLimit": 5,
  "cutoffTime": 63000
}

Parameters

ParameterDescription
groupName
in: path
string (required)
The unique name of this configuration group.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body configurationValues (required)

Example responses

200 Response

{
  "type": "object",
  "properties": {
    "dailyLimit": {
      "type": "number",
      "description": "The daily limit for the number of transfers"
    },
    "cutoffTime": {
      "type": "string",
      "format": "time",
      "description": "The cutoff time for scheduling transfers for the current day"
    }
  }
}

Responses

StatusDescription
200 OK
OK.
Schema: configurationSchema
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT
StatusDescription
400 Bad Request
Bad Request. The request body is invalid. It is either not valid JSON or it does not conform to the corresponding configuration group schema. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
403 Forbidden
Access denied. Only administrators may update configuration.
Schema: errorResponse
StatusDescription
404 Not Found
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

getConfigurationGroupValue

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName} \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json

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

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}");
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/hal+json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}", data)
    req.Header = headers

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

Fetch a single value associated with the specified configuration group

GET https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}

Fetch a single value associated with this configuration group. This provides convenient access to individual values of the configuration group. The response is always a JSON value which can be parsed with a strict JSON parser. The response may be

  • a primitive number, boolean, or quoted JSON string.
  • a JSON array.
  • a JSON object.
  • null. Examples:
  • "a string configuration value"
  • 120
  • true
  • null
  • { "borderWidth": 8, "foregroundColor": "blue" } To update a specific value, use PUT /payments/configurations/groups/{groupName}/values/{valueName} (operation updateConfigurationGroupValue).

Parameters

ParameterDescription
groupName
in: path
string (required)
The unique name of this configuration group.
valueName
in: path
string (required)
The unique name of a value in a configuration group. This is the name of the value in the schema. A {valueName} must be a simple identifier following the pattern letter [letter | digit | '-' | '_']*.

Example responses

200 Response

"string"

Responses

StatusDescription
200 OK
OK. The value of the named configuration value as a JSON string, number, boolean, array, or object.
Schema: string
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this configuration group resource.
StatusDescription
404 Not Found

Not Found. There is either no such configuration group resource at the specified {groupName} or no such value at the specified {valueName}. The _error field in the response will contain details about the request error.

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

Schema: errorResponse

updateConfigurationGroupValue

Code samples

# You can also use wget
curl -X PUT https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string

const fetch = require('node-fetch');
const inputBody = 'string';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}',
  method: 'put',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/hal+json',
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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/hal+json"},
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}", data)
    req.Header = headers

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

Update a single value associated with the specified configuration group

PUT https://api.devbank.apiture.com/payments/configurations/groups/{groupName}/values/{valueName}

Update a single value associated with this configuration group. This provides convenient access to individual values of the configuration group as defined in the configuration group's schema. The request body must conform to the configuration group's schema for the named {valueName}. This operation is idempotent. The request body must be a JSON value which can be parsed with a strict JSON parser. The response may be

  • a primitive number, boolean, or quoted JSON string.
  • a JSON array.
  • a JSON object.
  • null. Examples:
  • "a string configuration value"
  • 120
  • true
  • null
  • { "borderWidth": 8, "foregroundColor": "blue" } To fetch specific value, use GET /users/configurations/groups/{groupName}/values/{valueName} (operation getConfigurationGroupValue).

Body parameter

"string"

Parameters

ParameterDescription
groupName
in: path
string (required)
The unique name of this configuration group.
valueName
in: path
string (required)
The unique name of a value in a configuration group. This is the name of the value in the schema. A {valueName} must be a simple identifier following the pattern letter [letter | digit | '-' | '_']*.
If-Match
in: header
string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body string (required)
The request body must a valid JSON value and should be parsable with a JSON parser. The result may be a string, number, boolean, array, or object.

Example responses

200 Response

"string"

Responses

StatusDescription
200 OK
OK.
Schema: string
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this configuration group resource.
StatusDescription
400 Bad Request
Bad Request. The request body is invalid. It is either not valid JSON or it does not conform to the corresponding configuration group schema. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
403 Forbidden
Access denied. Only administrators may update configuration.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is either no such configuration group resource at the specified {groupName} or no such value at the specified {valueName}. The _error field in the response will contain details about the request error.

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied If-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse

Schemas

abstractRequest

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractRequest/v2.0.0/profile.json",
  "_links": {}
}

Abstract Request (v2.0.0)

An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _error defined in abstractResource.

This schema was resolved from common/abstractRequest.

Properties

NameDescription
Abstract Request (v2.0.0) object
An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _error defined in abstractResource.

This schema was resolved from common/abstractRequest.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri

abstractResource

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  }
}

Abstract Resource (v2.1.0)

An abstract schema used to define other schemas for request and response bodies. This is a HAL resource representation. This model contains hypermedia _links, and either optional domain object data with _profile and optional _embedded objects, or an _error object. In responses, if the operation was successful, this object will not include the _error, but if the operation was a 4xx or 5xx error, this object will not include _embedded or any data fields, only _error and optionally _links.

This schema was resolved from common/abstractResource.

Properties

NameDescription
Abstract Resource (v2.1.0) object
An abstract schema used to define other schemas for request and response bodies. This is a HAL resource representation. This model contains hypermedia _links, and either optional domain object data with _profile and optional _embedded objects, or an _error object. In responses, if the operation was successful, this object will not include the _error, but if the operation was a 4xx or 5xx error, this object will not include _embedded or any data fields, only _error and optionally _links.

This schema was resolved from common/abstractResource.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only

attributes

{}

Attributes (v2.1.0)

An optional map of name/value pairs which contains additional dynamic data about the resource.

This schema was resolved from common/attributes.

Properties

NameDescription
Attributes (v2.1.0) object
An optional map of name/value pairs which contains additional dynamic data about the resource.

This schema was resolved from common/attributes.

authenticator

{
  "_profile": "https://production.api.apiture.com/schemas/auth/authenticator/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "/auth/challenges/2e61e506-1568-4f1a-a93e-4d0a48a06d0e/authenticators/7fadd35b-6f6b-4901-b1ba-d3b91c9dcee3"
    },
    "apiture:challenge": {
      "href": "/auth/challenges/challenges/b59438cd-5efb-4915-916b-0600bb2a4e1e"
    },
    "apiture:retry": {
      "href": "/auth/challenges/retriedAuthenticators?authenticator=7fadd35b-6f6b-4901-b1ba-d3b91c9dcee3"
    },
    "apiture:verify": {
      "href": "/auth/challenges/verifiedAuthenticators"
    }
  },
  "_id": "7fadd35b-6f6b-4901-b1ba-d3b91c9dcee3",
  "userId": "b2720469-3497-4b82-8b85-30f2155aa66d",
  "state": "started",
  "maskedTarget": "****1234",
  "type": {
    "name": "sms",
    "label": "SMS Code",
    "description": "Enter a code sent via SMS to the user's preferred mobile device.",
    "category": "device",
    "schema": {
      "title": "SMS attributes",
      "description": "Schema for an authenticator's `attributes` when the authenticator type is `sms`.",
      "type": "object",
      "required": [
        "code",
        "length"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "A code that was sent to the user's mobile device via SMS. The user should enter the code in the app, then set `attributes.code` to that. The length of the code (the number of characters or digits) must equal the `length'.",
          "minLength": 3,
          "maxLength": 10
        },
        "length": {
          "description": "The number of digits/characters that are sent to the user via SMS.",
          "type": "integer",
          "minimum": 3,
          "maximum": 10,
          "example": 6
        }
      }
    }
  },
  "maximumRetries": 3,
  "retryCount": 1,
  "createdAt": "2019-08-23T12:42:50.375Z",
  "expiresAt": "2019-08-23T13:12:50.375Z"
}

Authenticator (v1.2.0)

Representation of authenticators which verify a user's identity.

Response and request bodies using this authenticator schema may contain the following links:

RelSummaryMethod
apiture:retryRetry an authenticatorPOST
apiture:startStart an authenticatorPOST
apiture:verifyVerify a user's identityPOST
apiture:challengeFetch a representation of this challengeGET

This schema was resolved from auth/authenticator.

Properties

NameDescription
Authenticator (v1.2.0) object
Representation of authenticators which verify a user's identity.

Response and request bodies using this authenticator schema may contain the following links:

RelSummaryMethod
apiture:retryRetry an authenticatorPOST
apiture:startStart an authenticatorPOST
apiture:verifyVerify a user's identityPOST
apiture:challengeFetch a representation of this challengeGET

This schema was resolved from auth/authenticator.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
type authenticatorType
The type of this authenticator. This must be one of the items in the /authenticatorTypes resource.
maximumRetries integer
The maximum number of times the user may retry this authenticator. If 0, the user must authenticate correctly on the first try. When an authenticator is retried, the client should POST to the apiture:retry link on the authenticators; absence of the link means the user cannot retry the authenticator. The default is 3.
minimum: 0
maximum: 10
_id string
The unique identifier for this authenticator resource. This is an immutable opaque string assigned upon creation.
read-only
userId string
The user ID of the user who is requested to verify their identity.
state authenticatorState
The state of this authenticator. This is derived and read-only.
read-only
enum values: pending, started, verified, failed, expired
maskedTarget string
A masked value which helps identify the specific authenticator target, such as a masked mobile phone or a masked email address.
retryCount integer
The actual number of times a user has retried this authenticator.
read-only
minimum: 0
maximum: 10
attributes object
Data collected from the user that is used to verify this authenticator. This data conforms to the schema defined in the type. For example, for sms, the attributes must contains a code.
createdAt string(date-time)
The time stamp when authenticator was created, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
verifiedAt string(date-time)
The time stamp when authenticator was verified in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
failedAt string(date-time)
The time stamp when the user failed to verify their identity verification (authentication) for this challenge, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
expiresAt string(date-time)
The time stamp when the this challenge expires, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time

authenticatorCategory

"knowledge"

authenticatorCategory (v1.0.0)

Categories which help classify and organize different authenticator types:

  • knowledge - Something you know, such as a password or answers to personal questions.
  • biometric - Something you are, such as facial recognition or fingerprints.
  • device - Something you have, such as a mobile phone (for confirmation via a code sent via text message) or an electronic key.

authenticatorCategory strings may have one of the following enumerated values:

ValueDescription
knowledgeKnowledge: Authenticate with information the user knows, such as a password or answers to personal questions.
biometricBiometric: Authenticate with physical characteristics of the user, such as fingerprints, voiceprint, or faceprint.
deviceDevice: Authenticate with a device that the user has, such as a mobile phone or an electronic key.

These enumeration values are further described by the label group named authenticatorCategory in the response from the getLabels operation.

This schema was resolved from auth/authenticatorCategory.

type: string


enum values: knowledge, biometric, device

authenticatorState

"pending"

Authenticator State (v1.0.0)

The state of a challenge authenticator resource.

  • The startAuthenticator operation (link apiture:start) changes the state from pending to started.
  • The retryAuthenticator operation (link apiture:retry) changes the state to started and is only allowed if the authenticator has more retries available.
  • The verifyAuthenticator operation (link apiture:verify) validates the attributes and changes the state to verified if valid or to failed if invalid.

authenticatorState strings may have one of the following enumerated values:

ValueDescription
pendingPending: The authenticator is created but not yet started.
startedStarted: The user has started the authenticator.
verifiedVerified: The user corresponding verified the authenticator.
failedFailed: The user failed the authenticators criteria.
expiredExpired: The authenticator expired before the user completed the criteria.

These enumeration values are further described by the label group named authenticatorState in the response from the getLabels operation.

This schema was resolved from auth/authenticatorState.

type: string


enum values: pending, started, verified, failed, expired

authenticatorType

{
  "name": "sms",
  "label": "SMS code",
  "description": "Enter a code sent via SMS to the user's preferred mobile device.",
  "category": "device",
  "schema": {
    "title": "SMS attributes",
    "description": "Schema for an authenticator's `attributes` when the authenticator type is `sms`.",
    "type": "object",
    "required": [
      "code",
      "length"
    ],
    "properties": {
      "code": {
        "type": "string",
        "description": "A code that was sent to the user's mobile device via SMS. The user should enter the code in the app, then set `attributes.code` to that. The length of the code (the number of characters or digits) must equal the `length'.",
        "minLength": 3,
        "maxLength": 10
      },
      "length": {
        "description": "The number of digits/characters that are sent to the user via SMS.",
        "type": "integer",
        "minimum": 3,
        "maximum": 10,
        "example": 6
      }
    }
  }
}

Authenticator Type (v1.0.0)

An authenticator type description.

This schema was resolved from auth/authenticatorType.

Properties

NameDescription
Authenticator Type (v1.0.0) object
An authenticator type description.

This schema was resolved from auth/authenticatorType.

name string
The name of this authenticator; also the key in the authenticatorTypes object.
label string
A localized label or title which may be used labels or other UI controls which present a value.
description string
A more detailed localized description of an authenticator type.
language string
The actual natural language tag to which this authentication type description is associated, as per RFC 7231. If omitted, this serves as the default.
category authenticatorCategory
The authentication category.
enum values: knowledge, biometric, device
schema object
The JSON schema which describe the attributes object for all authenticators of this type. For example, for sms, the schema defines a required code string.

billPayPaymentInstruction

{}

Wire Payment for a Payment Instruction (v0.1.0)

The data used to pay a payee via wire transfer. (This will be defined in a future release of the API.)

Properties

NameDescription
Wire Payment for a Payment Instruction (v0.1.0) object
The data used to pay a payee via wire transfer. (This will be defined in a future release of the API.)

challenge

{
  "_profile": "https://production.api.apiture.com/schemas/auth/challenge/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "/auth/challenges/5d63053d-435c-4455-a0b5-6f88ab729d1a"
    },
    "apiture:redeem": {
      "href": "/auth/redeemedChallenges?challenge=5d63053d-435c-4455-a0b5-6f88ab729d1a"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "reason": "Transfer amount much higher than normal",
  "contextUri": "https://fi.apiture.com/transfers/scheduledTransfers/50b9df19-d6bf-4ac0-b5f4-3e6448b7dacd",
  "minimumAuthenticatorCount": 1,
  "authenticators": [
    {
      "_id": "7fadd35b-6f6b-4901-b1ba-d3b91c9dcee3",
      "_profile": "https://production.api.apiture.com/schemas/auth/authenticator/v1.2.0/profile.json",
      "userId": "b2720469-3497-4b82-8b85-30f2155aa66d",
      "state": "started",
      "type": {
        "name": "sms",
        "label": "SMS Code",
        "description": "Enter a code sent via SMS to the user's preferred mobile device.",
        "category": "device",
        "schema": {
          "title": "SMS attributes",
          "description": "Schema for an authenticator's `attributes` when the authenticator type is `sms`.",
          "type": "object",
          "required": [
            "code",
            "length"
          ],
          "properties": {
            "code": {
              "type": "string",
              "description": "A code that was sent to the user's mobile device via SMS. The user should enter the code in the app, then set `attributes.code` to that. The length of the code (the number of characters or digits) must equal the `length'.",
              "minLength": 3,
              "maxLength": 10
            },
            "length": {
              "description": "The number of digits/characters that are sent to the user via SMS.",
              "type": "integer",
              "minimum": 3,
              "maximum": 10,
              "example": 6
            }
          }
        }
      },
      "maximumRetries": 3,
      "retryCount": 1,
      "createdAt": "2019-08-23T12:42:50.375Z",
      "expiresAt": "2019-08-23T13:12:50.375Z",
      "_links": {
        "self": {
          "href": "/auth/challenges/0399abed-fd3d-4830-a88b-30f38b8a365c/authenticators/7fadd35b-6f6b-4901-b1ba-d3b91c9dcee3"
        },
        "apiture:challenge": {
          "href": "/auth/challenges/0399abed-fd3d-4830-a88b-30f38b8a365c"
        },
        "apiture:retry": {
          "href": "/auth/challenges/retriedAuthenticators?authenticator=7fadd35b-6f6b-4901-b1ba-d3b91c9dcee3"
        },
        "apiture:verify": {
          "href": "/auth/challenges/verifiedAuthenticators"
        }
      }
    }
  ],
  "maximumRedemptionCount": 1,
  "redemptionCount": 0,
  "state": "pending",
  "createdAt": "2019-08-23T11:37:55.375Z",
  "expiresAt": "2019-08-23T12:37:55.375Z"
}

Challenge (v1.2.0)

A resource which represents an identity verification challenge to a user. The user must verify one or more of the authentication methods defined in this challenge in order to proceed with a banking operation (such as scheduling a larger than normal transfer, adding a joint owner or authorized signer to an account, or changing their mailing address or mobile phone number).

Response and request bodies using this challenge schema may contain the following links:

RelSummaryMethod
apiture:redeemRedeem or use a challengePOST

This schema was resolved from auth/challenge.

Properties

NameDescription
Challenge (v1.2.0) object
A resource which represents an identity verification challenge to a user. The user must verify one or more of the authentication methods defined in this challenge in order to proceed with a banking operation (such as scheduling a larger than normal transfer, adding a joint owner or authorized signer to an account, or changing their mailing address or mobile phone number).

Response and request bodies using this challenge schema may contain the following links:

RelSummaryMethod
apiture:redeemRedeem or use a challengePOST

This schema was resolved from auth/challenge.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
reason string
The reason the application or service has issued a challenge requesting the user verify their identity. This is for labeling or informational purposes.
contextUri string(uri)
The URI of a resource that establishes the context in which the user is asked to authenticate their identity. For example, for this may be for a pending transfer, a user's mailing address, or an account if adding a joint owner.
format: uri
maxLength: 2048
userId string
The user ID of the user who is requested to verify their identity. The default is the userID of the authenticated person creating the challenge.
minimumAuthenticatorCount integer
The minimum number of different authenticators the user must verify in order to satisfy the identity challenge. The default is 1.
minimum: 0
maximum: 4
maximumRedemptionCount integer
The maximum number of times the challenge may be used or redeemed. The default is 1.
minimum: 1
_id string
The unique identifier for this challenge resource. This is an immutable opaque string assigned upon creation.
read-only
redemptionCount integer
How many times the challenge has been redeemed.
read-only
state challengeState
The state of this authenticator.
read-only
enum values: pending, started, verified, failed, redeemed, expired
createdAt string(date-time)
The time stamp when challenge was created, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
authenticators array: [authenticator]
An array of authenticators with which the user can verify their identity. This is derived; the array and the authenticators are constructed in the createChallenge operation.
read-only
items: object
redeemable boolean
true if and only if the challenge may be redeemed. This is derived from the states of the challenge's authenticators; if the number of verified authenticators meets or exceeds the minimumAuthenticatorCount, the challenge becomes verified and may be redeemed via a POST to href in the challenge's apiture:redeem link.
read-only
verifiedAt string(date-time)
The time stamp when challenge was verified in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
failedAt string(date-time)
The time stamp when the user failed to verify their identity verification (authentication) for this challenge, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
expiresAt string(date-time)
The time stamp when the this challenge expires, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time
redemptionHistory array: [string]
The time stamps when a service or operation redeemed this challenge, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ). Item 0 is the time stamp the challenge was first redeemed, item 1 is the time stamp of the next redemption, and so on.
read-only
items: string(date-time)
» read-only
» format: date-time
code string
An optional authentication code which is only returned in the challenge resource if both a) the platform assigned the code when constructing the challenge), and b) the user has successfully verified the challenge. The client must re-fetch the verified challenge in order to access this property.
read-only
minLength: 16
maxLength: 128

challengeError

{
  "_id": "2eae46e1575c0a7b0115a4b3",
  "message": "Descriptive error message...",
  "statusCode": 422,
  "type": "errorType1",
  "remediation": "Remediation string...",
  "occurredAt": "2018-01-25T05:50:52.375Z",
  "errors": [
    {
      "_id": "ccdbe2c5c938a230667b3827",
      "message": "An optional embedded error"
    },
    {
      "_id": "dbe9088dcfe2460f229338a3",
      "message": "Another optional embedded error"
    }
  ],
  "_links": {
    "describedby": {
      "href": "https://developer.apiture.com/errors/errorType1"
    }
  }
}

Challenge Error (v1.2.0)

The operation error description with an embedded identity challenge.

This schema was resolved from auth/challengeError.

Properties

NameDescription
Challenge Error (v1.2.0) object
The operation error description with an embedded identity challenge.

This schema was resolved from auth/challengeError.

message string (required)
A localized message string describing the error condition.
_id string
A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string.
read-only
statusCode integer
The HTTP status code associate with this error.
minimum: 100
maximum: 599
type string
An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the statusCode. For example, instead of just 400 Bad Request, the type may be much more specific. such as integerValueNotInAllowedRange or numericValueExceedsMaximum or stringValueNotInAllowedSet.
occurredAt string(date-time)
An RFC 3339 UTC time stamp indicating when the error occurred.
format: date-time
attributes attributes
Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type.
remediation string
An optional localized string which provides hints for how the user or client can resolve the error.
errors array: [error]
An optional array of nested error objects. This property is not always present.
items: object
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
Embedded objects
» challenge challenge
The details of the identity verification challenge.

challengeErrorResponse

{
  "_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "Description of the error will appear here.",
    "statusCode": 422,
    "type": "specificErrorType",
    "attributes": {
      "value": "Optional attribute describing the error"
    },
    "remediation": "Optional instructions to remediate the error may appear here.",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://production.api.apiture.com/errors/specificErrorType"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Challenge Error Response (v1.2.0)

When an operation requires an additional identity verification challenge, it returns a 401 Unauthorized response status code and an error response with a challenge resource embedded in the _error._embedded.challenge. This informs the caller that they should verify the challenge via one or more of its authenticators, then retry the operation with the Apiture-Challenge header that references the challenge's _id.

This schema was resolved from auth/challengeErrorResponse.

Properties

NameDescription
Challenge Error Response (v1.2.0) object
When an operation requires an additional identity verification challenge, it returns a 401 Unauthorized response status code and an error response with a challenge resource embedded in the _error._embedded.challenge. This informs the caller that they should verify the challenge via one or more of its authenticators, then retry the operation with the Apiture-Challenge header that references the challenge's _id.

This schema was resolved from auth/challengeErrorResponse.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error challengeError
The description of the error.

challengeState

"pending"

Challenge States (v1.0.0)

The state of an identity challenge resource. This is derived based on the state of the challenge's authenticators.

challengeState strings may have one of the following enumerated values:

ValueDescription
pendingPending: The challenge is created but not yet started.
startedStarted: The user has started the challenge and associated authenticator(s).
verifiedVerified: The user correctly verified the corresponding authenticator(s), marking the challenge as verified.
failedFailed: The challenge has failed, often because the user failed one or more of the authenticators.
redeemedRedeemed: The user has redeemed (used) the challenge.
expiredExpired: The challenge has expired without being verified.

These enumeration values are further described by the label group named challengeState in the response from the getLabels operation.

This schema was resolved from auth/challengeState.

type: string


enum values: pending, started, verified, failed, redeemed, expired

collection

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  }
}

Collection (v2.1.1)

A collection of resources. This is an abstract model schema which is extended to define specific resource collections.

This schema was resolved from common/collection.

Properties

NameDescription
Collection (v2.1.1) object
A collection of resources. This is an abstract model schema which is extended to define specific resource collections.

This schema was resolved from common/collection.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

configurationGroup

{
  "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "/configurations/groups/basic"
    }
  },
  "name": "basic",
  "label": "Basic Settings",
  "description": "The basic settings for the Transfers API",
  "schema": {
    "type": "object",
    "properties": {
      "dailyLimit": {
        "type": "number",
        "description": "The daily limit for the number of transfers"
      },
      "cutoffTime": {
        "type": "string",
        "format": "time",
        "description": "The cutoff time for scheduling transfers for the current day"
      }
    }
  },
  "values": {
    "dailyLimit": 5,
    "cutoffTime": 63000
  }
}

Configuration Group (v2.1.1)

Represents a configuration group.

This schema was resolved from configurations/configurationGroup.

Properties

NameDescription
Configuration Group (v2.1.1) object
Represents a configuration group.

This schema was resolved from configurations/configurationGroup.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
name string
The name of this configuration group, must be unique within the set of all resources of this type.
minLength: 1
maxLength: 48
pattern: [a-zA-Z][-\w_]*
label string
The text label for this resource, suitable for presentation to the client.
minLength: 1
maxLength: 128
description string
The full description for this resource, suitable for presentation to the client.
minLength: 1
maxLength: 4096
schema configurationSchema
The schema which defines the name and types of the variables that are part of this configuration definition. Property names must be simple identifiers which follow the pattern letter [letter | digit | - | _]*.

This is implicitly a schema for type: object and contains the properties.

The values in a configuration conform to the schema. The names and types are described with a subset of JSON Schema Core and JSON Schema Validation similar to that used to define schemas in OpenAPI Specification 2.0.

This schema was resolved from configurations/configurationSchema.

values configurationValues
The data values associated with this configuration group: the group's variable names and values. These values must conform to this item's schema.

Note: the schema may also contain default values which, if present, are used if a value is not set in the definition's values.

For example, multiple configurations may use the same schema that defines values a, b, and c, but each configuration may have their own unique values for a, b, and c which is separate from the schema.

This schema was resolved from configurations/configurationValues.

configurationGroupSummary

{
  "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroupSummary/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "/configurations/groups/basic"
    }
  },
  "name": "basic",
  "label": "Basic Settings",
  "description": "The basic settings for the Transfers API"
}

Configuration Group Summary (v2.1.1)

A summary of the data contained within a configuration group resource.

This schema was resolved from configurations/configurationGroupSummary.

Properties

NameDescription
Configuration Group Summary (v2.1.1) object
A summary of the data contained within a configuration group resource.

This schema was resolved from configurations/configurationGroupSummary.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
name string
The name of this configuration group, must be unique within the set of all resources of this type.
minLength: 1
maxLength: 48
pattern: [a-zA-Z][-\w_]*
label string
The text label for this resource, suitable for presentation to the client.
minLength: 1
maxLength: 128
description string
The full description for this resource, suitable for presentation to the client.
minLength: 1
maxLength: 4096

configurationGroups

{
  "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "/configurations/configurations/groups?start=10&limit=10"
    },
    "first": {
      "href": "/configurations/configurations/groups?start=0&limit=10"
    },
    "next": {
      "href": "/configurations/configurations/groups?start=20&limit=10"
    },
    "collection": {
      "href": "/configurations/configurations/groups"
    }
  },
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "configurationGroups",
  "_embedded": {
    "items": [
      {
        "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.1/profile.json",
        "_links": {
          "self": {
            "href": "/configurations/groups/basic"
          }
        },
        "name": "basic",
        "label": "Basic Settings",
        "description": "The basic settings for the Transfers API"
      },
      {
        "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.1/profile.json",
        "_links": {
          "self": {
            "href": "/configurations/groups/calendar"
          }
        },
        "name": "calendar",
        "label": "Calendar",
        "description": "A calendar that specifies which dates are valid for performing transfers (e.g., weekdays excluding federal holidays)"
      }
    ]
  }
}

Configuration Group Collection (v2.1.1)

Collection of configuration groups. The items in the collection are ordered in the _embedded object with name items. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

This schema was resolved from configurations/configurationGroups.

Properties

NameDescription
Configuration Group Collection (v2.1.1) object
Collection of configuration groups. The items in the collection are ordered in the _embedded object with name items. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

This schema was resolved from configurations/configurationGroups.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded configurationGroupsEmbedded
Embedded objects.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

configurationGroupsEmbedded

{
  "items": [
    {
      "_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroupSummary/v2.1.1/profile.json",
      "_links": {
        "self": {
          "href": "/configurations/groups/basic"
        }
      },
      "name": "basic",
      "label": "Basic Settings",
      "description": "The basic settings for the Transfers API"
    }
  ]
}

Configuration Groups Embedded Objects (v1.1.1)

Objects embedded in the configurationGroupscollection.

This schema was resolved from configurations/configurationGroupsEmbedded.

Properties

NameDescription
Configuration Groups Embedded Objects (v1.1.1) object
Objects embedded in the configurationGroupscollection.

This schema was resolved from configurations/configurationGroupsEmbedded.

items array: [configurationGroupSummary]
An array containing a page of configuration group items.
items: object

configurationSchema

{
  "type": "object",
  "properties": {
    "dailyLimit": {
      "type": "number",
      "description": "The daily limit for the number of transfers"
    },
    "cutoffTime": {
      "type": "string",
      "format": "time",
      "description": "The cutoff time for scheduling transfers for the current day"
    }
  }
}

Configuration Schema (v2.1.0)

The schema which defines the name and types of the variables that are part of this configuration definition. Property names must be simple identifiers which follow the pattern letter [letter | digit | - | _]*.

This is implicitly a schema for type: object and contains the properties.

The values in a configuration conform to the schema. The names and types are described with a subset of JSON Schema Core and JSON Schema Validation similar to that used to define schemas in OpenAPI Specification 2.0.

This schema was resolved from configurations/configurationSchema.

Properties

NameDescription
Configuration Schema (v2.1.0) object
The schema which defines the name and types of the variables that are part of this configuration definition. Property names must be simple identifiers which follow the pattern letter [letter | digit | - | _]*.

This is implicitly a schema for type: object and contains the properties.

The values in a configuration conform to the schema. The names and types are described with a subset of JSON Schema Core and JSON Schema Validation similar to that used to define schemas in OpenAPI Specification 2.0.

This schema was resolved from configurations/configurationSchema.

Configuration Schema Value (v2.0.0) configurationSchemaValue
The data associated with this configuration schema.

This schema was resolved from configurations/configurationSchemaValue.

configurationSchemaValue

{}

Configuration Schema Value (v2.0.0)

The data associated with this configuration schema.

This schema was resolved from configurations/configurationSchemaValue.

Properties

NameDescription
Configuration Schema Value (v2.0.0) object
The data associated with this configuration schema.

This schema was resolved from configurations/configurationSchemaValue.

configurationValue

{}

Configuration Value (v2.0.0)

The data associated with this configuration.

This schema was resolved from configurations/configurationValue.

Properties

NameDescription
Configuration Value (v2.0.0) object
The data associated with this configuration.

This schema was resolved from configurations/configurationValue.

configurationValues

{
  "dailyLimit": 5,
  "cutoffTime": 63000
}

Configuration Values (v2.0.0)

The data values associated with this configuration group: the group's variable names and values. These values must conform to this item's schema.

Note: the schema may also contain default values which, if present, are used if a value is not set in the definition's values.

For example, multiple configurations may use the same schema that defines values a, b, and c, but each configuration may have their own unique values for a, b, and c which is separate from the schema.

This schema was resolved from configurations/configurationValues.

Properties

NameDescription
Configuration Values (v2.0.0) object
The data values associated with this configuration group: the group's variable names and values. These values must conform to this item's schema.

Note: the schema may also contain default values which, if present, are used if a value is not set in the definition's values.

For example, multiple configurations may use the same schema that defines values a, b, and c, but each configuration may have their own unique values for a, b, and c which is separate from the schema.

This schema was resolved from configurations/configurationValues.

Configuration Value (v2.0.0) configurationValue
The data associated with this configuration.

This schema was resolved from configurations/configurationValue.

createOrganizationPayee

{
  "name": "B&B Concrete"
}

Create Organization Payee (v1.1.0)

Properties of a payee that is an organization.

Properties

NameDescription
Create Organization Payee (v1.1.0) object
Properties of a payee that is an organization.
name string (required)
The organization's name.
maxLength: 128

createPayee

{
  "_profile": "https://production.api.apiture.com/schemas/payments/createPayee/v1.2.2/profile.json",
  "_links": {},
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  }
}

Create Payee (v1.2.2)

The recipient of payments, also referred to as the beneficiary or receiver in specific payment methods. A payee represents a person or an oganization and contains their name and address. If the type is person, the person property contains the person's name and the organization property is ignored. If the type is organization, the organization property contains the organization's name and the person property is ignored.

With some payment methods, the bank customer may also request a payment from this person or organization.

Properties

NameDescription
Create Payee (v1.2.2) object
The recipient of payments, also referred to as the beneficiary or receiver in specific payment methods. A payee represents a person or an oganization and contains their name and address. If the type is person, the person property contains the person's name and the organization property is ignored. If the type is organization, the organization property contains the organization's name and the person property is ignored.

With some payment methods, the bank customer may also request a payment from this person or organization.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
type payeeType (required)
The type of the payee, either a person or an organization. If type is person, the person property must be included; if type is organization, the organization property must be included instead.
enum values: person, organization
person createPersonPayee
Properties of a person payee.
organization createOrganizationPayee
Properties of an organization payee.
address createPayeeAddress (required)
The payee's primary or mailing address. The financial institution may use the address to verify the payee. For some payment methods such as bill payment, a check is sent to this address.

createPayeeAddress

{
  "addressLine1": "500 N. Elm St",
  "addressLine2": "Suite 5555",
  "city": "Norman",
  "regionCode": "OK",
  "countryCode": "US",
  "postalCode": "73070"
}

Create Payee Address (v1.1.1)

Model to create a payee address. If the address is a US address, the regionCode is required, else the region is required.

Properties

NameDescription
Create Payee Address (v1.1.1) object
Model to create a payee address. If the address is a US address, the regionCode is required, else the region is required.
addressLine1 string (required)
The first street address line of the address, normally a house number and street name.
minLength: 4
maxLength: 128
addressLine2 string
The optional second street address line of the address.
maxLength: 128
city string (required)
The name of the city or municipality.
minLength: 2
maxLength: 128
regionCode string
The mailing address region code, for a US address. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
region string
The mailing address region name for a non-US address.
minLength: 2
maxLength: 128
postalCode string (required)
The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code. This is normalized to uppercase.
minLength: 5
maxLength: 10
countryCode string (required)
The ISO 3166-1 alpha-2 country code. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$

createPaymentInstruction

{
  "_profile": "https://production.api.apiture.com/schemas/payments/createPaymentInstruction/v1.3.1/profile.json",
  "_links": {
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "amount": {
    "value": "256.50",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Create Payment Instruction (v1.3.1)

Request body to create a new payment instruction. In addition to the required payee, amount, and curency, the request must contain the apiture:account link of the account where the payment is debited.

Response and request bodies using this createPaymentInstruction schema may contain the following links:

RelSummaryMethod
apiture:account Account where the payment is debitedGET

Properties

NameDescription
Create Payment Instruction (v1.3.1) object

Request body to create a new payment instruction. In addition to the required payee, amount, and curency, the request must contain the apiture:account link of the account where the payment is debited.

Response and request bodies using this createPaymentInstruction schema may contain the following links:

RelSummaryMethod
apiture:account Account where the payment is debitedGET
_links links (required)
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
amount paymentAmount (required)
The payment amount.
purpose string
The reason the user gave for making this payment.
maxLength: 500
memo string
A secondary memo.
maxLength: 500
payee payee (required)
The recipient or beneficiary of the payment, or for requests for payment, the person or organizaton from which the customer is requesting a payment.
paymentMethod paymentInstructionPaymentMethod (required)
The details of the payment method used in this payment instruction.

createPersonPayee

{
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith"
}

Create Person Payee (v1.1.0)

Attributes of a payee that is a person.

Properties

NameDescription
Create Person Payee (v1.1.0) object
Attributes of a payee that is a person.
firstName string (required)
The person's first name (or given name).
maxLength: 80
middleName string
The person's middle name.
maxLength: 80
lastName string (required)
The person's last name (or surname).
maxLength: 80

error

{
  "_id": "2eae46e1575c0a7b0115a4b3",
  "message": "Descriptive error message...",
  "statusCode": 422,
  "type": "errorType1",
  "remediation": "Remediation string...",
  "occurredAt": "2018-01-25T05:50:52.375Z",
  "errors": [
    {
      "_id": "ccdbe2c5c938a230667b3827",
      "message": "An optional embedded error"
    },
    {
      "_id": "dbe9088dcfe2460f229338a3",
      "message": "Another optional embedded error"
    }
  ],
  "_links": {
    "describedby": {
      "href": "https://developer.apiture.com/errors/errorType1"
    }
  }
}

Error (v2.1.0)

Describes an error in an API request or in a service called via the API.

This schema was resolved from common/error.

Properties

NameDescription
Error (v2.1.0) object
Describes an error in an API request or in a service called via the API.

This schema was resolved from common/error.

message string (required)
A localized message string describing the error condition.
_id string
A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string.
read-only
statusCode integer
The HTTP status code associate with this error.
minimum: 100
maximum: 599
type string
An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the statusCode. For example, instead of just 400 Bad Request, the type may be much more specific. such as integerValueNotInAllowedRange or numericValueExceedsMaximum or stringValueNotInAllowedSet.
occurredAt string(date-time)
An RFC 3339 UTC time stamp indicating when the error occurred.
format: date-time
attributes attributes
Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type.
remediation string
An optional localized string which provides hints for how the user or client can resolve the error.
errors array: [error]
An optional array of nested error objects. This property is not always present.
items: object

errorResponse

{
  "_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "Description of the error will appear here.",
    "statusCode": 422,
    "type": "specificErrorType",
    "attributes": {
      "value": "Optional attribute describing the error"
    },
    "remediation": "Optional instructions to remediate the error may appear here.",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://production.api.apiture.com/errors/specificErrorType"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Error Response (v2.1.0)

Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details.

This schema was resolved from common/errorResponse.

Properties

NameDescription
Error Response (v2.1.0) object
Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details.

This schema was resolved from common/errorResponse.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only

internationalPaymentAddress

{
  "addressLine1": "555 N Front Street",
  "addressLine2": "Suite 5555",
  "city": "Wilmington",
  "regionCode": "NC",
  "countryCode": "US",
  "postalCode": "28401-5405"
}

International Payment Address (v1.0.1)

The international address used in a payment instruction.

Properties

NameDescription
International Payment Address (v1.0.1) object
The international address used in a payment instruction.
addressLine1 string
The first street address line of the address, normally a house number and street name.
minLength: 4
maxLength: 128
addressLine2 string
The optional second street address line of the address.
maxLength: 128
city string
The name of the city or municipality.
minLength: 2
maxLength: 128
regionCode string
The mailing address region code, for a US address. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
region string
The mailing address region name for a non-US address.
minLength: 2
maxLength: 128
postalCode string
The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code. This is normalized to uppercase.
minLength: 5
maxLength: 10
countryCode string
The ISO 3166-1 alpha-2 country code. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$

labelGroup

{
  "unknown": {
    "label": "Unknown",
    "code": "0",
    "hidden": true
  },
  "under1Million": {
    "label": "Under $1M",
    "code": "1",
    "range": "[0,1000000.00)",
    "variants": {
      "fr": {
        "label": "Moins de $1M"
      }
    }
  },
  "from1to10Million": {
    "label": "$1M to $10M",
    "code": "2",
    "range": "[1000000.00,10000000.00)",
    "variants": {
      "fr": {
        "label": "$1M \\u00e0 $10M"
      }
    }
  },
  "from10to100Million": {
    "label": "$10M to $100M",
    "code": "3",
    "range": "[10000000.00,100000000.00)",
    "variants": {
      "fr": {
        "label": "$10M \\u00e0 $100M"
      }
    }
  },
  "over100Million": {
    "label": "Over $100,000,000.00",
    "code": "4",
    "range": "[100000000.00,]",
    "variants": {
      "fr": {
        "label": "Plus de $10M"
      }
    }
  },
  "other": {
    "label": "Other",
    "code": "254"
  }
}

Label Group (v1.0.3)

A map that defines labels for the items in a group. This is a map from each item name → a labelItem object. For example, consider a JSON response that includes a property named revenueEstimate; the values for revenueEstimate must be one of the items in the group named estimatedAnnualRevenue, with options ranging under1Million, to over100Million. The item name is used as the selected value in an Apiture representation, such as { ..., "revenueEstimate" : "from10to100Million" , ...}, and the item with the name from10to100Million defines the presentation labels for that item, as well as other metadata about that choice: this is the range [10000000.00,100000000.00).

This allows the client to let the user select a value from a list, such as the following derived from the labels in the example:

  • Unknown
  • Under $1M
  • $1M to $10M
  • $10M to $100M
  • $100M or more

Note that the other item is hidden from the selection list, as that item is marked as hidden. For items which define numeric ranges, a client may instead let the customer directly enter their estimated annual revenue as a number, such as 4,500,000.00. The client can then match that number to one of ranges in the items and set the revenueEstimate to the corresponding item's name: { ..., "revenueEstimate" : "from1to10Million", ... }.

This schema was resolved from common/labelGroup.

Properties

NameDescription
Label Group (v1.0.3) object
A map that defines labels for the items in a group. This is a map from each item namea labelItem object. For example, consider a JSON response that includes a property named revenueEstimate; the values for revenueEstimate must be one of the items in the group named estimatedAnnualRevenue, with options ranging under1Million, to over100Million. The item name is used as the selected value in an Apiture representation, such as { ..., "revenueEstimate" : "from10to100Million" , ...}, and the item with the name from10to100Million defines the presentation labels for that item, as well as other metadata about that choice: this is the range [10000000.00,100000000.00).

This allows the client to let the user select a value from a list, such as the following derived from the labels in the example:

  • Unknown
  • Under $1M
  • $1M to $10M
  • $10M to $100M
  • $100M or more

Note that the other item is hidden from the selection list, as that item is marked as hidden. For items which define numeric ranges, a client may instead let the customer directly enter their estimated annual revenue as a number, such as 4,500,000.00. The client can then match that number to one of ranges in the items and set the revenueEstimate to the corresponding item's name: { ..., "revenueEstimate" : "from1to10Million", ... }.

This schema was resolved from common/labelGroup.

Label Item (v1.0.2) labelItem
An item in a labelGroup, with a set of variants which contains different localized labels for the item. Each simpleLabel variant defines the presentation text label and optional description for a language. Items may also have a lookup code to map to external systems, a numeric range, and a hidden boolean to indicate the item is normally hidden in the UI.

This schema was resolved from common/labelItem.

labelGroups

{
  "_profile": "https://production.api.apiture.com/schemas/common/labelGroups/v1.1.3/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "groups": {
    "firstGroup": {
      "unknown": {
        "label": "Unknown",
        "code": "0",
        "hidden": true
      },
      "key1": {
        "label": "Label for Key 1",
        "code": "1",
        "variants": {
          "es": {
            "label": "(Spanish label for Key 1)"
          },
          "fr": {
            "label": "(French label for Key 1)"
          }
        }
      },
      "key2": {
        "label": "Label for Key 2",
        "code": "2",
        "variants": {
          "es": {
            "label": "(Spanish label for Key 2)"
          },
          "fr": {
            "label": "(French label for Key 2)"
          }
        }
      },
      "key3": {
        "label": "Label for Key 3",
        "code": "3",
        "variants": {
          "es": {
            "label": "(Spanish label for Key 3)"
          },
          "fr": {
            "label": "(French label for Key 3)"
          }
        }
      },
      "other": {
        "label": "Other",
        "variants": {
          "es": {
            "label": "(Spanish label for Other)"
          },
          "fr": {
            "label": "(French label for Other)"
          }
        },
        "code": "254"
      }
    },
    "secondGroup": {
      "unknown": {
        "label": "Unknown",
        "code": "?",
        "hidden": true
      },
      "optionA": {
        "label": "Option A",
        "code": "A"
      },
      "optionB": {
        "label": "Option B",
        "code": "B"
      },
      "optionC": {
        "label": "Option C",
        "code": "C"
      },
      "other": {
        "label": "Other",
        "code": "_"
      }
    }
  }
}

Label Groups (v1.1.3)

A set of named groups of labels, each of which contains multiple item labels.

The abbreviated example shows two groups, one named structure and one named estimatedAnnualRevenue. The first has items with names such as corporation, llc and soleProprietorship, with text labels for each in the default and in French. The second has items for estimated revenue ranges but no localized labels. For example, the item named from1to10Million has the label "$1M to $10M" and the range [1000000.00,10000000.00).

This schema was resolved from common/labelGroups.

Properties

NameDescription
Label Groups (v1.1.3) object
A set of named groups of labels, each of which contains multiple item labels.

The abbreviated example shows two groups, one named structure and one named estimatedAnnualRevenue. The first has items with names such as corporation, llc and soleProprietorship, with text labels for each in the default and in French. The second has items for estimated revenue ranges but no localized labels. For example, the item named from1to10Million has the label "$1M to $10M" and the range [1000000.00,10000000.00).

This schema was resolved from common/labelGroups.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
groups object
Groups of localized labels. This maps group namesa group of labels within that group.
» Label Group (v1.0.3) labelGroup
A map that defines labels for the items in a group. This is a map from each item namea labelItem object. For example, consider a JSON response that includes a property named revenueEstimate; the values for revenueEstimate must be one of the items in the group named estimatedAnnualRevenue, with options ranging under1Million, to over100Million. The item name is used as the selected value in an Apiture representation, such as { ..., "revenueEstimate" : "from10to100Million" , ...}, and the item with the name from10to100Million defines the presentation labels for that item, as well as other metadata about that choice: this is the range [10000000.00,100000000.00).

This allows the client to let the user select a value from a list, such as the following derived from the labels in the example:

  • Unknown
  • Under $1M
  • $1M to $10M
  • $10M to $100M
  • $100M or more

Note that the other item is hidden from the selection list, as that item is marked as hidden. For items which define numeric ranges, a client may instead let the customer directly enter their estimated annual revenue as a number, such as 4,500,000.00. The client can then match that number to one of ranges in the items and set the revenueEstimate to the corresponding item's name: { ..., "revenueEstimate" : "from1to10Million", ... }.

This schema was resolved from common/labelGroup.

labelItem

{
  "label": "Over $100,000,000.00",
  "code": "4",
  "range": "[100000000.00,]",
  "variants": {
    "fr": {
      "label": "Plus de $10M"
    }
  }
}

Label Item (v1.0.2)

An item in a labelGroup, with a set of variants which contains different localized labels for the item. Each simpleLabel variant defines the presentation text label and optional description for a language. Items may also have a lookup code to map to external systems, a numeric range, and a hidden boolean to indicate the item is normally hidden in the UI.

This schema was resolved from common/labelItem.

Properties

NameDescription
Label Item (v1.0.2) object
An item in a labelGroup, with a set of variants which contains different localized labels for the item. Each simpleLabel variant defines the presentation text label and optional description for a language. Items may also have a lookup code to map to external systems, a numeric range, and a hidden boolean to indicate the item is normally hidden in the UI.

This schema was resolved from common/labelItem.

label string (required)
A label or title which may be used as labels or other UI controls which present a value.
description string
A more detailed localized description of a localizable label.
variants object
The language-specific variants of this label. The keys in this object are RFC 7231 language codes.
» Simple Label (v1.0.0) simpleLabel
A text label and optional description.

This schema was resolved from common/simpleLabel.

code string
If the localized value is associated with an external standard or definition, this is a lookup code or key or URI for that value.
minLength: 1
hidden boolean
If true, this item is normally hidden from the User Interface.
range string
The range of values, if the item describes a bounded numeric value. This is range notation such as [min,max], (exclusiveMin,max], [min,exclusiveMax), or (exclusiveMin,exclusiveMax). For example, [0,100) is the range greater than or equal to 0 and less than 100. If the min or max value are omitted, that end of the range is unbounded. For example, (,1000.00) means less than 1000.00 and [20000.00,] means 20000.00 or more. The ranges do not overlap or have gaps.
pattern: ^[\[\(](-?(0|[1-9][0-9]*)(\.[0-9]+)?)?,(-?(0|[1-9][0-9]*)(\.[0-9]+)?)?[\]\)]$

{
  "href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
  "title": "Application"
}

Link (v1.0.0)

Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

This schema was resolved from common/link.

NameDescription
Link (v1.0.0) object
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

This schema was resolved from common/link.

href string(uri) (required)
The URI or URI template for the resource/operation this link refers to.
format: uri
type string
The media type for the resource.
templated boolean
If true, the link's href is a URI template.
title string
An optional human-readable localized title for the link.
deprecation string(uri)
If present, the containing link is deprecated and the value is a URI which provides human-readable text information about the deprecation.
format: uri
profile string(uri)
The URI of a profile document, a JSON document which describes the target resource/operation.
format: uri

{
  "property1": {
    "href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Application"
  },
  "property2": {
    "href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Application"
  }
}

Links (v1.0.0)

An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

NameDescription
Links (v1.0.0) object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

Link (v1.0.0) link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

This schema was resolved from common/link.

organizationPayee

{
  "name": "B&B Concrete"
}

Person (v1.1.0)

Properties of a payee that is an organization. When updating an organization payee, the name is required.

Properties

NameDescription
Person (v1.1.0) object
Properties of a payee that is an organization. When updating an organization payee, the name is required.
name string
The organization's name.
maxLength: 128

payee

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "type": "person",
  "person": {
    "firstName": "John",
    "middleName": "Daniel",
    "lastName": "Smith"
  },
  "address": {
    "addressLine1": "555 N Front Street",
    "addressLine2": "Suite 5555",
    "city": "Wilmington",
    "regionCode": "NC",
    "postalCode": "28401-5405",
    "countryCode": "US"
  },
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "_embedded": {
    "wireTransfer": {
      "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      }
    }
  }
}

Payee (v1.3.1)

The recipient of payments, also referred to as the beneficiary or receiver in specific payment methods. A payee represents a person or an oganization and contains their name and address. If the type is person, the person property contains the person's name and the organization property is ignored. If the type is organization, the organization property contains the organization's name and the person property is ignored.

A payee also has related resources which contain the details of the various payment methods for that payee. These data are included in the _embedded property in the getPayee response and may be changed by the various operations such as updatePayeeWireTransferMethod.

With some payment methods, the bank customer may also request a payment from this person or organization.

Properties

NameDescription
Payee (v1.3.1) object
The recipient of payments, also referred to as the beneficiary or receiver in specific payment methods. A payee represents a person or an oganization and contains their name and address. If the type is person, the person property contains the person's name and the organization property is ignored. If the type is organization, the organization property contains the organization's name and the person property is ignored.

A payee also has related resources which contain the details of the various payment methods for that payee. These data are included in the _embedded property in the getPayee response and may be changed by the various operations such as updatePayeeWireTransferMethod.

With some payment methods, the bank customer may also request a payment from this person or organization.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded payeeEmbeddedObjects
Objects related to this payee.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
type payeeType
The type of the payee, either a person or an organization.
enum values: person, organization
person personPayee
Properties of a person payee.
organization organizationPayee
Properties of an organization payee.
address payeeAddress
The payee's primary or mailing address. The financial institution may use the address to verify the payee. For some payment methods such as bill payment, a check is sent to this address. When updating a payee, the address must include addressLine1, city, regionCode, postalCode and countryCode.
_id string
The unique identifier for this payee. This is an immutable opaque string.
read-only
maxLength: 64
createdBy string
The unique User Id of the person who created the Payee. This is derived and immutable.
read-only
createdAt string(date-time)
The date-time the customer created this payee (but not their payment method details). This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time
updatedAt string(date-time)
The date-time the payee last updated this payee (but not their payment method details) This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time

payeeAddress

{
  "addressLine1": "555 N Front Street",
  "addressLine2": "Suite 5555",
  "city": "Wilmington",
  "regionCode": "NC",
  "countryCode": "US",
  "postalCode": "28401-5405"
}

Payee Address (v1.0.1)

The address of a payee. Addresses must be US addresses, unless:

  1. The financial institution allows international payments (paymentMethodDefinition.internationalPaymentsAllowed is true), or
  2. for wire transfers, the payee may have a non-US address as long as the account and intermediary account, if any, are at US institutions/addresses.

Properties

NameDescription
Payee Address (v1.0.1) object

The address of a payee. Addresses must be US addresses, unless:

  1. The financial institution allows international payments (paymentMethodDefinition.internationalPaymentsAllowed is true), or
  2. for wire transfers, the payee may have a non-US address as long as the account and intermediary account, if any, are at US institutions/addresses.
addressLine1 string
The first street address line of the address, normally a house number and street name.
minLength: 4
maxLength: 128
addressLine2 string
The optional second street address line of the address.
maxLength: 128
city string
The name of the city or municipality.
minLength: 2
maxLength: 128
regionCode string
The mailing address region code, for a US address. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
region string
The mailing address region name for a non-US address.
minLength: 2
maxLength: 128
postalCode string
The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code. This is normalized to uppercase.
minLength: 5
maxLength: 10
countryCode string
The ISO 3166-1 alpha-2 country code. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$

payeeEmbeddedObjects

{
  "wireTransfer": {
    "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
    "account": {
      "number": "9876543210"
    },
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Payee Embedded Objects (v1.2.1)

Objects embedded in a payee resource. These are not returned in a payee within the payees collection. Embedded objects are ignored in payee updates (update the referenced resources directly.)

Properties

NameDescription
Payee Embedded Objects (v1.2.1) object
Objects embedded in a payee resource. These are not returned in a payee within the payees collection. Embedded objects are ignored in payee updates (update the referenced resources directly.)
wireTransfer payeeWireTransferMethod
The data used to pay this payee via wire transfer.

payeeType

"person"

Payee Type (v1.0.0)

The type of the payee, either a person or an organization.

payeeType strings may have one of the following enumerated values:

ValueDescription
personPerson: The payee is a person.
organizationOrganization: The payee is an organization such as a business.

These enumeration values are further described by the label group named payeeType in the response from the getLabels operation.

type: string


enum values: person, organization

payeeWireTransferMethod

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992/paymentMethods/wiretransfer"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/2f4ae081-021e-4954-86f2-58c8de532992"
    }
  },
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  }
}

Payee Wire Payment Payment Method (v1.3.1)

The data used to request a payment via wire transfer for a payee.

Response and request bodies using this payeeWireTransferMethod schema may contain the following links:

RelSummaryMethod
selfFetch payee's wire transfer parametersGET
apiture:payeeFetch a representation of this payeeGET

Properties

NameDescription
Payee Wire Payment Payment Method (v1.3.1) object

The data used to request a payment via wire transfer for a payee.

Response and request bodies using this payeeWireTransferMethod schema may contain the following links:

RelSummaryMethod
selfFetch payee's wire transfer parametersGET
apiture:payeeFetch a representation of this payeeGET
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
account wireTransferAccount
The remote wire transfer account and financial institution.
intermediaryAccount wireTransferAccount
An optional intermediary account and the financial institution that brokers the wire transfer.

payees

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payees/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "/payments/payees?start=10&limit=10"
    },
    "first": {
      "href": "/payments/payees?start=0&limit=10"
    },
    "next": {
      "href": "/payments/payees?start=20&limit=10"
    },
    "collection": {
      "href": "/payments/payees"
    }
  },
  "name": "payees",
  "start": 10,
  "limit": 10,
  "count": 67,
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
        "type": "person",
        "person": {
          "firstName": "John",
          "middleName": "Daniel",
          "lastName": "Smith"
        },
        "address": {
          "addressLine1": "555 N Front Street",
          "addressLine2": "Suite 5555",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28401-5405",
          "countryCode": "US"
        },
        "createdBy": "johnsmith1234",
        "createdAt": "2020-10-02T11:09:20.375Z",
        "updatedAt": "2020-10-02T11:15:25.375Z",
        "_embedded": {
          "wireTransfer": {
            "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
            "account": {
              "number": "9876543210"
            },
            "institution": {
              "name": "3rd Party Bank",
              "address": {
                "addressLine1": "500 N. Elm St",
                "city": "Norman",
                "regionCode": "OK",
                "postalCode": "73070",
                "countryCode": "US"
              },
              "routingNumber": "021000021",
              "forFurtherCreditMemo": "Attention: John Smith"
            }
          }
        },
        "_links": {
          "self": {
            "href": "/payments/payees/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      }
    ]
  }
}

Payee Collection (v1.3.1)

Collection of payees. The items in the collection are ordered in the _embedded.items array; the name is payees. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

Properties

NameDescription
Payee Collection (v1.3.1) object
Collection of payees. The items in the collection are ordered in the _embedded.items array; the name is payees. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded payeesEmbeddedObjects
Embedded objects.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

payeesEmbeddedObjects

{
  "items": [
    {
      "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
      "_links": {
        "self": {
          "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
        }
      },
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "type": "person",
      "person": {
        "firstName": "John",
        "middleName": "Daniel",
        "lastName": "Smith"
      },
      "address": {
        "addressLine1": "555 N Front Street",
        "addressLine2": "Suite 5555",
        "city": "Wilmington",
        "regionCode": "NC",
        "postalCode": "28401-5405",
        "countryCode": "US"
      },
      "createdBy": "johnsmith1234",
      "createdAt": "2020-10-02T11:09:20.375Z",
      "updatedAt": "2020-10-02T11:15:25.375Z",
      "_embedded": {
        "wireTransfer": {
          "_profile": "https://production.api.apiture.com/schemas/payments/payeeWireTransferMethod/v1.3.1/profile.json",
          "account": {
            "number": "9876543210"
          },
          "institution": {
            "name": "3rd Party Bank",
            "address": {
              "addressLine1": "500 N. Elm St",
              "city": "Norman",
              "regionCode": "OK",
              "postalCode": "73070",
              "countryCode": "US"
            },
            "routingNumber": "021000021",
            "forFurtherCreditMemo": "Attention: John Smith"
          }
        }
      }
    }
  ]
}

Payees Embedded Objects (v1.3.1)

The items in the payees collection.

Properties

NameDescription
Payees Embedded Objects (v1.3.1) object
The items in the payees collection.
items array: [payee]
An array containing a page of payees.
items: object

payment

{
  "_profile": "https://production.api.apiture.com/schemas/payments/payment/v1.2.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentInstruction": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/3f9e4f91-f3a1-4bf0-87f1-d12c09b6a46f"
    },
    "apiture:paymentMethodDefinition": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    },
    "apiture:payee": {
      "href": "https://api.devbank.apiture.com/payments/payees/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "256.50",
    "currency": "USD"
  },
  "payeeName": "John Daniel Smith",
  "paymentMethodType": "wireTransfer",
  "state": "completed",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "completedAt": "2020-10-02T11:15:25.375Z",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "payeeName": "John Daniel Smith",
    "accountName": "Premiere Checking",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Payment (v1.2.1)

Representation of completed payments, as found in the payment history. Each submitted payment instruction results in a payment resource. Payment instructions with a recurring schedule result in multiple payment resources. Payment resources are immutable.

Response and request bodies using this payment schema may contain the following links:

RelSummaryMethod
selfFetch a representation of this paymentGET
apiture:payeeThe payee associated with this paymentGET
apiture:paymentInstructionCorresponding payment instructionGET
apiture:account Account where the payment is debitedHET
apiture:paymentMethodDefinitionThe definition of the payment method used in this paymentGET
apiture:wireTransferThe wire transfer data for this payment instruction.GET

Properties

NameDescription
Payment (v1.2.1) object

Representation of completed payments, as found in the payment history. Each submitted payment instruction results in a payment resource. Payment instructions with a recurring schedule result in multiple payment resources. Payment resources are immutable.

Response and request bodies using this payment schema may contain the following links:

RelSummaryMethod
selfFetch a representation of this paymentGET
apiture:payeeThe payee associated with this paymentGET
apiture:paymentInstructionCorresponding payment instructionGET
apiture:account Account where the payment is debitedHET
apiture:paymentMethodDefinitionThe definition of the payment method used in this paymentGET
apiture:wireTransferThe wire transfer data for this payment instruction.GET
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
_id string (required)
The unique identifier for this payment. This is an immutable opaque string.
read-only
maxLength: 64
purpose string
The reason the user gave for making this payment.
maxLength: 500
memo string
A secondary memo.
maxLength: 500
payeeName string (required)
The name of the payee, either the concatenation of person.firstName, person.middleName, person.lastName if the payee.type is person, or the organization.name if the payee is an organization.
maxLength: 128
accountName string (required)
The name of the account where the payment is debited. This is derived from the account named in the apiture:account link used when creating or updating the payment instruction.
maxLength: 128
paymentMethodType paymentMethodType (required)
The type of the payment. This is the type of the paymentMethodDefinition.
enum values: billPay, personToPerson, wireTransfer
amount paymentAmount (required)
The payment amount.
state paymentState (required)
The final state of this executed payment.
enum values: completed, failed
createdAt string(date-time) (required)
The date-time the system created this payment. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time
completedAt string(date-time)
The date-time the payment was completed. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time
payee payee (required)
The recipient of the payment, or for requests for payment, the entity from which the customer is requesting a payment.
paymentMethod paymentInstructionPaymentMethod (required)
The details of the payment method used in to make this payment.

paymentAmount

{
  "value": "3456.78",
  "currency": "USD"
}

Payment Amount (v1.0.0)

A payment amount in a specific currency.

Properties

NameDescription
Payment Amount (v1.0.0) object
A payment amount in a specific currency.
value string
The net monetary value of the payment. The numeric value is represented as a string so that it can be exact with no loss of precision.
currency string
The ISO 4217 currency code for this monetary value. This is always upper case ASCII. Note: ISO 4217 defines three-character codes. However, ISO 4217 does not account for cryptocurrencies. Of note, DASH uses 4 characters.
default: "USD"
minLength: 3
maxLength: 3

paymentHistory

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentHistory/v1.0.1/profile.json",
  "_links": {
    "self": {
      "href": "/payments/history?start=10&limit=10"
    },
    "first": {
      "href": "/payments/history?start=0&limit=10"
    },
    "next": {
      "href": "/payments/history?start=20&limit=10"
    },
    "collection": {
      "href": "/payments/history"
    }
  },
  "name": "history",
  "start": 10,
  "limit": 10,
  "count": 67,
  "_embedded": {
    "items": [
      {
        "_id": "3a0b0818-93d2-448d-a7d8-ed526f6ba80d",
        "_profile": "https://production.api.apiture.com/schemas/payments/summaryPayment/v1.0.1/profile.json",
        "amount": {
          "value": "256.50",
          "currency": "USD"
        },
        "payeeName": "John Daniel Smith",
        "accountName": "Premiere Checking",
        "paymentMethodType": "wireTransfer",
        "state": "submitted",
        "createdBy": "johnsmith1234",
        "createdAt": "2020-10-02T11:09:20.375Z",
        "completedAt": "2020-10-02T11:15:25.375Z",
        "_links": {
          "self": {
            "href": "https://api.devbank.apiture.com/payments/paymentInstructions/3a0b0818-93d2-448d-a7d8-ed526f6ba80d"
          },
          "apiture:paymentInstruction": {
            "href": "https://api.devbank.apiture.com/payments/paymentInstructions/3a0b0818-93d2-448d-a7d8-ed526f6ba80d"
          },
          "apiture:paymentMethod": {
            "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
          },
          "apiture:account": {
            "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
          }
        }
      }
    ]
  }
}

Payment History (v1.0.1)

A collection of completed payments. This collection does not contain pending, submitted, or rejected payments, which are found in the getPaymentInstructions operation's paymentInstructions collection response.

The items in the collection are ordered in the _embedded.items array; the name is history. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

Properties

NameDescription
Payment History (v1.0.1) object
A collection of completed payments. This collection does not contain pending, submitted, or rejected payments, which are found in the getPaymentInstructions operation's paymentInstructions collection response.

The items in the collection are ordered in the _embedded.items array; the name is history. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded paymentHistoryEmbeddedObjects
The list of payment in this page of results.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

paymentHistoryEmbeddedObjects

{
  "items": [
    {
      "_profile": "https://production.api.apiture.com/schemas/payments/summaryPayment/v1.0.1/profile.json",
      "_links": {
        "self": {
          "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
        },
        "apiture:paymentInstruction": {
          "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
        },
        "apiture:paymentMethodDefinition": {
          "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
        },
        "apiture:account": {
          "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
        }
      },
      "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
      "amount": {
        "value": "256.50",
        "currency": "USD"
      },
      "payeeName": "John Daniel Smith",
      "paymentMethodType": "wireTransfer",
      "state": "completed",
      "createdBy": "johnsmith1234",
      "createdAt": "2020-10-02T11:09:20.375Z",
      "completedAt": "2020-10-02T11:15:25.375Z"
    }
  ]
}

Payment History Embedded Objects (v1.0.1)

The items in the paymentHistory collection.

Properties

NameDescription
Payment History Embedded Objects (v1.0.1) object
The items in the paymentHistory collection.
items array: [summaryPayment]
An array containing a page of payments.
items: object

paymentInstitution

{
  "name": "3rd Party Bank",
  "address": {
    "addressLine1": "500 N. Elm St",
    "city": "Norman",
    "regionCode": "OK",
    "postalCode": "73070",
    "countryCode": "US"
  },
  "routingNumber": "021000021",
  "forFurtherCreditMemo": "Attention: John Smith"
}

Payment Institution (v1.1.2)

The payee's external financial institution through which payments are made.

Properties

NameDescription
Payment Institution (v1.1.2) object
The payee's external financial institution through which payments are made.
name string
The name of the payee's financial institution.
maxLength: 128
address paymentInstitutionAddress
The address of the payee's financial institution.
routingNumber string
The nine-digit ABA routing number of the financial institution. Required and only used if and only if the financial institution's address countryCode is US.
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
swiftCode string
The eight- or eleven- or twelve- character ISO 9362 Society for Worldwide Interbank Financial Telecommunication (SWIFT) code for international wire transfers. Required and only used if the financial institution's address countryCode is not US and the the financial institution supports international payments. For example, if internationalPaymentsAllowed is true for the corresponding payment method definition, then wire transfer instructions may use non-US institutions and the swiftCode. If false, the institutions must have a US address.
minLength: 8
maxLength: 12
pattern: ^[a-zA-Z0-9]{8}([a-zA-Z0-9]{3})?$
forFurtherCreditMemo string
Additional "for further credit to" instructions or notes to assist the financial institution when processing the wire transfer, such as the ultimate recipient of funds at the beneficial institution.
maxLength: 500

paymentInstitutionAddress

{
  "addressLine1": "555 N Front Street",
  "addressLine2": "Suite 5555",
  "city": "Wilmington",
  "regionCode": "NC",
  "countryCode": "US",
  "postalCode": "28401-5405"
}

Payment Institution Address (v1.1.3)

The address of the financial institution used in a payment. The financial institution must have a US address unless the corresponding payment method definition allows international payments.

Properties

NameDescription
Payment Institution Address (v1.1.3) object
The address of the financial institution used in a payment. The financial institution must have a US address unless the corresponding payment method definition allows international payments.
addressLine1 string
The first street address line of the address, normally a house number and street name.
minLength: 4
maxLength: 128
addressLine2 string
The optional second street address line of the address.
maxLength: 128
city string
The name of the city or municipality.
minLength: 2
maxLength: 128
regionCode string
The mailing address region code, for a US address. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
region string
The mailing address region name for a non-US address.
minLength: 2
maxLength: 128
postalCode string
The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code. This is normalized to uppercase.
minLength: 5
maxLength: 10
countryCode string
The ISO 3166-1 alpha-2 country code. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$

paymentInstruction

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethod": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "5000.00",
    "currency": "USD"
  },
  "purpose": "Advance consulting fee",
  "payeeName": "John Daniel Smith",
  "accountName": "Premiere Checking",
  "payee": {
    "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
    "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
    "type": "person",
    "person": {
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith"
    },
    "address": {
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  },
  "state": "submitted",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "updatedAt": "2020-10-02T11:15:25.375Z",
  "expiresAt": "2020-10-05T11:15:25.375Z",
  "paymentMethod": {
    "type": "wireTransfer",
    "wireTransfer": {
      "account": {
        "number": "9876543210"
      },
      "institution": {
        "name": "3rd Party Bank",
        "address": {
          "addressLine1": "500 N. Elm St",
          "city": "Norman",
          "regionCode": "OK",
          "postalCode": "73070",
          "countryCode": "US"
        },
        "routingNumber": "021000021",
        "forFurtherCreditMemo": "Attention: John Smith"
      },
      "attachments": [
        {
          "name": "invoice-2020-10-01a.pdf",
          "contentType": "application/pdf",
          "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
        }
      ]
    }
  }
}

Payment Instruction (v1.4.1)

Representation of payment instruction resources.

Response and request bodies using this paymentInstruction schema may contain the following links:

RelSummaryMethod
selfFetch a representation of this payment instructionGET
apiture:payeeFetch a representation of this payeeGET
apiture:account Account where the payment is debitedGET
apiture:paymentMethodDefinitionThe definition of the payment method used in this paymentGET
apiture:wireTransferThe wire transfer data for this payment instruction.GET
apiture:submitSubmit this payment instructionPOST
apiture:cancelCancel this payment instructionPOST
apiture:processProcess this payment instruction (administrative use)POST
apiture:rejectReject this payment instruction (administrative use)POST
apiture:failMark this payment instruction as failed (administrative use)POST

Properties

NameDescription
Payment Instruction (v1.4.1) object

Representation of payment instruction resources.

Response and request bodies using this paymentInstruction schema may contain the following links:

RelSummaryMethod
selfFetch a representation of this payment instructionGET
apiture:payeeFetch a representation of this payeeGET
apiture:account Account where the payment is debitedGET
apiture:paymentMethodDefinitionThe definition of the payment method used in this paymentGET
apiture:wireTransferThe wire transfer data for this payment instruction.GET
apiture:submitSubmit this payment instructionPOST
apiture:cancelCancel this payment instructionPOST
apiture:processProcess this payment instruction (administrative use)POST
apiture:rejectReject this payment instruction (administrative use)POST
apiture:failMark this payment instruction as failed (administrative use)POST
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
_id string
The unique identifier for this payment instruction. This is an immutable opaque string.
read-only
maxLength: 64
amount paymentAmount
The payment amount.
purpose string
The reason the user gave for making this payment.
maxLength: 500
memo string
A secondary memo.
maxLength: 500
payeeName string
The (derived) name of the payee, either the concatenation of person.firstName, person.middleName, person.lastName if the payee.type is person, or the organization.name if the payee is an organization.
read-only
maxLength: 128
accountName string
The name of the account where the payment is debited. This is derived from the account named in the apiture:account link used when creating or updating the payment instruction.
read-only
maxLength: 128
payee payee
The recipient of the payment, or for requests for payment, the entity from which the customer id requesting a payment.
paymentMethod paymentInstructionPaymentMethod
The details of the payment method used in this payment instruction.
state paymentInstructionState
The state of this payment instruction. This is immutable and derived. Use the submitPaymentInstruction operation to change a pending request to submitted. Administrative applications use other operations to change the state from submittedtoprocessing, completed, or rejected`.
read-only
enum values: pending, submitted, canceled, processing, rejected, completed, failed, expired
createdBy string
The unique User Id of the person who created the payment instruction. This is derived and immutable.
read-only
createdAt string(date-time)
The date-time the customer created this payment instruction. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time
updatedAt string(date-time)
The date-time the payee last updated this payment. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time
expiresAt string(date-time)
The date-time payment instruction expires. If the user has not submitted the payment instruction by this time, the instruction becomes expired and the user can no longer submit it. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time

paymentInstructionAttachment

{
  "name": "invoice-2020-10-01a.pdf",
  "contentType": "application/pdf",
  "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
}

paymentInstructionAttachment (v1.0.0)

A file attached to a payment instruction.

Properties

NameDescription
paymentInstructionAttachment (v1.0.0) object
A file attached to a payment instruction.
name string
The file name (excluding any path or URL prefix).
minLength: 6
maxLength: 64
contentType string
The media type for this attachment.
minLength: 6
maxLength: 64
uri string(uri) (required)
The document URI. The content a this URI must be publicly accessible.
format: uri
maxLength: 2048

paymentInstructionPaymentMethod

{
  "type": "wireTransfer",
  "wireTransfer": {
    "account": {
      "number": "9876543210"
    },
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    },
    "attachments": [
      {
        "name": "invoice-2020-10-01a.pdf",
        "contentType": "application/pdf",
        "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
      }
    ]
  }
}

Payment Instruction Payments Method (v1.3.0)

Contains the complete payment method details for a payment instruction. This object may have only one payment method (one of the wireRequest, billPay or personToPerson objects), as per the type. The payment method details must not be a partial representation.

Properties

NameDescription
Payment Instruction Payments Method (v1.3.0) object
Contains the complete payment method details for a payment instruction. This object may have only one payment method (one of the wireRequest, billPay or personToPerson objects), as per the type. The payment method details must not be a partial representation.
type paymentMethodType (required)
Identifies the type of the payment method for this payment instruction.
enum values: billPay, personToPerson, wireTransfer
wireTransfer wireTransferPaymentInstruction
The details of requesting a wire transfer payment, required if and only if type is wireTransfer.
billPay billPayPaymentInstruction
The details for paying a payee via the bill pay method, required if and only if type is witeTransfer.
personToPerson personToPersonPaymentInstruction
The details for paying a payee via the person to person method, required if and only if type is personToPerson.

paymentInstructionState

"pending"

Payment Instruction State (v1.1.0)

The state of a payment instruction.

paymentInstructionState strings may have one of the following enumerated values:

ValueDescription
pendingPending: A new payment instruction that has not been submitted.
submittedSubmitted: A payment instruction that the user has submitted for processing.
canceledCanceled: A payment instruction that the user has canceled.
processingProcessing: A payment instruction that the financial institution has processed but which is not yet complete.
rejectedRejected: A payment instruction that the financial institution has rejected.
completedCompleted: A payment instruction that has completed and debited from the account.
failedFailed: A payment instruction that failed to execute when processed.
expiredExpired: A payment instruction that was not submitted before the expiresAt date.

These enumeration values are further described by the label group named paymentInstructionState in the response from the getLabels operation.

type: string


enum values: pending, submitted, canceled, processing, rejected, completed, failed, expired

paymentInstructions

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstructions/v1.3.1/profile.json",
  "_links": {
    "self": {
      "href": "/payments/paymentInstructions?start=10&limit=10"
    },
    "first": {
      "href": "/payments/paymentInstructions?start=0&limit=10"
    },
    "next": {
      "href": "/payments/paymentInstructions?start=20&limit=10"
    },
    "collection": {
      "href": "/payments/paymentInstructions"
    }
  },
  "name": "paymentInstructions",
  "start": 10,
  "limit": 10,
  "count": 67,
  "_embedded": {
    "items": [
      {
        "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
        "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
        "amount": {
          "value": "5000.00",
          "currency": "USD"
        },
        "purpose": "Advance consulting fee",
        "payeeName": "John Daniel Smith",
        "accountName": "Premiere Checking",
        "payee": {
          "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
          "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
          "type": "person",
          "person": {
            "firstName": "John",
            "middleName": "Daniel",
            "lastName": "Smith"
          },
          "address": {
            "addressLine1": "555 N Front Street",
            "addressLine2": "Suite 5555",
            "city": "Wilmington",
            "regionCode": "NC",
            "postalCode": "28401-5405",
            "countryCode": "US"
          }
        },
        "paymentMethod": {
          "type": "wireTransfer",
          "wireTransfer": {
            "account": {
              "number": "9876543210"
            },
            "institution": {
              "name": "3rd Party Bank",
              "address": {
                "addressLine1": "500 N. Elm St",
                "city": "Norman",
                "regionCode": "OK",
                "postalCode": "73070",
                "countryCode": "US"
              },
              "routingNumber": "021000021",
              "forFurtherCreditMemo": "Attention: John Smith"
            },
            "attachments": [
              {
                "name": "invoice-2020-10-01a.pdf",
                "contentType": "application/pdf",
                "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
              }
            ]
          }
        },
        "state": "submitted",
        "createdBy": "johnsmith1234",
        "createdAt": "2020-10-02T11:09:20.375Z",
        "updatedAt": "2020-10-02T11:15:25.375Z",
        "expiresAt": "2020-10-05T11:15:25.375Z",
        "_links": {
          "self": {
            "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
          },
          "apiture:payee": {
            "href": "https://api.devbank.apiture.com/payments/payees/0399abed-fd3d-4830-a88b-30f38b8a365c"
          },
          "apiture:paymentMethod": {
            "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
          },
          "apiture:account": {
            "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
          }
        }
      }
    ]
  }
}

Payment Instruction Collection (v1.3.1)

Collection of payment instructions. The items in the collection are ordered in the _embedded.items array; the name is paymentInstructions. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

Properties

NameDescription
Payment Instruction Collection (v1.3.1) object
Collection of payment instructions. The items in the collection are ordered in the _embedded.items array; the name is paymentInstructions. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded paymentInstructionsEmbeddedObjects
The list of payment instructions in this page of results.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

paymentInstructionsEmbeddedObjects

{
  "items": [
    {
      "_profile": "https://production.api.apiture.com/schemas/payments/paymentInstruction/v1.4.1/profile.json",
      "_links": {
        "self": {
          "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
        },
        "apiture:paymentMethod": {
          "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
        },
        "apiture:account": {
          "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
        }
      },
      "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
      "amount": {
        "value": "5000.00",
        "currency": "USD"
      },
      "purpose": "Advance consulting fee",
      "payeeName": "John Daniel Smith",
      "accountName": "Premiere Checking",
      "payee": {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://production.api.apiture.com/schemas/payments/payee/v1.3.1/profile.json",
        "type": "person",
        "person": {
          "firstName": "John",
          "middleName": "Daniel",
          "lastName": "Smith"
        },
        "address": {
          "addressLine1": "555 N Front Street",
          "addressLine2": "Suite 5555",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28401-5405",
          "countryCode": "US"
        }
      },
      "state": "submitted",
      "createdBy": "johnsmith1234",
      "createdAt": "2020-10-02T11:09:20.375Z",
      "updatedAt": "2020-10-02T11:15:25.375Z",
      "expiresAt": "2020-10-05T11:15:25.375Z",
      "paymentMethod": {
        "type": "wireTransfer",
        "wireTransfer": {
          "account": {
            "number": "9876543210"
          },
          "institution": {
            "name": "3rd Party Bank",
            "address": {
              "addressLine1": "500 N. Elm St",
              "city": "Norman",
              "regionCode": "OK",
              "postalCode": "73070",
              "countryCode": "US"
            },
            "routingNumber": "021000021",
            "forFurtherCreditMemo": "Attention: John Smith"
          },
          "attachments": [
            {
              "name": "invoice-2020-10-01a.pdf",
              "contentType": "application/pdf",
              "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
            }
          ]
        }
      }
    }
  ]
}

Payment Instructions Embedded Objects (v1.3.1)

The items in the paymentInstructions collection.

Properties

NameDescription
Payment Instructions Embedded Objects (v1.3.1) object
The items in the paymentInstructions collection.
items array: [paymentInstruction]
An array containing a page of payment instructions.
items: object

paymentMethodConsentNeeded

"oneTime"

Payment Method Consent Needed (v1.0.0)

How often the financial institution requires the banking customer to give consent to this payment method's terms and conditions.

paymentMethodConsentNeeded strings may have one of the following enumerated values:

ValueDescription
noneNone: The banking customer does not have to give explicit consent to the terms and conditions of this payment method.
oneTimeOne Time: The banking customer must give explicit consent to the terms and conditions of this payment method one time before using this payment method.
perRequestPer Request: The financial institution requires the banking customer to give consent to the payment method's terms and conditions on each payment request.

These enumeration values are further described by the label group named paymentMethodConsentNeeded in the response from the getLabels operation.

type: string


enum values: none, oneTime, perRequest

paymentMethodDefinition

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinition/v1.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "type": "wireTransfer",
  "label": "Wire Transfer",
  "description": "Send funds via _wire transfer_, also known as Real Time Gross Settlement (RTGS). In the US, wire transfers are processed by Fedwire, the US Federal Reserve Bank network. *Note*: There is a fee for each submitted wire transfer.",
  "paymentLimit": {
    "amount": "200000.00",
    "currency": "USD"
  },
  "termsAndConditionsUri": "https://cdn.apiture.com/documents/terms/wireTransfer/2020-07-10.pdf",
  "termsAndConditionsContextUri": "https://api.devbank.apiture.com/payments/paymentMethodDefintions/billPayment",
  "consentNeeded": "perRequest",
  "enabled": true,
  "requiresMfaChallenge": true,
  "fees": {
    "transaction": "19.00",
    "currency": "USD"
  },
  "schedulingAllowed": false,
  "recurringSchedulesAllowed": false,
  "cancelAllowed": false,
  "updateAllowed": false,
  "presentHelpAfter": "P180D",
  "presentHelp": true,
  "expirationPeriod": "P7D"
}

Payment Method Definition (v1.1.1)

Defines a payment method and its fees and its contraints. Payment methods are also known as payment channels. Each payment instruction uses exactly one payment method and the payment instruction has properties that are specific to that payment method. The paymentMethodDefinitions resource contains the complete set of payment method definitions.

Properties

NameDescription
Payment Method Definition (v1.1.1) object
Defines a payment method and its fees and its contraints. Payment methods are also known as payment channels. Each payment instruction uses exactly one payment method and the payment instruction has properties that are specific to that payment method. The paymentMethodDefinitions resource contains the complete set of payment method definitions.
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
type paymentMethodType
The name of this payment method. This is the {paymentMethodType} in the getPaymentMethod operation.
enum values: billPay, personToPerson, wireTransfer
label string
A title or label for this payment method, suitable for use in the user interface.
minLength: 4
maxLength: 32
description string(markdown)
The description of this payment method.
format: markdown
minLength: 4
maxLength: 256
paymentLimit paymentAmount
The maximum amount a user may submit per payment.
termsAndConditionsUri string(uri)
The URI of a document that lists the terms and conditions for using this payment method
format: uri
maxLength: 2048
termsAndConditionsContextUri string(uri)
The context in which banking customer gives terms and conditions consent. If different payment methods use the same document URI and same context URI, then the user need only give consent one time to use all the payment methods. If different payment methods share the same document URIs but have a different context URI, or they have different document URIs, the payments service will require the customer to give consent to use each payment method. For the first case, the financial institution may use URI of the /payments/paymentMethodDefintions/ collection resource; for the second case, the financial institution may use the URI of each individual payment method definition, such as /payments/paymentMethodDefintions/billPayment or /payments/paymentMethodDefintions/personToPerson.
format: uri
maxLength: 2048
consentNeeded paymentMethodConsentNeeded
How often the financial institution requires the banking customer to give consent to this payment method's terms and conditions.
enum values: none, oneTime, perRequest
enabled boolean
Whether this payment method is globally enabled or not. This value is also defined at a banking product (product.paymentsEnabled) and at an account level (account.paymentsEnabled). This property and and the account-level setting must be true to create and submit a payment instruction using this payment method.
default: true
requiresMfaChallenge boolean
If true, the user must complete a multi-factor authentication challengs when submitting submitPaymentInstruction the payment instructions to be processed.
fees paymentMethodFees
Fees that the financial institution charges for this payment method.
schedulingAllowed boolean
If true, banking customers can schedule payments to be made in the future. If false, the payment is executed automatically the day the customer submits it or the next financial institution processing day.
recurringSchedulesAllowed boolean
If true, banking customers can schedule recurring payments; if false, only one time payments may be scheduled. This is always false if schedulingAllowed.
cancelAllowed boolean
If true, banking customers can cancel a payments request after submitting it. if false, customers can cancel or delete only pending payments.
updateAllowed boolean
If true, banking customers can update a payment instruction after submitting it. if false, customers can modify only pending payments.
internationalPaymentsAllowed boolean
If true, this payment method allows international payments, not just payments within the US. For example, for wire transfers, this setting enables using non-US institutions (SWIFT) and insitutions with non-US addresses.
presentHelp boolean
If true, the client application should present payment method help to the user when the user initiates a new payment instruction of this type. This is true if there are no previous payment instructions of this type, or if the presentHelpAfter interval has passed since their last payment instruction of this type.
presentHelpAfter string(period)
The length of time that must pass before the user interface should present help or instructions (if any) for using this payment method. This value is an ISO 8601 duration string, using the form P[n]M or P[n]D to specify the number of months or days, respectively. For example, if the value is P180D, the client only presents the instructions to a customer if more than 180 days have passed since the customer last used this payment method.
format: period
pattern: ^P(([1-9][0-9]{0,3}D)|([1-9][0-9]?M))$
expirationPeriod string
If set, the Payments service will automatically delete pending payments of this payment method if the customer does not submit them within this time period after they created the request. This value is an ISO 8601 duration string, using the form P[n]M or P[n]D to specify the number of months or days, respectively. For example, if the value is P7D, the service periodically deletes pending payment requsts that are older than 7 days.
pattern: ^P(([1-9][0-9]{0,3}D)|([1-9][0-9]?M))$

paymentMethodDefinitions

{
  "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinitions/v1.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethodDefinitions"
    }
  },
  "name": "paymentMethodDefinitions",
  "start": 0,
  "limit": 0,
  "count": 1,
  "_embedded": {
    "items": [
      {
        "type": "wireTransfer",
        "label": "Wire Transfer",
        "description": "Send funds via _wire transfer_, also as Real Time Gross Settlement (RTGS). In the US, wire transfers are processed by Fedwire, the US Federal Reserve Bank network. *Note*: There is a fee for each submitted wire transfer.",
        "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinition/v1.1.1/profile.json",
        "paymentLimit": {
          "amount": "200000.00",
          "currency": "USD"
        },
        "termsAndConditionsUri": "https://cdn.apiture.com/documents/terms/wireTransfer/2020-07-10.pdf",
        "termsAndConditionsContextUri": "https://api.devbank.apiture.com/payments/paymentMethodDefintions/billPayment",
        "consentNeeded": "perRequest",
        "enabled": true,
        "requiresMfaChallenge": true,
        "fees": {
          "currency": "USD",
          "transaction": "19.00"
        },
        "schedulingAllowed": false,
        "recurringSchedulesAllowed": false,
        "cancelAllowed": false,
        "updateAllowed": false,
        "presentHelpAfter": "P180D",
        "expirationPeriod": "P7D",
        "_links": {
          "self": {
            "href": "https://api.devbank.apiture.com/payments/paymentMethodDefinitions/wireTransfer"
          }
        }
      }
    ]
  }
}

Payment Method Collection (v1.1.1)

Collection of payment method definitions. The items in the collection are ordered in the _embedded.items array; the collection name is paymentMethodDefinitions. This resource contains each paymentMethodDefinition that the Payments API supports.

Properties

NameDescription
Payment Method Collection (v1.1.1) object
Collection of payment method definitions. The items in the collection are ordered in the _embedded.items array; the collection name is paymentMethodDefinitions. This resource contains each paymentMethodDefinition that the Payments API supports.
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded paymentMethodDefinitionsEmbedded
The list of payment method definitions.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

paymentMethodDefinitionsEmbedded

{
  "items": [
    {
      "_profile": "https://production.api.apiture.com/schemas/payments/paymentMethodDefinition/v1.1.1/profile.json",
      "_links": {
        "self": {
          "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
        }
      },
      "type": "wireTransfer",
      "label": "Wire Transfer",
      "description": "Send funds via _wire transfer_, also known as Real Time Gross Settlement (RTGS). In the US, wire transfers are processed by Fedwire, the US Federal Reserve Bank network. *Note*: There is a fee for each submitted wire transfer.",
      "paymentLimit": {
        "amount": "200000.00",
        "currency": "USD"
      },
      "termsAndConditionsUri": "https://cdn.apiture.com/documents/terms/wireTransfer/2020-07-10.pdf",
      "termsAndConditionsContextUri": "https://api.devbank.apiture.com/payments/paymentMethodDefintions/billPayment",
      "consentNeeded": "perRequest",
      "enabled": true,
      "requiresMfaChallenge": true,
      "fees": {
        "transaction": "19.00",
        "currency": "USD"
      },
      "schedulingAllowed": false,
      "recurringSchedulesAllowed": false,
      "cancelAllowed": false,
      "updateAllowed": false,
      "presentHelpAfter": "P180D",
      "presentHelp": true,
      "expirationPeriod": "P7D"
    }
  ]
}

Payment Method Definitions Embedded Objects (v1.1.1)

Payment method definitions embedded objects.

Properties

NameDescription
Payment Method Definitions Embedded Objects (v1.1.1) object
Payment method definitions embedded objects.
items array: [paymentMethodDefinition]
An array containing payment method items.
items: object

paymentMethodFees

{
  "currency": "USD",
  "transaction": "19.00"
}

Payment Method Fees (v1.0.0)

Itemized fees for using a payment method.

Properties

NameDescription
Payment Method Fees (v1.0.0) object
Itemized fees for using a payment method.
currency string
The ISO 4217 three-character currency code for the fees. This is always upper case ASCII.
default: "USD"
minLength: 3
maxLength: 3
transaction string
The per-payment transaction fee, in the given currency, that the financial institution charges to process payments using this payment method. The numeric value is represented as a string so that it can be exact with no loss of precision.

paymentMethodType

"billPay"

Payment Method Type (v1.0.0)

Identifies the payment method of a payment instruction. (The billPay and personToPerson method are not yet implemented.)

paymentMethodType strings may have one of the following enumerated values:

ValueDescription
wireTransferWire Transfer: High value funds transfers through Fedwire or international wire transfer networks.
billPayBill Pay: Pay bills and make other payments through checks or similar electronic funds transfer.
personToPersonPerson To Person: One-time payments to, or requests for payment from, a person via a person-to-person payment network.

These enumeration values are further described by the label group named paymentMethodType in the response from the getLabels operation.

type: string


enum values: billPay, personToPerson, wireTransfer

paymentState

"completed"

Payment State (v1.0.0)

The final state of the executed payment instructions.

paymentState strings may have one of the following enumerated values:

ValueDescription
completedCompleted: The financial institution processed and completed the payment.
failedFailed: The financial institution failed to execute the payment. For example, the account may not have had sufficient funds at the time the financial institution attempted to process the payment.

These enumeration values are further described by the label group named paymentState in the response from the getLabels operation.

type: string


enum values: completed, failed

personPayee

{
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith"
}

Person Payee (v1.1.0)

Attributes of a payee that is a person. When updating a person payee, the firstName and lastName are required.

Properties

NameDescription
Person Payee (v1.1.0) object
Attributes of a payee that is a person. When updating a person payee, the firstName and lastName are required.
firstName string
The person's first name (or given name).
maxLength: 80
middleName string
The person's middle name.
maxLength: 80
lastName string
The person's last name (or surname).
maxLength: 80

personToPersonPaymentInstruction

{}

Bill Pay Data for a Payment Instruction (v0.1.0)

The data used to pay a payee via wire transfer. (This will be defined in a future release of the API.)

Properties

NameDescription
Bill Pay Data for a Payment Instruction (v0.1.0) object
The data used to pay a payee via wire transfer. (This will be defined in a future release of the API.)

root

{
  "_profile": "https://production.api.apiture.com/schemas/common/root/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0"
}

API Root (v2.1.1)

A HAL response, with hypermedia _links for the top-level resources and operations in API.

This schema was resolved from common/root.

Properties

NameDescription
API Root (v2.1.1) object
A HAL response, with hypermedia _links for the top-level resources and operations in API.

This schema was resolved from common/root.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
_id string
This API's unique ID.
read-only
name string
This API's name.
apiVersion string
This API's version.

simpleLabel

{
  "label": "Board of Directors",
  "description": "string"
}

Simple Label (v1.0.0)

A text label and optional description.

This schema was resolved from common/simpleLabel.

Properties

NameDescription
Simple Label (v1.0.0) object
A text label and optional description.

This schema was resolved from common/simpleLabel.

label string (required)
A label or title which may be used as labels or other UI controls which present a value.
description string
A more detailed localized description of a localizable label.

summaryChallenge

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  }
}

Summary Challenge (v1.1.0)

Summary representation of a challenge, used in the challenge collection.

This schema was resolved from auth/summaryChallenge.

Properties

NameDescription
Summary Challenge (v1.1.0) object
Summary representation of a challenge, used in the challenge collection.

This schema was resolved from auth/summaryChallenge.

_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
reason string
The reason the application or service has issued a challenge requesting the user verify their identity. This is for labeling or informational purposes.
contextUri string(uri)
The URI of a resource that establishes the context in which the user is asked to authenticate their identity. For example, for this may be for a pending transfer, a user's mailing address, or an account if adding a joint owner.
format: uri
maxLength: 2048
userId string
The user ID of the user who is requested to verify their identity. The default is the userID of the authenticated person creating the challenge.
minimumAuthenticatorCount integer
The minimum number of different authenticators the user must verify in order to satisfy the identity challenge. The default is 1.
minimum: 0
maximum: 4
maximumRedemptionCount integer
The maximum number of times the challenge may be used or redeemed. The default is 1.
minimum: 1
_id string
The unique identifier for this challenge resource. This is an immutable opaque string assigned upon creation.
read-only
redemptionCount integer
How many times the challenge has been redeemed.
read-only
state challengeState
The state of this authenticator.
read-only
enum values: pending, started, verified, failed, redeemed, expired
createdAt string(date-time)
The time stamp when challenge was created, in RFC 3339 UTC date-time format (YYYY-MM-DDThh:mm:ss.sssZ).
read-only
format: date-time

summaryPayment

{
  "_profile": "https://production.api.apiture.com/schemas/payments/summaryPayment/v1.0.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentInstruction": {
      "href": "https://api.devbank.apiture.com/payments/paymentInstructions/d4e159d4-fffd-4320-aa78-332a26cb3062"
    },
    "apiture:paymentMethodDefinition": {
      "href": "https://api.devbank.apiture.com/payments/paymentMethods/wireTransfer"
    },
    "apiture:account": {
      "href": "https://api.devbank.apiture.com/accounts/accounts/e3743de2-b508-4726-9dbc-d1bc98007dba"
    }
  },
  "_id": "d4e159d4-fffd-4320-aa78-332a26cb3062",
  "amount": {
    "value": "256.50",
    "currency": "USD"
  },
  "payeeName": "John Daniel Smith",
  "paymentMethodType": "wireTransfer",
  "state": "completed",
  "createdBy": "johnsmith1234",
  "createdAt": "2020-10-02T11:09:20.375Z",
  "completedAt": "2020-10-02T11:15:25.375Z"
}

Summary Payment (v1.0.1)

Summary representation of completed payments used in the paymentHistory collection's items. Use getPayment (GET of the self link's href) to get the complete payment representation of this payment. Payment resources are immutable.

Response and request bodies using this summaryPayment schema may contain the following links:

RelSummaryMethod
selfFetch a representation of this paymentGET
apiture:payeeThe payee associated with this paymentGET
apiture:paymentInstructionCorresponding payment instructionGET
apiture:account Account where the payment is debitedGET
apiture:paymentMethodDefinitionThe definition of the payment method used in this paymentGET
apiture:wireTransferThe wire transfer data for this payment instructionGET

Properties

NameDescription
Summary Payment (v1.0.1) object

Summary representation of completed payments used in the paymentHistory collection's items. Use getPayment (GET of the self link's href) to get the complete payment representation of this payment. Payment resources are immutable.

Response and request bodies using this summaryPayment schema may contain the following links:

RelSummaryMethod
selfFetch a representation of this paymentGET
apiture:payeeThe payee associated with this paymentGET
apiture:paymentInstructionCorresponding payment instructionGET
apiture:account Account where the payment is debitedGET
apiture:paymentMethodDefinitionThe definition of the payment method used in this paymentGET
apiture:wireTransferThe wire transfer data for this payment instructionGET
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
format: uri
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
_id string (required)
The unique identifier for this payment. This is an immutable opaque string.
read-only
maxLength: 64
purpose string
The reason the user gave for making this payment.
maxLength: 500
memo string
A secondary memo.
maxLength: 500
payeeName string (required)
The name of the payee, either the concatenation of person.firstName, person.middleName, person.lastName if the payee.type is person, or the organization.name if the payee is an organization.
maxLength: 128
accountName string (required)
The name of the account where the payment is debited. This is derived from the account named in the apiture:account link used when creating or updating the payment instruction.
maxLength: 128
paymentMethodType paymentMethodType (required)
The type of the payment. This is the type of the paymentMethodDefinition.
enum values: billPay, personToPerson, wireTransfer
amount paymentAmount (required)
The payment amount.
state paymentState (required)
The final state of this executed payment.
enum values: completed, failed
createdAt string(date-time) (required)
The date-time the system created this payment. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time
completedAt string(date-time)
The date-time the payment was completed. This is in RFC 3339 format, UTC. This is derived and immutable.
read-only
format: date-time

wireTransferAccount

{
  "institution": {
    "name": "3rd Party Bank",
    "address": {
      "addressLine1": "500 N. Elm St",
      "city": "Norman",
      "regionCode": "OK",
      "postalCode": "73070",
      "countryCode": "US"
    },
    "routingNumber": "021000021",
    "forFurtherCreditMemo": "Attention: John Smith"
  },
  "number": "9876543210"
}

Wire Transfer Account (v1.1.0)

The remote account and insitution used for a wire transfer request.

Properties

NameDescription
Wire Transfer Account (v1.1.0) object
The remote account and insitution used for a wire transfer request.
institution paymentInstitution
The remote financial institution for a wire transfer
number string
The full account number at the financial institution.
minLength: 4
maxLength: 17

wireTransferPaymentInstruction

{
  "account": {
    "number": "9876543210",
    "institution": {
      "name": "3rd Party Bank",
      "address": {
        "addressLine1": "500 N. Elm St",
        "city": "Norman",
        "regionCode": "OK",
        "postalCode": "73070",
        "countryCode": "US"
      },
      "routingNumber": "021000021",
      "forFurtherCreditMemo": "Attention: John Smith"
    }
  },
  "attachments": [
    {
      "name": "invoice-2020-10-01a.pdf",
      "contentType": "application/pdf",
      "uri": "https://api.devbank.apiture.com/vault/files/91c28be9-ef79-4b94-a2a0-e0aa9ddcab99/content"
    }
  ]
}

Wire Transfers Data for a Payment Instruction (v1.3.0)

The data used to pay a payee via wire transfer.

Properties

NameDescription
Wire Transfers Data for a Payment Instruction (v1.3.0) object
The data used to pay a payee via wire transfer.
account wireTransferAccount
The remote wire transfer account and financial institution.
intermediaryAccount wireTransferAccount
An optional intermediary account and the financial institution that brokers the wire transfer.
attachments array: [paymentInstructionAttachment]
Optional documents attached to this wire transfer request. The financial institution might configure the maximum number of attachments to be less than 5.
maxItems: 5
items: object

Generated by @apiture/api-doc 3.1.0 on Fri Mar 22 2024 13:03:14 GMT+0000 (Coordinated Universal Time).