Epayment

BQE ePayments lets clients pay their invoices electronically, using credit cards or ACH transfers. ePayment profiles represent the online-payment accounts configured in CORE under Settings > ePayments to accept these payments, and ePayment profile assignments link profiles to clients, projects, or invoices so that those entities can accept payments through them.
The Epayment API allows you to perform the following operations:
Retrieve a specific ePayment profile assignment, or a list of assignments
Assign an ePayment profile to an entity (Client, Project, or Invoice)
Update the ePayment profile assigned to an entity
Remove an ePayment profile assignment from an entity
Retrieve a specific ePayment profile, or a list of ePayment profiles

  • cURL
  • NODE.JS
  • PHP
  • C#
  • PYTHON
  • JAVA
NameDescriptionFormatAttributes
entityId Identifier of the entity to which the profile is assigned.uuidFilterable
entityType Type of entity to which the profile is assigned, e.g., Client, Project, or Invoice.
EpaymentEntityType Enumerated type: Click to see possible values and their descriptions.
Filterable, Sortable
epaymentProfileId Identifier of the ePayment profile being assigned.uuidFilterable
createdById Identifier of the user who created this objectuuidFilterable
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-timeFilterable, Sortable
epaymentProfile Name of the assigned ePayment profile.string
id Object identifieruuidFilterable
lastUpdated Last updated date and time value of this object in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-timeFilterable, Sortable
lastUpdatedById Identifier of the user who last updated this objectuuidFilterable
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectState Enumerated type: Click to see possible values and their descriptions.
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte

Use this method to retrieve a list of ePayment profile assignments. You can optionally pass where, orderBy, and page as query parameters to filter the result. Use the fields parameter to request a subset of the model. By default, a complete model is returned.

Request URL
base_url/epayment

Method Overview

HTTP Method:

GET

Content Type:

application/json

Response Format:

json

Requires Authentication?

Yes

Headers:

Access Token

Module:

Epayment

Required Scopes:

read:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
fields Query Specifies the model properties you want in the response bodystring
where Query Specifies only those records that match an expression in the querystring
orderBy Query Specifies the order of the recordsstring
page Query Specifies the page number and number of records on each pagestring
expand Query Specifies the nested model properties you want in the response bodystring
Response Body
NameDescriptionFormat
entityId Identifier of the entity to which the profile is assigned.uuid
entityType Type of entity to which the profile is assigned, e.g., Client, Project, or Invoice.
EpaymentEntityTypeEnumerated type: Click to see possible values and their descriptions.
epaymentProfileId Identifier of the ePayment profile being assigned.uuid
createdById Identifier of the user who created this objectuuid
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
epaymentProfile Name of the assigned ePayment profile.string
id Object identifieruuid
lastUpdated Last updated date and time value of this object in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
lastUpdatedById Identifier of the user who last updated this objectuuid
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectStateEnumerated type: Click to see possible values and their descriptions.
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte
Example Request
Example Response
[
  {
    "entityId": "38aa107a-5601-474a-a0a9-311c24e0fa5b",
    "entityType": null,
    "epaymentProfileId": "7654316f-4d06-4829-94db-df739a5cf4bc",
    "createdById": "917e9e4c-e283-4013-85a6-ed083afb608e",
    "createdOn": "2026-09-23T06:02:26Z",
    "epaymentProfile": "epaymentProfile",
    "id": "42bd3c59-1afc-4ed2-911f-af3925db04c3",
    "lastUpdated": "2026-09-23T06:02:26Z",
    "lastUpdatedById": "e005a7d6-be77-42ea-9c8d-500b234793e4",
    "objectState": null,
    "token": 0,
    "version": "U3dhZ2dlciByb2Nrcw=="
  }
]

Use this method to retrieve a specific ePayment profile assignment. Pass id as the parameter.

Request URL
base_url/epayment/{id}

Method Overview

HTTP Method:

GET

Content Type:

application/json

Response Format:

json

Requires Authentication?

Yes

Headers:

Access Token

Module:

Epayment

Required Scopes:

read:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
id Path EPaymentProfileAssignment identifierstring
Response Body
NameDescriptionFormat
entityId Identifier of the entity to which the profile is assigned.uuid
entityType Type of entity to which the profile is assigned, e.g., Client, Project, or Invoice.
EpaymentEntityTypeEnumerated type: Click to see possible values and their descriptions.
epaymentProfileId Identifier of the ePayment profile being assigned.uuid
createdById Identifier of the user who created this objectuuid
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
epaymentProfile Name of the assigned ePayment profile.string
id Object identifieruuid
lastUpdated Last updated date and time value of this object in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
lastUpdatedById Identifier of the user who last updated this objectuuid
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectStateEnumerated type: Click to see possible values and their descriptions.
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte
Example Request
Example Response
{
  "entityId": "4ce04844-697d-412b-a807-a7ee6a6e23d1",
  "entityType": null,
  "epaymentProfileId": "ff10b900-b820-47a4-bab0-68ee4b70d6e2",
  "createdById": "61e1f815-d271-40fc-a542-efe5d3c4f7b0",
  "createdOn": "2026-09-23T06:02:26Z",
  "epaymentProfile": "epaymentProfile",
  "id": "9b17c1bc-8d15-4eb2-a492-e571a2b2574b",
  "lastUpdated": "2026-09-23T06:02:26Z",
  "lastUpdatedById": "036de512-31f7-47a3-a7c7-24a7a0ce1415",
  "objectState": null,
  "token": 0,
  "version": "U3dhZ2dlciByb2Nrcw=="
}

Use this method to retrieve a list of available ePayment profiles. Use this to look up the epaymentProfileId to reference when creating or updating an assignment. You can optionally pass where, orderBy, and page as query parameters to filter the result. Use the fields parameter to request a subset of the model. By default, a complete model is returned.

Request URL
base_url/epayment/profile

Method Overview

HTTP Method:

GET

Content Type:

application/json

Response Format:

json

Requires Authentication?

Yes

Headers:

Access Token

Module:

Epayment

Required Scopes:

read:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
fields Query Specifies the model properties you want in the response bodystring
where Query Specifies only those records that match an expression in the querystring
orderBy Query Specifies the order of the recordsstring
page Query Specifies the page number and number of records on each pagestring
expand Query Specifies the nested model properties you want in the response bodystring
Response Body
NameDescriptionFormat
allowDelayedPayment Indicates whether clients can schedule an online payment for a future date using the profile. Applies to Credit Card profiles only.boolean
allowPartialPayment Indicates whether clients can make a partial payment on an invoice using the profile.boolean
createdById Identifier of the user who created this objectuuid
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
depositAccount Name of the bank account into which the online payments are deposited.string
depositAccountId Identifier of the bank account that online payments made through the profile are deposited into.uuid
expenseAccount Name of the expense account recording processing fee expenses.string
expenseAccountId Identifier of the expense account recording processing fee expenses for the profile.uuid
id Object identifieruuid
isActive Indicates whether the profile is active or not.boolean
isDefault Indicates whether the profile is the default one for its payment method.boolean
lastUpdatedById Identifier of the user who last updated this objectuuid
method Payment method accepted by the profile: Credit Card or ACH Transfer.
EpaymentMethodEnumerated type: Click to see possible values and their descriptions.
name Name of the ePayment profile.string
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectStateEnumerated type: Click to see possible values and their descriptions.
paymentProvider Name of the payment gateway or processor associated with the profile, e.g., BQE ePayments.string
processingFeeFixed Flat processing fee amount charged for online payments made through the profile. Applies to ACH profiles only.double
processingFeePercent Percentage-based processing fee charged for online payments made through the profile. Applies to Credit Card profiles only.double
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte
Example Request
Example Response
[
  {
    "allowDelayedPayment": true,
    "allowPartialPayment": true,
    "createdById": "e5919191-e417-41d8-9de8-dd745d140318",
    "createdOn": "2026-09-23T06:02:26Z",
    "depositAccount": "depositAccount",
    "depositAccountId": "56537963-fcd4-41c4-92e5-13664985826e",
    "expenseAccount": "expenseAccount",
    "expenseAccountId": "e187c8ac-6cd3-40c7-b7a3-c97638708f4a",
    "id": "f9fb674a-6c92-470e-88f2-a9a975ab4345",
    "isActive": true,
    "isDefault": true,
    "lastUpdatedById": "f129b54b-9d8f-4bc9-bf44-24a21ee91a03",
    "method": null,
    "name": "EpaymentProfile",
    "objectState": null,
    "paymentProvider": "paymentProvider",
    "processingFeeFixed": 1,
    "processingFeePercent": 1,
    "token": 0,
    "version": "U3dhZ2dlciByb2Nrcw=="
  }
]

