openapi: 3.2.0
info:
title: Helix Account Beneficiary API
version: 3.0.0
description: Helix Public API (no customer KYC/IDV). **This spec covers all of Helix 3.x and is subject to change at any time.**
servers:
- url: https://sandbox-api.helix.q2.com
description: Sandbox server
- url: https://api.helix.q2.com
description: Production server
security:
- basicAuth: []
tags:
- name: Account Beneficiary
description: Endpoints for the accountBeneficiary object
paths:
/accountBeneficiary/add:
post:
tags:
- Account Beneficiary
summary: Add account beneficiary
description: Add a beneficiary to an account. See accountBeneficiary object definition for parameter details.
externalDocs:
url: https://docs.helix.q2.com/reference/accountbeneficiaryadd
operationId: accountBeneficiaryAdd
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- customerId
- accountId
- customerBeneficiaryId
properties:
customerId:
$ref: '#/components/schemas/HelixId'
accountId:
$ref: '#/components/schemas/HelixId'
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
distributionDescription:
type: string
beneficiaryPosition:
type:
- integer
- 'null'
description: Position or order of this beneficiary on the account.
distributionPercentage:
type:
- integer
- 'null'
minimum: 0
maximum: 100
description: Whole-number percentage of the account balance to distribute to this beneficiary. Must be between 0 and 100.
distributionType:
$ref: '#/components/schemas/DistributionType'
responses:
'200':
description: A confirmation the beneficiary has been added to the account
content:
application/json:
schema:
$ref: '#/components/schemas/AccountBeneficiaryAddEditRemove200Response'
'400':
$ref: '#/paths/~1card~1lock/post/responses/400'
'401':
$ref: '#/paths/~1card~1lock/post/responses/401'
'404':
$ref: '#/paths/~1card~1lock/post/responses/404'
'405':
$ref: '#/paths/~1card~1lock/post/responses/405'
'429':
$ref: '#/paths/~1card~1lock/post/responses/429'
/accountBeneficiary/edit:
post:
tags:
- Account Beneficiary
summary: Edit account beneficiary
description: Edit a beneficiary designation for a given account. See accountBeneficiary object definition for parameter details.
externalDocs:
url: https://docs.helix.q2.com/reference/accountbeneficiaryedit
operationId: accountBeneficiaryEdit
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- customerId
- accountId
- customerBeneficiaryId
properties:
customerId:
$ref: '#/components/schemas/HelixId'
accountId:
$ref: '#/components/schemas/HelixId'
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
distributionDescription:
type: string
isActive:
type: boolean
beneficiaryPosition:
type:
- integer
- 'null'
description: Position or order of this beneficiary on the account.
distributionPercentage:
type:
- integer
- 'null'
minimum: 0
maximum: 100
description: Whole-number percentage of the account balance to distribute to this beneficiary. Must be between 0 and 100.
distributionType:
$ref: '#/components/schemas/DistributionType'
responses:
'200':
description: A confirmation the beneficiary has been added to the account
content:
application/json:
schema:
$ref: '#/components/schemas/AccountBeneficiaryAddEditRemove200Response'
'400':
$ref: '#/paths/~1card~1lock/post/responses/400'
'401':
$ref: '#/paths/~1card~1lock/post/responses/401'
'404':
$ref: '#/paths/~1card~1lock/post/responses/404'
'405':
$ref: '#/paths/~1card~1lock/post/responses/405'
'429':
$ref: '#/paths/~1card~1lock/post/responses/429'
/accountBeneficiary/get/{customerId}/{accountId}/{customerBeneficiaryId}:
get:
tags:
- Account Beneficiary
summary: Get an account beneficiary
description: Get a beneficiary for a given account
externalDocs:
url: https://docs.helix.q2.com/reference/accountbeneficiaryget
operationId: accountBeneficiaryGet
parameters:
- $ref: '#/components/parameters/CustomerIdPath'
- $ref: '#/components/parameters/AccountIdPath'
- name: customerBeneficiaryId
in: path
required: true
schema:
$ref: '#/components/schemas/HelixId'
responses:
'200':
description: An envelope whose data node is a accountBeneficiary object
content:
application/json:
schema:
$ref: '#/components/schemas/AccountBeneficiaryObject200Response'
'400':
$ref: '#/paths/~1card~1lock/post/responses/400'
'401':
$ref: '#/paths/~1card~1lock/post/responses/401'
'404':
$ref: '#/paths/~1card~1lock/post/responses/404'
'405':
$ref: '#/paths/~1card~1lock/post/responses/405'
'429':
$ref: '#/paths/~1card~1lock/post/responses/429'
/accountBeneficiary/list/{customerId}/{accountId}:
get:
tags:
- Account Beneficiary
summary: List account beneficiaries
description: List all beneficiaries for a given account
externalDocs:
url: https://docs.helix.q2.com/reference/accountbeneficiarylist
operationId: accountBeneficiaryList
parameters:
- $ref: '#/components/parameters/CustomerIdPath'
- $ref: '#/components/parameters/AccountIdPath'
responses:
'200':
description: An array of accountBeneficiary objects
content:
application/json:
schema:
$ref: '#/components/schemas/AccountBeneficiaryArray200Response'
'400':
$ref: '#/paths/~1card~1lock/post/responses/400'
'401':
$ref: '#/paths/~1card~1lock/post/responses/401'
'404':
$ref: '#/paths/~1card~1lock/post/responses/404'
'405':
$ref: '#/paths/~1card~1lock/post/responses/405'
'429':
$ref: '#/paths/~1card~1lock/post/responses/429'
/accountBeneficiary/remove:
post:
tags:
- Account Beneficiary
summary: Remove account beneficiary
description: Remove a beneficiary designation for a given account
externalDocs:
url: https://docs.helix.q2.com/reference/accountbeneficiaryremove
operationId: accountBeneficiaryRemove
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- customerId
- accountId
- customerBeneficiaryId
properties:
customerId:
$ref: '#/components/schemas/HelixId'
accountId:
$ref: '#/components/schemas/HelixId'
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
responses:
'200':
description: A confirmation the beneficiary has been removed from the account
content:
application/json:
schema:
$ref: '#/components/schemas/AccountBeneficiaryAddEditRemove200Response'
'400':
$ref: '#/paths/~1card~1lock/post/responses/400'
'401':
$ref: '#/paths/~1card~1lock/post/responses/401'
'404':
$ref: '#/paths/~1card~1lock/post/responses/404'
'405':
$ref: '#/paths/~1card~1lock/post/responses/405'
'429':
$ref: '#/paths/~1card~1lock/post/responses/429'
/accountBeneficiary/replace:
post:
tags:
- Account Beneficiary
summary: Replace account beneficiary collection
description: Replaces the entire set of beneficiaries for the given customer and account with the collection provided. Saving an empty collection deactivates all existing active beneficiaries. See accountBeneficiary object definition for parameter details. Use of this endpoint requires enhanced account beneficiaries to be enabled.
externalDocs:
url: https://docs.helix.q2.com/reference/accountbeneficiarysavecollection
operationId: accountBeneficiaryReplace
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- customerId
- accountId
- accountBeneficiaries
properties:
customerId:
$ref: '#/components/schemas/HelixId'
accountId:
$ref: '#/components/schemas/HelixId'
accountBeneficiaries:
type: array
description: The complete set of beneficiaries to save for the account. Replaces all existing beneficiaries. Pass an empty array to deactivate all existing beneficiaries.
items:
type: object
required:
- customerBeneficiaryId
properties:
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
beneficiaryPosition:
type:
- integer
- 'null'
description: Position or order of this beneficiary on the account.
distributionPercentage:
type:
- integer
- 'null'
minimum: 0
maximum: 100
description: Whole-number percentage of the account balance to distribute to this beneficiary. Must be between 0 and 100. The sum of all percentages within a given beneficiaryPosition may not exceed 100.
distributionDescription:
type:
- string
- 'null'
description: Free-form description of the distribution. At least one of distributionPercentage or distributionDescription must be provided.
distributionType:
$ref: '#/components/schemas/DistributionType'
responses:
'200':
description: An envelope whose data node contains the saved account beneficiary collection
content:
application/json:
schema:
$ref: '#/components/schemas/AccountBeneficiaryReplace200Response'
'400':
$ref: '#/paths/~1card~1lock/post/responses/400'
'401':
$ref: '#/paths/~1card~1lock/post/responses/401'
'404':
$ref: '#/paths/~1card~1lock/post/responses/404'
'405':
$ref: '#/paths/~1card~1lock/post/responses/405'
'429':
$ref: '#/paths/~1card~1lock/post/responses/429'
components:
schemas:
DateTimeProperty:
type: string
format: date-time
example: '2000-07-04T00:00:00.000+00:00'
AccountBeneficiaryObject200Response:
allOf:
- $ref: '#/components/schemas/CardArray200Response/allOf/0'
- type: object
properties:
data:
type: object
properties:
accountId:
$ref: '#/components/schemas/HelixId'
accountLegalName1:
type: string
accountLegalName2:
type: string
accountName:
type: string
accountNumber:
type: string
accountNumberMasked:
type: string
addressLine1:
type: string
addressLine2:
type: string
addressLine3:
type: string
addressLine4:
type: string
birthDate:
$ref: '#/components/schemas/DateTimeProperty'
city:
type: string
country:
type: string
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
customerId:
$ref: '#/components/schemas/HelixId'
distributionDescription:
type: string
firstName:
type: string
isActive:
type: boolean
lastName:
type: string
middleName:
type: string
postalCode:
type: string
state:
type: string
taxIdMasked:
type: string
beneficiaryPosition:
type:
- integer
- 'null'
description: Position or order of this beneficiary on the account.
distributionPercentage:
type:
- integer
- 'null'
minimum: 0
maximum: 100
description: Whole-number percentage of the account balance to distribute to this beneficiary. Must be between 0 and 100.
distributionType:
$ref: '#/components/schemas/DistributionType'
CardArray200Response:
allOf:
- type: object
properties:
errors:
type: array
items: {}
example: []
requestId:
type: string
example: 1249a3bf-aca1-40dd-9fba-2a3193550c39
status:
type: integer
enum:
- 200
throttle:
type: object
properties:
periodEndsAt:
$ref: '#/components/schemas/CustomerSetLastContact200Response/allOf/1/properties/data/items/properties/lastContactDate'
periodLengthInSeconds:
$ref: '#/components/schemas/HelixId'
periodRequestLimit:
$ref: '#/components/schemas/HelixId'
requestsRemainingInPeriod:
$ref: '#/components/schemas/HelixId'
warningThreshold:
type: number
format: decimal
example: 0.2
- type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/CardObject200Response/allOf/1/properties/data'
AccountBeneficiaryArray200Response:
allOf:
- $ref: '#/components/schemas/CardArray200Response/allOf/0'
- type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/AccountBeneficiaryObject200Response/allOf/1/properties/data'
CustomerSetLastContact200Response:
allOf:
- $ref: '#/components/schemas/CardArray200Response/allOf/0'
- type: object
properties:
data:
type: array
items:
type: object
properties:
customerId:
$ref: '#/components/schemas/HelixId'
dormancyStatus:
type: string
enum:
- Active
- Inactive
- Dormant
lastContactDate:
type: string
format: date-time
example: '2021-01-07T19:00:59.761-06:00'
lastContactType:
$ref: '#/components/schemas/LastContactType'
AccountBeneficiaryReplace200Response:
allOf:
- $ref: '#/components/schemas/CardArray200Response/allOf/0'
- type: object
properties:
data:
type: object
properties:
customerId:
$ref: '#/components/schemas/HelixId'
accountId:
$ref: '#/components/schemas/HelixId'
accountBeneficiaries:
type: array
items:
type: object
properties:
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
beneficiaryPosition:
type:
- integer
- 'null'
description: Position or order of this beneficiary on the account.
distributionPercentage:
type:
- integer
- 'null'
minimum: 0
maximum: 100
description: Whole-number percentage of the account balance to distribute to this beneficiary.
distributionDescription:
type:
- string
- 'null'
description: Free-form description of the distribution.
distributionType:
$ref: '#/components/schemas/DistributionType'
isActive:
type: boolean
DistributionType:
type:
- string
- 'null'
description: 'The method used to distribute the account balance to this beneficiary. Accepted values: Percentage, DescriptionOnly'
enum:
- Percentage
- DescriptionOnly
AccountBeneficiaryAddEditRemove200Response:
allOf:
- $ref: '#/components/schemas/CardArray200Response/allOf/0'
- type: object
properties:
data:
type: object
properties:
customerId:
$ref: '#/components/schemas/HelixId'
accountId:
$ref: '#/components/schemas/HelixId'
customerBeneficiaryId:
$ref: '#/components/schemas/HelixId'
distributionDescription:
type: string
isActive:
type: boolean
beneficiaryPosition:
type:
- integer
- 'null'
description: Position or order of this beneficiary on the account.
distributionPercentage:
type:
- integer
- 'null'
minimum: 0
maximum: 100
description: Whole-number percentage of the account balance to distribute to this beneficiary. Must be between 0 and 100.
distributionType:
$ref: '#/components/schemas/DistributionType'
HelixId:
type: integer
format: int32
minimum: 1
parameters:
CustomerIdPath:
name: customerId
in: path
required: true
schema:
$ref: '#/components/schemas/HelixId'
AccountIdPath:
name: accountId
in: path
required: true
schema:
$ref: '#/components/schemas/HelixId'
securitySchemes:
basicAuth:
type: http
scheme: basic
x-samples-languages:
- curl
- node
- python
- csharp
- ruby
- go
- java
- kotlin
- php
x-provenance:
method: searched
source: https://docs.helix.q2.com/reference
harvested: '2026-10-14'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://docs.helix.q2.com/reference/accountaddentitlement.md
- https://docs.helix.q2.com/reference/accountbeneficiaryadd.md
- https://docs.helix.q2.com/reference/accountbeneficiaryedit.md
- https://docs.helix.q2.com/reference/accountbeneficiaryget.md
- https://docs.helix.q2.com/reference/accountbeneficiarylist.md
- https://docs.helix.q2.com/reference/accountbeneficiaryremove.md
- https://docs.helix.q2.com/reference/accountbeneficiaryreplace.md
- https://docs.helix.q2.com/reference/accountclose.md
- https://docs.helix.q2.com/reference/accountcreate.md
- https://docs.helix.q2.com/reference/accounteditentitlement.md
- https://docs.helix.q2.com/reference/accountget.md
- https://docs.helix.q2.com/reference/accountgetbytag.md
- https://docs.helix.q2.com/reference/accountlimitdelete.md
- https://docs.helix.q2.com/reference/accountlimitlist.md
- https://docs.helix.q2.com/reference/accountlimitset.md
- https://docs.helix.q2.com/reference/accountlist.md
- https://docs.helix.q2.com/reference/accountlistentitlements.md
- https://docs.helix.q2.com/reference/accountlock.md
- https://docs.helix.q2.com/reference/accountplacehold.md
- https://docs.helix.q2.com/reference/accountreleasehold.md
- https://docs.helix.q2.com/reference/accountremoveentitlement.md
- https://docs.helix.q2.com/reference/accountstoppaycreatecheckstoppay.md
- https://docs.helix.q2.com/reference/accountstoppayexpire.md
- https://docs.helix.q2.com/reference/accountstoppaylist.md
- https://docs.helix.q2.com/reference/accountunlock.md
- https://docs.helix.q2.com/reference/accountupdate.md
- https://docs.helix.q2.com/reference/bankdocumentdownload.md
- https://docs.helix.q2.com/reference/bankdocumentlist.md
- https://docs.helix.q2.com/reference/cardaddaccount.md
- https://docs.helix.q2.com/reference/cardarchive.md
- https://docs.helix.q2.com/reference/cardcontrolarchive.md
- https://docs.helix.q2.com/reference/cardcontrolarchivebytag.md
- https://docs.helix.q2.com/reference/cardcontrolcreate.md
- https://docs.helix.q2.com/reference/cardcontrolget.md
- https://docs.helix.q2.com/reference/cardcontrolgetbytag.md
- https://docs.helix.q2.com/reference/cardcreatedigital.md
- https://docs.helix.q2.com/reference/cardfraudtextalertget.md
- https://docs.helix.q2.com/reference/cardfraudtextalertoptout.md
- https://docs.helix.q2.com/reference/cardget.md
- https://docs.helix.q2.com/reference/cardgetbytag.md
- https://docs.helix.q2.com/reference/cardhotlist.md
- https://docs.helix.q2.com/reference/cardinitiate.md
- https://docs.helix.q2.com/reference/cardlimitget.md
- https://docs.helix.q2.com/reference/cardlimitoverride.md
- https://docs.helix.q2.com/reference/cardlimitreset.md
- https://docs.helix.q2.com/reference/cardlimittemporaryoverride.md
- https://docs.helix.q2.com/reference/cardlist.md
- https://docs.helix.q2.com/reference/cardlock.md
- https://docs.helix.q2.com/reference/cardmockadminfalconfraud.md
- https://docs.helix.q2.com/reference/cardmockdeclinepurchaseauthorize.md
- https://docs.helix.q2.com/reference/cardmockdepositpurchasereturn.md
- https://docs.helix.q2.com/reference/cardmockdepositpurchasereturnreversal.md
- https://docs.helix.q2.com/reference/cardmockwithdrawalcardcash.md
- https://docs.helix.q2.com/reference/cardmockwithdrawalpurchaseauthorize.md
- https://docs.helix.q2.com/reference/cardmockwithdrawalpurchasecomplete.md
- https://docs.helix.q2.com/reference/cardorderphysical.md
- https://docs.helix.q2.com/reference/cardprovisionapplepay.md
- https://docs.helix.q2.com/reference/cardprovisioncarddetail.md
- https://docs.helix.q2.com/reference/cardprovisiongooglepay.md
- https://docs.helix.q2.com/reference/cardreissue.md
- https://docs.helix.q2.com/reference/cardremoveaccount.md
- https://docs.helix.q2.com/reference/cardrenewaloverride.md
- https://docs.helix.q2.com/reference/cardreprioritizeaccount.md
- https://docs.helix.q2.com/reference/cardresetpin.md
- https://docs.helix.q2.com/reference/cardriskfactorget.md
- https://docs.helix.q2.com/reference/cardriskfactorset.md
- https://docs.helix.q2.com/reference/cardunlock.md
- https://docs.helix.q2.com/reference/cardupdate.md
- https://docs.helix.q2.com/reference/cardverify.md
- https://docs.helix.q2.com/reference/cardverifybycvv.md
- https://docs.helix.q2.com/reference/customeranswerlist.md
- https://docs.helix.q2.com/reference/customeranswerpost.md
- https://docs.helix.q2.com/reference/customerarchive.md
- https://docs.helix.q2.com/reference/customerbeneficiaryaccountassignmentlist.md
- https://docs.helix.q2.com/reference/customerbeneficiarycreate.md
- https://docs.helix.q2.com/reference/customerbeneficiarydeactivate.md
- https://docs.helix.q2.com/reference/customerbeneficiaryget.md
- https://docs.helix.q2.com/reference/customerbeneficiarylist.md
- https://docs.helix.q2.com/reference/customerbeneficiaryupdate.md
- https://docs.helix.q2.com/reference/customercreate.md
- https://docs.helix.q2.com/reference/customercreatebusiness.md
- https://docs.helix.q2.com/reference/customercreatebusinessapplication.md
- https://docs.helix.q2.com/reference/customerdocumentget.md
- https://docs.helix.q2.com/reference/customerdocumentlist.md
- https://docs.helix.q2.com/reference/customerdocumentupdatestatus.md
- https://docs.helix.q2.com/reference/customerdocumentupload.md
- https://docs.helix.q2.com/reference/customergeneratetoken.md
- https://docs.helix.q2.com/reference/customerget.md
- https://docs.helix.q2.com/reference/customergetbyemail.md
- https://docs.helix.q2.com/reference/customergetbytag.md
- https://docs.helix.q2.com/reference/customerlist.md
- https://docs.helix.q2.com/reference/customernote.md
- https://docs.helix.q2.com/reference/customernoteslist.md
- https://docs.helix.q2.com/reference/customerrelationshiparchive.md
- https://docs.helix.q2.com/reference/customerrelationshipcreate.md
- https://docs.helix.q2.com/reference/customerrelationshiplist.md
- https://docs.helix.q2.com/reference/customerrelationshipupdate.md
- https://docs.helix.q2.com/reference/customerrelationshipupdateprimarycontact.md
- https://docs.helix.q2.com/reference/customersearch.md
- https://docs.helix.q2.com/reference/customersecurityanswerslist.md
- https://docs.helix.q2.com/reference/customersetlastcontact.md
- https://docs.helix.q2.com/reference/customerupdate.md
- https://docs.helix.q2.com/reference/customerupdateaddress-2.md
- https://docs.helix.q2.com/reference/externalaccountarchive.md
- https://docs.helix.q2.com/reference/externalaccountcreate.md
- https://docs.helix.q2.com/reference/externalaccountdocumentupload.md
- https://docs.helix.q2.com/reference/externalaccountget.md
- https://docs.helix.q2.com/reference/externalaccountgetbytag.md
- https://docs.helix.q2.com/reference/externalaccountinitiate.md
- https://docs.helix.q2.com/reference/externalaccountlist.md
- https://docs.helix.q2.com/reference/externalaccountlock.md
- https://docs.helix.q2.com/reference/externalaccountresendverification.md
- https://docs.helix.q2.com/reference/externalaccountunlock.md
- https://docs.helix.q2.com/reference/externalaccountupdate.md
- https://docs.helix.q2.com/reference/externalaccountverify.md
- https://docs.helix.q2.com/reference/feeconfiglist.md
- https://docs.helix.q2.com/reference/feeget.md
- https://docs.helix.q2.com/reference/feegetbycustomertag.md
- https://docs.helix.q2.com/reference/programget.md
- https://docs.helix.q2.com/reference/programlistaccountholds.md
- https://docs.helix.q2.com/reference/programlistindustryclassificationcodes.md
- https://docs.helix.q2.com/reference/programquestionslist.md
- https://docs.helix.q2.com/reference/statementdownload.md
- https://docs.helix.q2.com/reference/statementget.md
- https://docs.helix.q2.com/reference/statementlist.md
- https://docs.helix.q2.com/reference/statementsearch.md
- https://docs.helix.q2.com/reference/transactioncreatefee.md
- https://docs.helix.q2.com/reference/transactionget.md
- https://docs.helix.q2.com/reference/transactiongetbytag.md
- https://docs.helix.q2.com/reference/transactionlist.md
- https://docs.helix.q2.com/reference/transactionsetavailabledate.md
- https://docs.helix.q2.com/reference/transactionsetstatus.md
- https://docs.helix.q2.com/reference/transactionwireget.md
- https://docs.helix.q2.com/reference/transferachoriginationcreate.md
- https://docs.helix.q2.com/reference/transfercreate.md
- https://docs.helix.q2.com/reference/transfervoid.md
- https://docs.helix.q2.com/reference/transferwirecreate-2.md
merge:
pages: 137
deduped: 1427
conflicts_kept_first: 0