The Finance, or Collect, API provides all the accounts receivable capabilities in Rhythm. This includes all aspects of Invoices, Credits, Payments, Credit Memos, and Debit Memos. Additionally, this API manages Batches and Fiscal Periods and can be used to download batches for import into your accounting package.
Like most of the other Rhythm apps, the Collect API includes endpoints for Query Definitions. These endpoints are commonly used to retrieve saved queries, which can then be executed using the Query endpoints of the System API.
https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/
https://collect.api.rhythmsoftware.com/
https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/invoices/{tenantId}/{id}
https://collect.api.rhythmsoftware.com/invoices/{tenantId}/{id}
curl -i -X GET \
'https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/invoices/{tenantId}/{id}?consistentRead=string&fields=string' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'
The invoice was retrieved successfully.
The base currency for transactions business unit
The organization being billed for this invoice
The currency code in use
Custom metadata that can be used by custom order generation processes for hyper-customized order & invoice forms
Amount to pay when created
The amount written off on the invoice item
If true, this line item has inline products bundled with it
The legacy G/L account imported from another system
The balance due from the legacy system
The legacy G/L account imported from another system
If the invoice is tied to an order, the line item its tied to
Invoice line item original total (base currency)
The total for this line item NOT allocated to bundled products
The service that owns the type of product for this line item
The status of the invoice item
For legacy invoices that needed to be regenerated, this is the ID of that generated invoice
If an error occurs during regeneration, it is logged here
If true, when email is processed, an email will be sent to the billing contact
Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly
The status of the invoice
If this record was loaded via bulk, the timestamp when the record was processed
If this record was loaded via bulk, the ID of the bulk load process
If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key
If this record was loaded via bulk, the record number in the source file
If this record was loaded via bulk, the source file
The error associated with the calculated field
If a snapshot was restored/applies to this record, the ID of the snapshot
The date/time that this record was created, expressed in ISO-8601 date format
The ID of the user that deleted (or last tried to delete) this object
Means for passing directive information into an object processing logic
If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion
If this record was last touched by a bulk data operation, the ID of that operation
If this record was last touched by a bulk data operation, the sys_version at the time of that operation
The date/time that this record record was last modified, expressed in ISO-8601 date format
The ID of the user that last modified this record
The security context of the last insert, modify, or delete performed on this item
The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox
A number representing the version of this record in the database
The total of the transaction, in the base currency of the business unit.
This invoice was processed using the v2 sync, as opposed to legacy step functions
{ "amount_paid": 0.1, "amount_refunded": 0.1, "amount_written_off": 0.1, "balance_due": 0.1, "base_currency_code": "str", "base_currency_symbol": "string", "batch_id": "string", "bill_to_contact_id": "string", "bill_to_organization_id": "string", "bill_to_type": "contact", "billing_address": { "city": "string", "country": "string", "country_name": "string", "county": "string", "latitude": 0.1, "line1": "string", "line2": "string", "line3": "string", "longitude": 0.1, "postal_code": "string", "state": "string", "time_zone_id": "string" }, "business_unit_id": "string", "cancellation_id": "string", "currency_code": "AED", "currency_symbol": "string", "custom_field_values": [ { … } ], "custom_metadata": {}, "date": "2019-08-24", "date_due": "2019-08-24", "exchange_rate": 0.1, "id": "string", "legacy_balance_due": 0.1, "line_items": [ { … } ], "memo": "string", "notes": "string", "number": 0, "order_id": "string", "parent_invoice_id": "string", "payment_terms_id": "string", "pro_forma": true, "purchase_order_number": "string", "regenerated_invoice_id": "string", "regeneration_error": "string", "return_id": "string", "send_email_to_billing_contact": true, "sharing_secret": "string", "status": "cancelled", "sys_bulk_load_at": "string", "sys_bulk_load_id": "string", "sys_bulk_load_pk": "string", "sys_bulk_load_record_no": 0.1, "sys_bulk_load_source_file": "string", "sys_calculated_field_error": "string", "sys_calculated_field_errors": [ { … } ], "sys_configuration_snapshot_id": "string", "sys_created_at": "2019-08-24T14:15:22Z", "sys_created_by_id": "string", "sys_deleted_by_id": "string", "sys_directive": "string", "sys_external_id": "string", "sys_has_files_in_s3": true, "sys_last_bulk_data_operation_id": "string", "sys_last_bulk_data_operation_sys_version": "string", "sys_last_modified_at": "2019-08-24T14:15:22Z", "sys_last_modified_by_id": "string", "sys_last_security_context": {}, "sys_locked": true, "sys_search_composite_key": "string", "sys_snapshot_base_version": 0.1, "sys_version": 0.1, "template_id": "string", "total": 0.1, "total_in_base_currency": 0.1, "type": "string", "uses_v2_api": true, "workflow_execution_id": "string" }
https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/invoices/{tenantId}/{id}
https://collect.api.rhythmsoftware.com/invoices/{tenantId}/{id}
curl -i -X PATCH \
'https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/invoices/{tenantId}/{id}' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '[
{
"op": "add",
"path": "string",
"value": "string"
}
]'
The invoice was patched successfully.
The base currency for transactions business unit
The organization being billed for this invoice
The currency code in use
Custom metadata that can be used by custom order generation processes for hyper-customized order & invoice forms
Amount to pay when created
The amount written off on the invoice item
If true, this line item has inline products bundled with it
The legacy G/L account imported from another system
The balance due from the legacy system
The legacy G/L account imported from another system
If the invoice is tied to an order, the line item its tied to
Invoice line item original total (base currency)
The total for this line item NOT allocated to bundled products
The service that owns the type of product for this line item
The status of the invoice item
For legacy invoices that needed to be regenerated, this is the ID of that generated invoice
If an error occurs during regeneration, it is logged here
If true, when email is processed, an email will be sent to the billing contact
Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly
The status of the invoice
If this record was loaded via bulk, the timestamp when the record was processed
If this record was loaded via bulk, the ID of the bulk load process
If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key
If this record was loaded via bulk, the record number in the source file
If this record was loaded via bulk, the source file
The error associated with the calculated field
If a snapshot was restored/applies to this record, the ID of the snapshot
The date/time that this record was created, expressed in ISO-8601 date format
The ID of the user that deleted (or last tried to delete) this object
Means for passing directive information into an object processing logic
If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion
If this record was last touched by a bulk data operation, the ID of that operation
If this record was last touched by a bulk data operation, the sys_version at the time of that operation
The date/time that this record record was last modified, expressed in ISO-8601 date format
The ID of the user that last modified this record
The security context of the last insert, modify, or delete performed on this item
The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox
A number representing the version of this record in the database
The total of the transaction, in the base currency of the business unit.
This invoice was processed using the v2 sync, as opposed to legacy step functions
{ "amount_paid": 0.1, "amount_refunded": 0.1, "amount_written_off": 0.1, "balance_due": 0.1, "base_currency_code": "str", "base_currency_symbol": "string", "batch_id": "string", "bill_to_contact_id": "string", "bill_to_organization_id": "string", "bill_to_type": "contact", "billing_address": { "city": "string", "country": "string", "country_name": "string", "county": "string", "latitude": 0.1, "line1": "string", "line2": "string", "line3": "string", "longitude": 0.1, "postal_code": "string", "state": "string", "time_zone_id": "string" }, "business_unit_id": "string", "cancellation_id": "string", "currency_code": "AED", "currency_symbol": "string", "custom_field_values": [ { … } ], "custom_metadata": {}, "date": "2019-08-24", "date_due": "2019-08-24", "exchange_rate": 0.1, "id": "string", "legacy_balance_due": 0.1, "line_items": [ { … } ], "memo": "string", "notes": "string", "number": 0, "order_id": "string", "parent_invoice_id": "string", "payment_terms_id": "string", "pro_forma": true, "purchase_order_number": "string", "regenerated_invoice_id": "string", "regeneration_error": "string", "return_id": "string", "send_email_to_billing_contact": true, "sharing_secret": "string", "status": "cancelled", "sys_bulk_load_at": "string", "sys_bulk_load_id": "string", "sys_bulk_load_pk": "string", "sys_bulk_load_record_no": 0.1, "sys_bulk_load_source_file": "string", "sys_calculated_field_error": "string", "sys_calculated_field_errors": [ { … } ], "sys_configuration_snapshot_id": "string", "sys_created_at": "2019-08-24T14:15:22Z", "sys_created_by_id": "string", "sys_deleted_by_id": "string", "sys_directive": "string", "sys_external_id": "string", "sys_has_files_in_s3": true, "sys_last_bulk_data_operation_id": "string", "sys_last_bulk_data_operation_sys_version": "string", "sys_last_modified_at": "2019-08-24T14:15:22Z", "sys_last_modified_by_id": "string", "sys_last_security_context": {}, "sys_locked": true, "sys_search_composite_key": "string", "sys_snapshot_base_version": 0.1, "sys_version": 0.1, "template_id": "string", "total": 0.1, "total_in_base_currency": 0.1, "type": "string", "uses_v2_api": true, "workflow_execution_id": "string" }
The updated invoice that will be saved.
The base currency for transactions business unit
The organization being billed for this invoice
The currency code in use
Custom metadata that can be used by custom order generation processes for hyper-customized order & invoice forms
Amount to pay when created
The amount written off on the invoice item
If true, this line item has inline products bundled with it
The legacy G/L account imported from another system
The balance due from the legacy system
The legacy G/L account imported from another system
If the invoice is tied to an order, the line item its tied to
Invoice line item original total (base currency)
The total for this line item NOT allocated to bundled products
The service that owns the type of product for this line item
The status of the invoice item
For legacy invoices that needed to be regenerated, this is the ID of that generated invoice
If an error occurs during regeneration, it is logged here
If true, when email is processed, an email will be sent to the billing contact
Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly
The status of the invoice
If this record was loaded via bulk, the timestamp when the record was processed
If this record was loaded via bulk, the ID of the bulk load process
If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key
If this record was loaded via bulk, the record number in the source file
If this record was loaded via bulk, the source file
The error associated with the calculated field
If a snapshot was restored/applies to this record, the ID of the snapshot
The date/time that this record was created, expressed in ISO-8601 date format
The ID of the user that deleted (or last tried to delete) this object
Means for passing directive information into an object processing logic
If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion
If this record was last touched by a bulk data operation, the ID of that operation
If this record was last touched by a bulk data operation, the sys_version at the time of that operation
The date/time that this record record was last modified, expressed in ISO-8601 date format
The ID of the user that last modified this record
The security context of the last insert, modify, or delete performed on this item
The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox
A number representing the version of this record in the database
The total of the transaction, in the base currency of the business unit.
This invoice was processed using the v2 sync, as opposed to legacy step functions
https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/invoices/{tenantId}/{id}
https://collect.api.rhythmsoftware.com/invoices/{tenantId}/{id}
curl -i -X PUT \
'https://docs.api.rhythmsoftware.com/_mock/apis/collect/collect-v1/invoices/{tenantId}/{id}' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"amount_paid": 0.1,
"amount_refunded": 0.1,
"amount_written_off": 0.1,
"balance_due": 0.1,
"base_currency_code": "str",
"base_currency_symbol": "string",
"batch_id": "string",
"bill_to_contact_id": "string",
"bill_to_organization_id": "string",
"bill_to_type": "contact",
"billing_address": {
"city": "string",
"country": "string",
"country_name": "string",
"county": "string",
"latitude": 0.1,
"line1": "string",
"line2": "string",
"line3": "string",
"longitude": 0.1,
"postal_code": "string",
"state": "string",
"time_zone_id": "string"
},
"business_unit_id": "string",
"cancellation_id": "string",
"currency_code": "AED",
"currency_symbol": "string",
"custom_field_values": [
{
"boolean_value": true,
"custom_field_id": "string",
"file_url_value": "string",
"list_value": [
"string"
],
"numeric_value": 0.1,
"string_value": "string",
"table_value": [
{}
]
}
],
"custom_metadata": {},
"date": "2019-08-24",
"date_due": "2019-08-24",
"exchange_rate": 0.1,
"id": "string",
"legacy_balance_due": 0.1,
"line_items": [
{
"amount_paid": 0.1,
"amount_refunded": 0.1,
"amount_to_pay_upon_creation": 0.1,
"amount_written_off": 0.1,
"balance_due": 0.1,
"bundled_product_1": {
"amount": 0.1,
"product_id": "string",
"product_type": "string"
},
"bundled_product_2": {
"amount": 0.1,
"product_id": "string",
"product_type": "string"
},
"description": "string",
"has_inline_bundled_products": true,
"inline_bundled_products": {
"0": {
"amount": 0.1,
"product_id": "string",
"product_type": "string"
}
},
"invoice_line_item_id": "string",
"legacy_ar_gl_account": "string",
"legacy_balance_due": 0.1,
"legacy_project": "string",
"legacy_revenue_account": "string",
"optional": true,
"order_line_item_id": "string",
"original_total": 0.1,
"original_total_in_base_currency": 0.1,
"primary_product_total": 0.1,
"product_id": "string",
"product_type": "string",
"quantity": 0.1,
"related_transactions": [
{
"amount": 0.1,
"date": "2019-08-24T14:15:22Z",
"transaction_id": "string",
"transaction_line_item_id": "string",
"transaction_number": 0.1,
"type": "cancellation"
}
],
"status": "cancelled",
"total": 0.1,
"total_in_base_currency": 0.1,
"unit_price": 0.1
}
],
"memo": "string",
"notes": "string",
"number": 0,
"order_id": "string",
"parent_invoice_id": "string",
"payment_terms_id": "string",
"pro_forma": true,
"purchase_order_number": "string",
"regenerated_invoice_id": "string",
"regeneration_error": "string",
"return_id": "string",
"send_email_to_billing_contact": true,
"sharing_secret": "string",
"status": "cancelled",
"sys_bulk_load_at": "string",
"sys_bulk_load_id": "string",
"sys_bulk_load_pk": "string",
"sys_bulk_load_record_no": 0.1,
"sys_bulk_load_source_file": "string",
"sys_calculated_field_error": "string",
"sys_calculated_field_errors": [
{
"error": "string",
"field": "string"
}
],
"sys_configuration_snapshot_id": "string",
"sys_created_at": "2019-08-24T14:15:22Z",
"sys_created_by_id": "string",
"sys_deleted_by_id": "string",
"sys_directive": "string",
"sys_external_id": "string",
"sys_has_files_in_s3": true,
"sys_last_bulk_data_operation_id": "string",
"sys_last_bulk_data_operation_sys_version": "string",
"sys_last_modified_at": "2019-08-24T14:15:22Z",
"sys_last_modified_by_id": "string",
"sys_last_security_context": {},
"sys_locked": true,
"sys_search_composite_key": "string",
"sys_snapshot_base_version": 0.1,
"sys_version": 0.1,
"template_id": "string",
"total": 0.1,
"total_in_base_currency": 0.1,
"type": "string",
"uses_v2_api": true,
"workflow_execution_id": "string"
}'
The invoice was updated successfully.
The base currency for transactions business unit
The organization being billed for this invoice
The currency code in use
Custom metadata that can be used by custom order generation processes for hyper-customized order & invoice forms
Amount to pay when created
The amount written off on the invoice item
If true, this line item has inline products bundled with it
The legacy G/L account imported from another system
The balance due from the legacy system
The legacy G/L account imported from another system
If the invoice is tied to an order, the line item its tied to
Invoice line item original total (base currency)
The total for this line item NOT allocated to bundled products
The service that owns the type of product for this line item
The status of the invoice item
For legacy invoices that needed to be regenerated, this is the ID of that generated invoice
If an error occurs during regeneration, it is logged here
If true, when email is processed, an email will be sent to the billing contact
Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly
The status of the invoice
If this record was loaded via bulk, the timestamp when the record was processed
If this record was loaded via bulk, the ID of the bulk load process
If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key
If this record was loaded via bulk, the record number in the source file
If this record was loaded via bulk, the source file
The error associated with the calculated field
If a snapshot was restored/applies to this record, the ID of the snapshot
The date/time that this record was created, expressed in ISO-8601 date format
The ID of the user that deleted (or last tried to delete) this object
Means for passing directive information into an object processing logic
If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion
If this record was last touched by a bulk data operation, the ID of that operation
If this record was last touched by a bulk data operation, the sys_version at the time of that operation
The date/time that this record record was last modified, expressed in ISO-8601 date format
The ID of the user that last modified this record
The security context of the last insert, modify, or delete performed on this item
The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox
A number representing the version of this record in the database
The total of the transaction, in the base currency of the business unit.
This invoice was processed using the v2 sync, as opposed to legacy step functions
{ "amount_paid": 0.1, "amount_refunded": 0.1, "amount_written_off": 0.1, "balance_due": 0.1, "base_currency_code": "str", "base_currency_symbol": "string", "batch_id": "string", "bill_to_contact_id": "string", "bill_to_organization_id": "string", "bill_to_type": "contact", "billing_address": { "city": "string", "country": "string", "country_name": "string", "county": "string", "latitude": 0.1, "line1": "string", "line2": "string", "line3": "string", "longitude": 0.1, "postal_code": "string", "state": "string", "time_zone_id": "string" }, "business_unit_id": "string", "cancellation_id": "string", "currency_code": "AED", "currency_symbol": "string", "custom_field_values": [ { … } ], "custom_metadata": {}, "date": "2019-08-24", "date_due": "2019-08-24", "exchange_rate": 0.1, "id": "string", "legacy_balance_due": 0.1, "line_items": [ { … } ], "memo": "string", "notes": "string", "number": 0, "order_id": "string", "parent_invoice_id": "string", "payment_terms_id": "string", "pro_forma": true, "purchase_order_number": "string", "regenerated_invoice_id": "string", "regeneration_error": "string", "return_id": "string", "send_email_to_billing_contact": true, "sharing_secret": "string", "status": "cancelled", "sys_bulk_load_at": "string", "sys_bulk_load_id": "string", "sys_bulk_load_pk": "string", "sys_bulk_load_record_no": 0.1, "sys_bulk_load_source_file": "string", "sys_calculated_field_error": "string", "sys_calculated_field_errors": [ { … } ], "sys_configuration_snapshot_id": "string", "sys_created_at": "2019-08-24T14:15:22Z", "sys_created_by_id": "string", "sys_deleted_by_id": "string", "sys_directive": "string", "sys_external_id": "string", "sys_has_files_in_s3": true, "sys_last_bulk_data_operation_id": "string", "sys_last_bulk_data_operation_sys_version": "string", "sys_last_modified_at": "2019-08-24T14:15:22Z", "sys_last_modified_by_id": "string", "sys_last_security_context": {}, "sys_locked": true, "sys_search_composite_key": "string", "sys_snapshot_base_version": 0.1, "sys_version": 0.1, "template_id": "string", "total": 0.1, "total_in_base_currency": 0.1, "type": "string", "uses_v2_api": true, "workflow_execution_id": "string" }