AlayaCare Billing Cycles API
The Billing Cycles API from AlayaCare — 5 operation(s) for billing cycles.
The Billing Cycles API from AlayaCare — 5 operation(s) for billing cycles.
openapi: 3.0.0
info:
version: 1.0.19-oas3
title: AlayaCare Accounting Accounts Billing Cycles API
description: '**AlayaCare IDs:**
The following terms are used to reference IDs that identify resources in AlayaCare:
- id
- visit_id
- premium_id
- visit_premium_id
- employee_id
- cost_centre_id
- client_id
**External IDs**
The following terms are used to reference IDs that identify resources systems external to AlayaCare:
- employee_external_id
- client_external_id
External IDs are required to be unique.
No other assumptions are made regarding their format they are treated as strings.
'
servers:
- url: https://example.alayacare.com/ext/api/v2/accounting
security:
- basic_auth: []
tags:
- name: Billing Cycles
paths:
/billing/cycles/:
get:
tags:
- Billing Cycles
summary: Get a collection of all legacy billing cycles
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/sortBy'
- $ref: '#/components/parameters/sortOrder'
- $ref: '#/components/parameters/frequency'
- $ref: '#/components/parameters/invoiceDateFrom'
- $ref: '#/components/parameters/invoiceDateTo'
- $ref: '#/components/parameters/billingPeriodFrom'
- $ref: '#/components/parameters/billingPeriodTo'
- $ref: '#/components/parameters/branchId'
- $ref: '#/components/parameters/searchId'
responses:
'200':
description: the list of payor billing cycles
content:
application/json:
schema:
$ref: '#/components/schemas/BillingCycleCollection'
/billing/cycles/{billing_period_id}:
parameters:
- in: path
name: billing_period_id
description: Billing Period ID
required: true
schema:
type: integer
minimum: 1
get:
tags:
- Billing Cycles
summary: Get a legacy billing cycle
responses:
'200':
description: the bililng cycle
content:
application/json:
schema:
$ref: '#/components/schemas/BillingCycle'
/billing/cycles/{billing_period_id}/invoices:
get:
tags:
- Billing Cycles
summary: Fetch multiple private pay invoices
parameters:
- in: path
name: billing_period_id
description: Billing Period ID
required: true
schema:
type: integer
minimum: 1
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/clientSearch'
- $ref: '#/components/parameters/invoiceSearch'
- $ref: '#/components/parameters/status'
- $ref: '#/components/parameters/sortOrder'
- $ref: '#/components/parameters/billToParty'
- $ref: '#/components/parameters/balanceFrom'
- $ref: '#/components/parameters/balanceTo'
- $ref: '#/components/parameters/unpaidBalance'
- $ref: '#/components/parameters/clientTags'
- $ref: '#/components/parameters/clientTagMode'
- name: program_type
in: query
required: false
schema:
type: string
- name: program_name_search
in: query
required: false
schema:
type: string
- name: sort_by
in: query
required: false
schema:
type: string
enum:
- id
- client_last_name
- client_first_name
- client_first_name_last_name
- client_last_name_first_name
- client_id,
- bill_to_party
- invoice_number
- balance
- total
- program_type
- status
responses:
'200':
description: Collection of invoices
content:
'*/*':
schema:
type: object
properties:
page:
type: integer
example: 1
description: The current page number
minimum: 1
count:
type: integer
example: 17
description: Number of items in the list (all pages)
items_per_page:
type: integer
example: 10
description: number of items per page
total_pages:
type: integer
example: 2
description: The total number of pages of that size in the collection
items:
type: array
items:
$ref: '#/components/schemas/InvoiceQuerySchema'
/billing/cycles/{billing_period_id}/invoices/{invoice_id}:
get:
tags:
- Billing Cycles
summary: Fetch a specific invoice
parameters:
- in: path
name: billing_period_id
description: Billing Period ID
required: true
schema:
type: integer
minimum: 1
- in: path
name: invoice_id
description: Invoice ID
required: true
schema:
type: integer
minimum: 1
responses:
'200':
description: the invoice
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceQuerySchema'
/billing/cycles/invoice/{invoice_id}/details:
get:
tags:
- Billing Cycles
summary: Fetch a specific invoice's invoice items
parameters:
- in: path
name: invoice_id
description: Invoice ID
required: true
schema:
type: integer
minimum: 1
responses:
'200':
description: the invoice
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceQuerySchema'
components:
parameters:
billingPeriodTo:
in: query
name: billing_period_to
description: Returns all billing periods that overlap with the entered date range.
required: false
schema:
type: string
frequency:
in: query
name: frequency
description: Returns all billing periods with that frequency.
required: false
schema:
type: integer
enum:
- 1
- 2
- 3
clientSearch:
name: client_search
in: query
required: false
schema:
type: string
unpaidBalance:
name: unpaid_balance
in: query
required: false
schema:
type: boolean
sortOrder:
in: query
name: sort_order
description: Order to sort by
required: false
schema:
type: string
enum:
- ASC
- DESC
default: ASC
balanceFrom:
name: balance_from
in: query
required: false
schema:
type: number
status:
name: status
in: query
required: false
style: form
explode: false
schema:
type: array
items:
type: string
enum:
- draft
- revised
- sent
- void
- deleted
- copy
- paid
- written_off
- suspended
- rejected
branchId:
description: Filter by branch ID
name: branch_id
in: query
required: false
schema:
type: integer
minimum: 1
count:
description: Number of items per page.
name: count
in: query
required: false
schema:
type: integer
default: 100
clientTags:
name: client_tags
in: query
required: false
style: form
explode: false
schema:
type: array
items:
type: string
invoiceSearch:
name: invoice_search
in: query
required: false
schema:
type: string
balanceTo:
name: balance_to
in: query
required: false
schema:
type: number
invoiceDateTo:
in: query
name: invoice_date_to
description: Returns all billing periods using that Invoice Date within the date range.
required: false
schema:
type: string
format: date
searchId:
in: query
name: search_id
description: Partial search on the id field.
required: false
schema:
type: integer
sortBy:
in: query
name: sort_by
description: Field to sort by
required: false
schema:
type: string
enum:
- start_date
- end_date
- invoice_date
default: start_date
billToParty:
name: bill_to_party
in: query
required: false
schema:
type: string
invoiceDateFrom:
in: query
name: invoice_date_from
description: Returns all billing periods using that Invoice Date within the date range.
required: false
schema:
type: string
format: date
billingPeriodFrom:
in: query
name: billing_period_from
description: Returns all billing periods that overlap with the entered date range.
required: false
schema:
type: string
format: date
clientTagMode:
name: client_tag_mode
in: query
required: false
schema:
type: string
enum:
- all
- any
page:
description: Filter by page number.
name: page
in: query
required: false
schema:
type: integer
default: 1
minimum: 1
schemas:
Branch:
description: AlayaCare branch
type: object
properties:
id:
type: integer
description: Branch ID
example: 1000
minimum: 1
name:
type: string
description: Branch name
example: AlayaCare Health
User:
type: object
properties:
id:
type: integer
first_name:
type: string
last_name:
type: string
BillToSchema:
type: object
properties:
id:
type: integer
example: 12
name:
type: string
example: Funder
guid:
type: string
example: '27990'
guid_to:
type: string
example: '27991'
is_active:
type: boolean
example: true
import_id:
type: integer
example: 123
remarks:
type: string
example: falls prevention program
contact_type:
type: string
example: Referral Contact
lang:
type: string
example: english
list:
type: string
example: Funder List (System)
BillingCycle:
type: object
properties:
id:
type: integer
minimum: 1
branch:
$ref: '#/components/schemas/Branch'
create_user:
$ref: '#/components/schemas/User'
update_user:
$ref: '#/components/schemas/User'
close_user:
$ref: '#/components/schemas/User'
create_time:
type: string
format: date-time
update_time:
type: string
format: date-time
closed_at:
type: string
format: date-time
guid:
type: integer
start_date:
type: string
format: date
end_date:
type: string
format: date
back_billing_date:
type: string
format: date
nullable: true
example: null
invoice_date:
type: string
format: date
idstatus:
type: integer
example: null
overtime_check:
type: boolean
example: null
allow_shift_creation:
type: boolean
example: true
type:
type: string
enum:
- legacy
- payor_invoicing
example: payor_invoicing
job_id:
type: integer
invoice_count:
type: integer
description: Count of invoices in any status
draft_invoice_count:
type: integer
description: Count of invoices in Draft status
sent_invoice_count:
type: integer
description: Count of invoices in Sent status = Sent, Paid, Write-Off
deleted_invoice_count:
type: integer
description: Count of invoices in Deleted status
is_first:
type: boolean
description: Boolean indicating if the program billing period is the first for that Branch - Frequency
is_latest:
type: boolean
description: Boolean indicating if the program billing period is the latest for that Branch - Frequency
InvoiceQuerySchema:
type: object
properties:
id:
type: integer
example: 12
minimum: 1
status:
type: string
example: draft
invoice_number:
type: integer
example: 2348
invoice_version:
type: integer
example: 0
invoice_date:
type: string
format: date
example: 2018-01-16
updated_at:
type: string
format: date-time
example: 2018-01-16T14:17:05-0500
balance:
type: number
example: 5
total:
type: number
example: 10
can_be_written_off:
type: boolean
example: false
can_be_voided:
type: boolean
example: false
can_be_regenerated:
type: boolean
example: false
can_be_paid:
type: boolean
example: false
can_be_deleted:
type: boolean
example: false
can_add_transaction:
type: boolean
example: false
is_ccac_funder:
type: boolean
example: false
is_funder_batched_funder:
type: boolean
example: false
total_visits:
type: integer
example: 2
total_premiums:
type: integer
example: 3
total_supplies:
type: integer
example: 4
total_client_premiums:
type: integer
example: 5
total_income_items:
type: integer
example: 6
visits_and_premiums_subtotal:
type: number
example: 10
supplies_subtotal:
type: number
example: 0
client_premiums_subtotal:
type: number
example: 5
income_items_subtotal:
type: number
example: 6
client_id:
type: integer
example: 2
minimum: 1
crn:
type: string
example: '10009'
description: Has value only if BPAY FF is ON and is already generated
taxes:
$ref: '#/components/schemas/TaxesSchema'
bill_to:
$ref: '#/components/schemas/BillToSchema'
pdf_url:
type: string
example: /path/to/file.pdf
invoice_items:
type: array
items:
$ref: '#/components/schemas/InvoiceItemSchema'
TaxesSchema:
type: object
properties:
taxtotal:
type: number
example: 2
types:
$ref: '#/components/schemas/TaxTypesSchema'
BillingCycleCollection:
type: object
properties:
count:
type: integer
page:
type: integer
minimum: 1
items_per_page:
type: integer
total_pages:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/BillingCycle'
BillingContactSchema:
type: object
properties:
id:
type: integer
example: 16
first_name:
type: string
example: Jane
last_name:
type: string
example: Jones
address:
type: string
example: 12 crescent street
address_suite:
type: string
example: app. 1B
city:
type: string
example: Cityville
state:
type: string
example: Quebec
zip:
type: string
example: H1H1H1
country:
type: string
example: Canada
phone_main:
type: string
example: '5141234567'
ClientSchema:
type: object
properties:
id:
type: integer
example: 16
minimum: 1
first_name:
type: string
example: Jane
last_name:
type: string
example: Jones
InvoiceItemSchema:
type: object
properties:
id:
type: integer
example: 12
minimum: 1
invoice_id:
type: integer
example: 12
minimum: 1
source_id:
type: integer
example: 12
subtotal:
type: number
format: double
example: 10.0
total_cost:
type: number
format: double
example: 3.0
total_taxes:
type: number
format: double
example: 3.0
total:
type: number
format: double
example: 13.0
ajdustment_type:
type: string
example: adjustment
create_user_id:
type: integer
example: 2
minimum: 1
created_at:
type: string
format: date-time
example: 2018-01-16T14:17:05-0500
gl_asset_acc_account_id:
type: integer
example: 2
minimum: 1
gl_revenue_acc_account_id:
type: integer
example: 2
minimum: 1
item_end_at:
type: string
format: date
example: 2018-01-16T14:17:05-0500
item_start_at:
type: string
format: date
example: 2018-01-16T14:16:05-0500
memo:
type: string
example: memo
policy_version_id:
type: integer
example: 2
minimum: 1
quantity:
type: number
format: double
example: 2.0
quantity_units:
type: string
example: hours
receivables_cost_centre_id:
type: integer
example: 2
minimum: 1
taxable:
type: boolean
example: true
type:
type: string
example: visit
unitprice:
type: number
format: double
example: 2.0
updated_at:
type: string
format: date-time
example: 2018-01-16T14:17:05-0500
update_user_id:
type: integer
example: 2
minimum: 1
voided_by_id:
type: integer
example: 2
minimum: 1
payor:
$ref: '#/components/schemas/PayorSchema'
TaxTypesSchema:
type: object
properties:
name:
type: string
example: HST
total:
type: number
example: 2
PayorSchema:
type: object
properties:
id:
type: integer
example: 1
minimum: 1
checksum:
type: integer
example: 7
client:
$ref: '#/components/schemas/ClientSchema'
funder:
$ref: '#/components/schemas/FunderStub'
billing_contact:
$ref: '#/components/schemas/BillingContactSchema'
FunderStub:
type: object
properties:
id:
type: integer
example: 8
minimum: 1
code:
type: string
example: Some Funder
name:
type: string
example: Some Funder
description:
type: string
example: Some Funder
invoicing_model:
type: string
example: funder_individual
securitySchemes:
basic_auth:
type: http
description: Basic HTTP auth over https
scheme: basic