Use this method to retrieve a specific ePayment profile. Pass id as the parameter.

Request URL
base_url/epayment/profile/{id}

Method Overview

HTTP Method:

GET

Content Type:

application/json

Response Format:

json

Requires Authentication?

Yes

Headers:

Access Token

Module:

Epayment

Required Scopes:

read:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
id Path EpaymentProfile identifierstring
Response Body
NameDescriptionFormat
allowDelayedPayment Indicates whether clients can schedule an online payment for a future date using the profile. Applies to Credit Card profiles only.boolean
allowPartialPayment Indicates whether clients can make a partial payment on an invoice using the profile.boolean
createdById Identifier of the user who created this objectuuid
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
depositAccount Name of the bank account into which the online payments are deposited.string
depositAccountId Identifier of the bank account that online payments made through the profile are deposited into.uuid
expenseAccount Name of the expense account recording processing fee expenses.string
expenseAccountId Identifier of the expense account recording processing fee expenses for the profile.uuid
id Object identifieruuid
isActive Indicates whether the profile is active or not.boolean
isDefault Indicates whether the profile is the default one for its payment method.boolean
lastUpdatedById Identifier of the user who last updated this objectuuid
method Payment method accepted by the profile: Credit Card or ACH Transfer.
EpaymentMethodEnumerated type: Click to see possible values and their descriptions.
name Name of the ePayment profile.string
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectStateEnumerated type: Click to see possible values and their descriptions.
paymentProvider Name of the payment gateway or processor associated with the profile, e.g., BQE ePayments.string
processingFeeFixed Flat processing fee amount charged for online payments made through the profile. Applies to ACH profiles only.double
processingFeePercent Percentage-based processing fee charged for online payments made through the profile. Applies to Credit Card profiles only.double
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte
Example Request
Example Response
{
  "allowDelayedPayment": true,
  "allowPartialPayment": true,
  "createdById": "4e326009-125f-46b4-bbff-ce993c743a81",
  "createdOn": "2026-09-23T06:02:26Z",
  "depositAccount": "depositAccount",
  "depositAccountId": "47543435-54b8-4616-94e1-2d6cd77828c4",
  "expenseAccount": "expenseAccount",
  "expenseAccountId": "4cadd917-2fcd-4a0a-a473-58b16fcc1073",
  "id": "acf3173f-1bc3-429d-8111-d93a5f9a7eff",
  "isActive": true,
  "isDefault": true,
  "lastUpdatedById": "736a92fe-b11a-4881-b9f1-2be2b5063636",
  "method": null,
  "name": "EpaymentProfile",
  "objectState": null,
  "paymentProvider": "paymentProvider",
  "processingFeeFixed": 1,
  "processingFeePercent": 1,
  "token": 0,
  "version": "U3dhZ2dlciByb2Nrcw=="
}

Use this method to assign an ePayment profile to an entity. Pass an Epayment object as the parameter.

Request URL
base_url/epayment

Method Overview

HTTP Method:

POST

Content Type:

application/json

Response Format:

json

Requires Authentication?

Yes

Headers:

Access Token

Module:

Epayment

Required Scopes:

readwrite:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
body Body EPaymentProfileAssignment objectEPaymentProfileAssignment
Response Body
NameDescriptionFormat
entityId Identifier of the entity to which the profile is assigned.uuid
entityType Type of entity to which the profile is assigned, e.g., Client, Project, or Invoice.
EpaymentEntityTypeEnumerated type: Click to see possible values and their descriptions.
epaymentProfileId Identifier of the ePayment profile being assigned.uuid
createdById Identifier of the user who created this objectuuid
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
epaymentProfile Name of the assigned ePayment profile.string
id Object identifieruuid
lastUpdated Last updated date and time value of this object in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
lastUpdatedById Identifier of the user who last updated this objectuuid
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectStateEnumerated type: Click to see possible values and their descriptions.
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte
Example Request
Example Response
{
  "entityId": "30d36054-baf0-4611-a9e4-6fba5785cdcb",
  "entityType": null,
  "epaymentProfileId": "fcd84ae2-5b7a-4973-88b2-68c253a64b6d",
  "createdById": "960ee28b-b2bd-4a96-b8fa-4348a58b03bc",
  "createdOn": "2026-09-23T06:02:26Z",
  "epaymentProfile": "epaymentProfile",
  "id": "cf0b2c06-c899-4ce6-b59c-96ce9183b203",
  "lastUpdated": "2026-09-23T06:02:26Z",
  "lastUpdatedById": "f63ef954-0f60-4d8b-a717-0fb9577a6c7f",
  "objectState": null,
  "token": 0,
  "version": "U3dhZ2dlciByb2Nrcw=="
}

Use this method to update an ePayment profile assignment. Pass id and the Epayment object as parameters.

Request URL
base_url/epayment/{id}

Method Overview

HTTP Method:

PUT

Content Type:

application/json

Response Format:

json

Requires Authentication?

Yes

Headers:

Access Token

Module:

Epayment

Required Scopes:

readwrite:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
id Path EPaymentProfileAssignment identifierstring
body Body EPaymentProfileAssignment objectEPaymentProfileAssignment
Response Body
NameDescriptionFormat
entityId Identifier of the entity to which the profile is assigned.uuid
entityType Type of entity to which the profile is assigned, e.g., Client, Project, or Invoice.
EpaymentEntityTypeEnumerated type: Click to see possible values and their descriptions.
epaymentProfileId Identifier of the ePayment profile being assigned.uuid
createdById Identifier of the user who created this objectuuid
createdOn Date and time when this object was created (UTC Now), in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
epaymentProfile Name of the assigned ePayment profile.string
id Object identifieruuid
lastUpdated Last updated date and time value of this object in ISO 8601 date-time format, such as YYYY-MM-DDThh:mm:ssdate-time
lastUpdatedById Identifier of the user who last updated this objectuuid
objectState Represents the state of the object. e.g., new, unchanged, modified or deleted
ObjectStateEnumerated type: Click to see possible values and their descriptions.
token Represents the token for update operationsint32
version Implements concurrency on this objectbyte
Example Request
Example Response
{
  "entityId": "1a3901bd-7870-4036-bd0d-57b560e3fb7c",
  "entityType": null,
  "epaymentProfileId": "f9750cc4-5d3b-4f65-8acc-4673d8a00414",
  "createdById": "ce738121-6087-40a3-88e3-edeb21f30171",
  "createdOn": "2026-09-23T06:02:26Z",
  "epaymentProfile": "epaymentProfile",
  "id": "1806760e-a430-43f4-8c4e-91e443f4f15c",
  "lastUpdated": "2026-09-23T06:02:26Z",
  "lastUpdatedById": "34cb0cd0-5fa1-4397-94e7-76d26924de50",
  "objectState": null,
  "token": 0,
  "version": "U3dhZ2dlciByb2Nrcw=="
}

Use this method to delete an ePayment profile assignment. Pass id as the parameter.

Request URL
base_url/epayment/{id}

Method Overview

HTTP Method:

DELETE

Content Type:

application/json

Response Format:

N/A

Requires Authentication?

Yes

Headers:

Access Token

Required Scopes:

readwrite:core

Required Subscription:

View Subscription


Request Parameters asterisk denotes required
NameParameter TypeDescriptionFormat
id Path EPaymentProfileAssignment identifierstring
Example Request