Invoices

Invoices

Creates a new invoice record that does not already exist.

This method will auto-generate an ID and create a new invoice. If an ID is specified for the invoice, an error will be thrown.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

Request Body schema: application/json

The invoice that you would like to be saved.

id
required
string (ID) /^[\w|-]+$/

The unique, string identifier of this invoice

date_due
required
string <date> (Date Due)

The date the invoice is due

payment_terms_id
string (Payment Terms)

The invoice terms being applied to this invoice

status
required
string (Status)

The status of the invoice

Enum: "open" "paid" "void" "written off" "cancelled"
type
string (Type)

The type of invoice

bill_to_type
required
string (Bill To Type)

The type of invoice

Enum: "contact" "organization"
bill_to_contact_id
required
string (Bill To Contact)

The person being billed for this invoice

bill_to_organization_id
required
string (Bill To Organization)

The organization being billed for this invoice

template_id
string (Template)

The template this invoice is using for printing/emailing

object (Address)

A complete address

purchase_order_number
string (Purchase Order Number)

The purchase order number

pro_forma
boolean (Pro Forma)

Whether or not this is a pro forma invoice

balance_due
required
number <double> (Balance Due)

The balance due on the invoice

amount_paid
required
number <double> (Amount Paid)

The amount paid on the invoice

amount_written_off
required
number <double> (Amount Written Off)

The amount written off on the invoice

amount_refunded
required
number <double> (Amount Refunded)

The amount refunded on the invoice

sharing_secret
string (Sharing Secret)

Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly

legacy_balance_due
number <double> (Legacy Balance Due)

The balance due from the legacy system

regenerated_invoice_id
string (Regenerated Invoice)

For legacy invoices that needed to be regenerated, this is the ID of that generated invoice

regeneration_error
string (Regeneration Error)

If an error occurs during regeneration, it is logged here

parent_invoice_id
string (Parent Invoice)

A parent invoice for this invoice

required
Array of objects non-empty
Array of objects (Custom Field Values)
number
required
integer (Number)

The transaction number

workflow_execution_id
string (Workflow Execution)

The ID of the state machine execution used to create this transaction

total
required
number <double> (Total)

The transaction total

business_unit_id
required
string (Business Unit)

The business unit this transaction belongs to

batch_id
string (Batch)

The batch this transaction belongs to

cancellation_id
string (Cancellation)

The order cancellation tied to this transaction

order_id
string (Order)

The order tied to this transaction

return_id
string (Return)

The return tied to this transaction

memo
string (Memo)

Memo/description of the transaction

notes
string (Notes)

Notes fro the transaction

date
string <date> (Date)

The date of the transaction

currency_code
string (Currency Code) 3 characters

The currency code in use

Enum: "AED" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BTN" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUC" "CVE" "CZK" "DJF" "DKK" "DOP" "DZD" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GHS" "GIP" "GMD" "GNF" "GQE" "GTQ" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "INR" "IQD" "IRR" "ISK" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MKD" "MMK" "MNT" "MOP" "MRO" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "SAR" "SBD" "SCR" "SDG" "SEK" "SGD" "SHP" "SLL" "SOS" "SRD" "SYP" "SZL" "THB" "TJS" "TMT" "TND" "TRY" "TTD" "TWD" "TZS" "UAH" "UGX" "USD" "UYU" "UZS" "VEB" "VND" "VUV" "WST" "XAF" "XCD" "XDR" "XOF" "XPF" "YER" "ZAR" "ZMK" "ZWR"
currency_symbol
string (Currency Symbol)

The currency symbol

exchange_rate
number <double> (Exchange Rate)

The exchange rate, if applicable

total_in_base_currency
required
number <double> (Total In Base Currency)

The total of the transaction, in the base currency of the business unit.

base_currency_code
string (Base Currency Code) 3 characters

The base currency for transactions business unit

base_currency_symbol
string (Base Currency Symbol)

The base symbol for the transactions business unit

sys_search_composite_key
string (Sys Search Composite Key)

Internal use

sys_deleted_by_id
string (Sys Deleted By)

The ID of the user that deleted (or last tried to delete) this object

sys_version
number <float> (Sys Version)

A number representing the version of this record in the database

sys_created_at
required
string <date-time> (Sys Created At)

The date/time that this record was created, expressed in ISO-8601 date format

sys_last_modified_at
required
string <date-time> (Sys Last Modified At)

The date/time that this record record was last modified, expressed in ISO-8601 date format

sys_created_by_id
required
string (Sys Created By)

The ID of the user that created this record

sys_last_modified_by_id
required
string (Sys Last Modified By)

The ID of the user that last modified this record

sys_external_id
string (Sys External)

The ID that a record has from an external system or data import

sys_locked
boolean (Sys Locked)

If set, this record is locked and cannot be changed via the API

sys_bulk_load_pk
string (Sys Bulk Load Pk)

If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key

sys_bulk_load_at
string (Sys Bulk Load At)

If this record was loaded via bulk, the timestamp when the record was processed

sys_bulk_load_id
string (Sys Bulk Load)

If this record was loaded via bulk, the ID of the bulk load process

sys_bulk_load_record_no
number <float> (Sys Bulk Load Record No)

If this record was loaded via bulk, the record number in the source file

sys_bulk_load_source_file
string (Sys Bulk Load Source File)

If this record was loaded via bulk, the source file

sys_last_bulk_data_operation_id
string (Sys Last Bulk Data Operation)

If this record was last touched by a bulk data operation, the ID of that operation

sys_last_bulk_data_operation_sys_version
string (Sys Last Bulk Data Operation Sys Version)

If this record was last touched by a bulk data operation, the sys_version at the time of that operation

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_calculated_field_error
string (Sys Calculated Field Error)

The error associated with the calculated field

sys_snapshot_base_version
number <float> (Sys Snapshot Base Version)

The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox

sys_has_files_in_s3
boolean (Sys Has Files In S3)

If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion

sys_configuration_snapshot_id
string (Sys Configuration Snapshot)

If a snapshot was restored/applies to this record, the ID of the snapshot

sys_last_security_context
object (Sys Last Security Context)

The security context of the last insert, modify, or delete performed on this item

Array of objects
Responses
200The operation completed successfully
400The invoice you supplied was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
409The invoice could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to add invoice based on tenant limits.
500General server error.
post/invoices/{tenantId}
Request samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}
Response samples
application/json
{
  • "notification_publishKey": "string",
  • "notification_subscribeKey": "string",
  • "notification_channel": "string",
  • "executionArn": "string",
  • "start_date": "2019-08-24T14:15:22Z"
}

Returns a invoice from the system by its ID.

This method will look up a invoice by the specified ID and return it back.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the invoice to return.

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

consistentRead
string

Indicates the API should force a consistent read on the data source.

Responses
200The invoice was retrieved successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error.
get/invoices/{tenantId}/{id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/:id?fields=string&consistentRead=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Updates a invoice with the specified ID.

This method will update an existing invoice with the specified ID.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the invoice to update.

Request Body schema: application/json

The updated invoice that will be saved.

id
required
string (ID) /^[\w|-]+$/

The unique, string identifier of this invoice

date_due
required
string <date> (Date Due)

The date the invoice is due

payment_terms_id
string (Payment Terms)

The invoice terms being applied to this invoice

status
required
string (Status)

The status of the invoice

Enum: "open" "paid" "void" "written off" "cancelled"
type
string (Type)

The type of invoice

bill_to_type
required
string (Bill To Type)

The type of invoice

Enum: "contact" "organization"
bill_to_contact_id
required
string (Bill To Contact)

The person being billed for this invoice

bill_to_organization_id
required
string (Bill To Organization)

The organization being billed for this invoice

template_id
string (Template)

The template this invoice is using for printing/emailing

object (Address)

A complete address

purchase_order_number
string (Purchase Order Number)

The purchase order number

pro_forma
boolean (Pro Forma)

Whether or not this is a pro forma invoice

balance_due
required
number <double> (Balance Due)

The balance due on the invoice

amount_paid
required
number <double> (Amount Paid)

The amount paid on the invoice

amount_written_off
required
number <double> (Amount Written Off)

The amount written off on the invoice

amount_refunded
required
number <double> (Amount Refunded)

The amount refunded on the invoice

sharing_secret
string (Sharing Secret)

Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly

legacy_balance_due
number <double> (Legacy Balance Due)

The balance due from the legacy system

regenerated_invoice_id
string (Regenerated Invoice)

For legacy invoices that needed to be regenerated, this is the ID of that generated invoice

regeneration_error
string (Regeneration Error)

If an error occurs during regeneration, it is logged here

parent_invoice_id
string (Parent Invoice)

A parent invoice for this invoice

required
Array of objects non-empty
Array of objects (Custom Field Values)
number
required
integer (Number)

The transaction number

workflow_execution_id
string (Workflow Execution)

The ID of the state machine execution used to create this transaction

total
required
number <double> (Total)

The transaction total

business_unit_id
required
string (Business Unit)

The business unit this transaction belongs to

batch_id
string (Batch)

The batch this transaction belongs to

cancellation_id
string (Cancellation)

The order cancellation tied to this transaction

order_id
string (Order)

The order tied to this transaction

return_id
string (Return)

The return tied to this transaction

memo
string (Memo)

Memo/description of the transaction

notes
string (Notes)

Notes fro the transaction

date
string <date> (Date)

The date of the transaction

currency_code
string (Currency Code) 3 characters

The currency code in use

Enum: "AED" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BTN" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUC" "CVE" "CZK" "DJF" "DKK" "DOP" "DZD" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GHS" "GIP" "GMD" "GNF" "GQE" "GTQ" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "INR" "IQD" "IRR" "ISK" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MKD" "MMK" "MNT" "MOP" "MRO" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "SAR" "SBD" "SCR" "SDG" "SEK" "SGD" "SHP" "SLL" "SOS" "SRD" "SYP" "SZL" "THB" "TJS" "TMT" "TND" "TRY" "TTD" "TWD" "TZS" "UAH" "UGX" "USD" "UYU" "UZS" "VEB" "VND" "VUV" "WST" "XAF" "XCD" "XDR" "XOF" "XPF" "YER" "ZAR" "ZMK" "ZWR"
currency_symbol
string (Currency Symbol)

The currency symbol

exchange_rate
number <double> (Exchange Rate)

The exchange rate, if applicable

total_in_base_currency
required
number <double> (Total In Base Currency)

The total of the transaction, in the base currency of the business unit.

base_currency_code
string (Base Currency Code) 3 characters

The base currency for transactions business unit

base_currency_symbol
string (Base Currency Symbol)

The base symbol for the transactions business unit

sys_search_composite_key
string (Sys Search Composite Key)

Internal use

sys_deleted_by_id
string (Sys Deleted By)

The ID of the user that deleted (or last tried to delete) this object

sys_version
number <float> (Sys Version)

A number representing the version of this record in the database

sys_created_at
required
string <date-time> (Sys Created At)

The date/time that this record was created, expressed in ISO-8601 date format

sys_last_modified_at
required
string <date-time> (Sys Last Modified At)

The date/time that this record record was last modified, expressed in ISO-8601 date format

sys_created_by_id
required
string (Sys Created By)

The ID of the user that created this record

sys_last_modified_by_id
required
string (Sys Last Modified By)

The ID of the user that last modified this record

sys_external_id
string (Sys External)

The ID that a record has from an external system or data import

sys_locked
boolean (Sys Locked)

If set, this record is locked and cannot be changed via the API

sys_bulk_load_pk
string (Sys Bulk Load Pk)

If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key

sys_bulk_load_at
string (Sys Bulk Load At)

If this record was loaded via bulk, the timestamp when the record was processed

sys_bulk_load_id
string (Sys Bulk Load)

If this record was loaded via bulk, the ID of the bulk load process

sys_bulk_load_record_no
number <float> (Sys Bulk Load Record No)

If this record was loaded via bulk, the record number in the source file

sys_bulk_load_source_file
string (Sys Bulk Load Source File)

If this record was loaded via bulk, the source file

sys_last_bulk_data_operation_id
string (Sys Last Bulk Data Operation)

If this record was last touched by a bulk data operation, the ID of that operation

sys_last_bulk_data_operation_sys_version
string (Sys Last Bulk Data Operation Sys Version)

If this record was last touched by a bulk data operation, the sys_version at the time of that operation

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_calculated_field_error
string (Sys Calculated Field Error)

The error associated with the calculated field

sys_snapshot_base_version
number <float> (Sys Snapshot Base Version)

The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox

sys_has_files_in_s3
boolean (Sys Has Files In S3)

If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion

sys_configuration_snapshot_id
string (Sys Configuration Snapshot)

If a snapshot was restored/applies to this record, the ID of the snapshot

sys_last_security_context
object (Sys Last Security Context)

The security context of the last insert, modify, or delete performed on this item

Array of objects
Responses
200The invoice was updated successfully.
400The invoice supplied was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
409The invoice could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error.
put/invoices/{tenantId}/{id}
Request samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}
Response samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Partially updates a invoice with the specified ID.

This method will patch an existing invoice with the specified ID, using the HTTP PATCH specification.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the invoice to patch.

Request Body schema: application/json

The patch directives conforming to RFC 6902.

Array
op
required
string (Op)

The operation

Enum: "add" "remove" "replace" "move" "copy" "test"
path
required
string (Path)

The JSON path

value
string (Value)
Responses
200The invoice was patched successfully.
400The JSON patch directive you supplied was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
409The invoice could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error.
patch/invoices/{tenantId}/{id}
Request samples
application/json
[
  • {
    }
]
Response samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Returns a invoice from the system by its ID.

This method will delete a invoice with the specified ID.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the invoice to delete.

Responses
200The invoice was deleted successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
409The invoice could not be deleted because other objects refers to/depends on this one.
429Limit exceeded... unable to delete invoice based on tenant limits.
500General server error.
delete/invoices/{tenantId}/{id}
Request samples
curl -i -X DELETE \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/:id \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
"string"

Gets all of the invoices in the system for a given contact.

This method will scan all invoices and and return them to the caller for a given contact.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

portalContactId
required
string

The contact to use

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

includeAllInvoices
boolean

If set, all invoices are returned regardless of balance

Responses
200The operation completed successfully
400The request was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
429Limit exceeded... unable to add contact role based on tenant limits.
500General server error.
get/invoices/{tenantId}/portal/contact/{portalContactId}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/portal/contact/:portalContactId?fields=string&includeAllInvoices=true' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Gets Public Invoice information

Public endpoint that allows for retrieval of invoice information, provided the accurate sharing secret is supplied

Request
path Parameters
tenantId
required
string

The id of the tenant being accessed

id
required
string

The ID of the invoice

query Parameters
sharing_secret
required
string

The sharing secret of hte invoice

Responses
200The generation completed successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
get/invoices/{tenantId}/public/{id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/public/:id?sharing_secret=string'
Response samples
application/json
{
  • "id": "string",
  • "date": "2019-08-24T14:15:22Z",
  • "date_due": "2019-08-24T14:15:22Z",
  • "balance_due": 0,
  • "number": 0,
  • "allowed_payment_methods": "credit card"
}

Finds all legacy invoices with an open balance and regenerates them

Finds all legacy invoices with an open balance and regenerates them

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

business_unit_id
required
string

The business unit

Responses
200The generation completed successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
post/invoices/{tenantId}/regenerateOpenInvoices/{business_unit_id}
Request samples
curl -i -X POST \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/regenerateOpenInvoices/:business_unit_id \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "success": 0,
  • "errors": 0,
  • "total": 0,
  • "batch_id": "string"
}

Gets the amount of open invoices for a contact

Gets the amount of open invoices for a contact

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

portalContactId
required
string

The contact

Responses
200The invoice balance was retrieved successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
get/invoices/{tenantId}/portal/contact/{portalContactId}/balance
Request samples
curl -i -X GET \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/portal/contact/:portalContactId/balance \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "balance": 0,
  • "currency_code": "string",
  • "currency_symbol": "string"
}

Returns a invoice from the system by its ID for a given contact.

This method will look up a invoice by the specified ID and return it back (for a portal contact)

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

portalContactId
required
string

The contact to use

id
required
string

The ID of the invoice to return.

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

consistentRead
string

Indicates the API should force a consistent read on the data source.

Responses
200The invoice was retrieved successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error.
get/invoices/{tenantId}/portal/contact/{portalContactId}/{id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/portal/contact/:portalContactId/:id?fields=string&consistentRead=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Gets all of the invoices in the system for a given organization.

This method will scan all invoices and and return them to the caller for a given organization.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

portalOrganizationId
required
string

The organization to use

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

includeAllInvoices
boolean

If set, all invoices are returned regardless of balance

Responses
200The oepration completed successfully
400The request was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
429Limit exceeded... unable to add organization role based on tenant limits.
500General server error.
get/invoices/{tenantId}/portal/organization/{portalOrganizationId}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/portal/organization/:portalOrganizationId?fields=string&includeAllInvoices=true' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Gets the amount of open invoices for a organization

Gets the amount of open invoices for a organization

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

portalOrganizationId
required
string

The organization

Responses
200The invoice balance was retrieved successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
get/invoices/{tenantId}/portal/organization/{portalOrganizationId}/balance
Request samples
curl -i -X GET \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/portal/organization/:portalOrganizationId/balance \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "balance": 0,
  • "currency_code": "string",
  • "currency_symbol": "string"
}

Returns a invoice from the system by its ID for a given organization.

This method will look up a invoice by the specified ID and return it back (for a portal organization)

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

portalOrganizationId
required
string

The organization to use

id
required
string

The ID of the invoice to return.

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

consistentRead
string

Indicates the API should force a consistent read on the data source.

Responses
200The invoice was retrieved successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error.
get/invoices/{tenantId}/portal/organization/{portalOrganizationId}/{id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/portal/organization/:portalOrganizationId/:id?fields=string&consistentRead=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Processes an invoice adjustment for the invoice with the specified ID

This method will start an workflow to adjust an invoice, returning an execution token.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

id
required
string

The ID of the invoice to update

Request Body schema: application/json

The updated invoice record that will be saved

id
required
string (ID) /^[\w|-]+$/

The unique, string identifier of this invoice

date_due
required
string <date> (Date Due)

The date the invoice is due

payment_terms_id
string (Payment Terms)

The invoice terms being applied to this invoice

status
required
string (Status)

The status of the invoice

Enum: "open" "paid" "void" "written off" "cancelled"
type
string (Type)

The type of invoice

bill_to_type
required
string (Bill To Type)

The type of invoice

Enum: "contact" "organization"
bill_to_contact_id
required
string (Bill To Contact)

The person being billed for this invoice

bill_to_organization_id
required
string (Bill To Organization)

The organization being billed for this invoice

template_id
string (Template)

The template this invoice is using for printing/emailing

object (Address)

A complete address

purchase_order_number
string (Purchase Order Number)

The purchase order number

pro_forma
boolean (Pro Forma)

Whether or not this is a pro forma invoice

balance_due
required
number <double> (Balance Due)

The balance due on the invoice

amount_paid
required
number <double> (Amount Paid)

The amount paid on the invoice

amount_written_off
required
number <double> (Amount Written Off)

The amount written off on the invoice

amount_refunded
required
number <double> (Amount Refunded)

The amount refunded on the invoice

sharing_secret
string (Sharing Secret)

Hash to be used as salt when sharing invoices publicly, preventing users from accessing invoices unless they have been given the link explicitly

legacy_balance_due
number <double> (Legacy Balance Due)

The balance due from the legacy system

regenerated_invoice_id
string (Regenerated Invoice)

For legacy invoices that needed to be regenerated, this is the ID of that generated invoice

regeneration_error
string (Regeneration Error)

If an error occurs during regeneration, it is logged here

parent_invoice_id
string (Parent Invoice)

A parent invoice for this invoice

required
Array of objects non-empty
Array of objects (Custom Field Values)
number
required
integer (Number)

The transaction number

workflow_execution_id
string (Workflow Execution)

The ID of the state machine execution used to create this transaction

total
required
number <double> (Total)

The transaction total

business_unit_id
required
string (Business Unit)

The business unit this transaction belongs to

batch_id
string (Batch)

The batch this transaction belongs to

cancellation_id
string (Cancellation)

The order cancellation tied to this transaction

order_id
string (Order)

The order tied to this transaction

return_id
string (Return)

The return tied to this transaction

memo
string (Memo)

Memo/description of the transaction

notes
string (Notes)

Notes fro the transaction

date
string <date> (Date)

The date of the transaction

currency_code
string (Currency Code) 3 characters

The currency code in use

Enum: "AED" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BTN" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUC" "CVE" "CZK" "DJF" "DKK" "DOP" "DZD" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GHS" "GIP" "GMD" "GNF" "GQE" "GTQ" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "INR" "IQD" "IRR" "ISK" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MKD" "MMK" "MNT" "MOP" "MRO" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "SAR" "SBD" "SCR" "SDG" "SEK" "SGD" "SHP" "SLL" "SOS" "SRD" "SYP" "SZL" "THB" "TJS" "TMT" "TND" "TRY" "TTD" "TWD" "TZS" "UAH" "UGX" "USD" "UYU" "UZS" "VEB" "VND" "VUV" "WST" "XAF" "XCD" "XDR" "XOF" "XPF" "YER" "ZAR" "ZMK" "ZWR"
currency_symbol
string (Currency Symbol)

The currency symbol

exchange_rate
number <double> (Exchange Rate)

The exchange rate, if applicable

total_in_base_currency
required
number <double> (Total In Base Currency)

The total of the transaction, in the base currency of the business unit.

base_currency_code
string (Base Currency Code) 3 characters

The base currency for transactions business unit

base_currency_symbol
string (Base Currency Symbol)

The base symbol for the transactions business unit

sys_search_composite_key
string (Sys Search Composite Key)

Internal use

sys_deleted_by_id
string (Sys Deleted By)

The ID of the user that deleted (or last tried to delete) this object

sys_version
number <float> (Sys Version)

A number representing the version of this record in the database

sys_created_at
required
string <date-time> (Sys Created At)

The date/time that this record was created, expressed in ISO-8601 date format

sys_last_modified_at
required
string <date-time> (Sys Last Modified At)

The date/time that this record record was last modified, expressed in ISO-8601 date format

sys_created_by_id
required
string (Sys Created By)

The ID of the user that created this record

sys_last_modified_by_id
required
string (Sys Last Modified By)

The ID of the user that last modified this record

sys_external_id
string (Sys External)

The ID that a record has from an external system or data import

sys_locked
boolean (Sys Locked)

If set, this record is locked and cannot be changed via the API

sys_bulk_load_pk
string (Sys Bulk Load Pk)

If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key

sys_bulk_load_at
string (Sys Bulk Load At)

If this record was loaded via bulk, the timestamp when the record was processed

sys_bulk_load_id
string (Sys Bulk Load)

If this record was loaded via bulk, the ID of the bulk load process

sys_bulk_load_record_no
number <float> (Sys Bulk Load Record No)

If this record was loaded via bulk, the record number in the source file

sys_bulk_load_source_file
string (Sys Bulk Load Source File)

If this record was loaded via bulk, the source file

sys_last_bulk_data_operation_id
string (Sys Last Bulk Data Operation)

If this record was last touched by a bulk data operation, the ID of that operation

sys_last_bulk_data_operation_sys_version
string (Sys Last Bulk Data Operation Sys Version)

If this record was last touched by a bulk data operation, the sys_version at the time of that operation

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_calculated_field_error
string (Sys Calculated Field Error)

The error associated with the calculated field

sys_snapshot_base_version
number <float> (Sys Snapshot Base Version)

The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox

sys_has_files_in_s3
boolean (Sys Has Files In S3)

If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion

sys_configuration_snapshot_id
string (Sys Configuration Snapshot)

If a snapshot was restored/applies to this record, the ID of the snapshot

sys_last_security_context
object (Sys Last Security Context)

The security context of the last insert, modify, or delete performed on this item

Array of objects
Responses
200The invoice adustment process was successfully started
400The invoice record you supplied was invalid.
401Unauthorized
403Forbidden
404The invoice could not be found.
409The invoice could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to update invoice based on tenant limits.
500General server error
put/invoices/{tenantId}/adjustment/{id}
Request samples
application/json
{
  • "id": "string",
  • "date_due": "2019-08-24",
  • "payment_terms_id": "string",
  • "status": "open",
  • "type": "string",
  • "bill_to_type": "contact",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "template_id": "string",
  • "billing_address": {
    },
  • "purchase_order_number": "string",
  • "pro_forma": true,
  • "balance_due": 0,
  • "amount_paid": 0,
  • "amount_written_off": 0,
  • "amount_refunded": 0,
  • "sharing_secret": "string",
  • "legacy_balance_due": 0,
  • "regenerated_invoice_id": "string",
  • "regeneration_error": "string",
  • "parent_invoice_id": "string",
  • "line_items": [
    ],
  • "custom_field_values": [
    ],
  • "number": 0,
  • "workflow_execution_id": "string",
  • "total": 0,
  • "business_unit_id": "string",
  • "batch_id": "string",
  • "cancellation_id": "string",
  • "order_id": "string",
  • "return_id": "string",
  • "memo": "string",
  • "notes": "string",
  • "date": "2019-08-24",
  • "currency_code": "AED",
  • "currency_symbol": "string",
  • "exchange_rate": 0,
  • "total_in_base_currency": 0,
  • "base_currency_code": "str",
  • "base_currency_symbol": "string",
  • "sys_search_composite_key": "string",
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}
Response samples
application/json
{
  • "notification_publishKey": "string",
  • "notification_subscribeKey": "string",
  • "notification_channel": "string",
  • "executionArn": "string",
  • "start_date": "2019-08-24T14:15:22Z"
}

Generates a PDF and returns the public link for download

Generates a PDF and returns the public link for download

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

id
required
string

The ID of the invoice to return

query Parameters
downloadAsHtml
boolean

If true, return the receipt as HTML

Responses
200The invoice was downloaded successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
get/invoices/{tenantId}/print/{id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/print/:id?downloadAsHtml=true' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
"string"

Generates a PDF and returns the public link for download

Generates a PDF and returns the public link for download

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

id
required
string

The ID of the invoice to return

Responses
200The invoice was downloaded successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
get/invoices/{tenantId}/renderEmail/{id}
Request samples
curl -i -X GET \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/renderEmail/:id \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{ }

Emails an HTML version of the invoice

Send an email of the invoice

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed

id
required
string

The ID of the invoice to return

query Parameters
additionalRecipients
string

Others who should receive the email

Responses
200The invoice was emailed successfully
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
post/invoices/{tenantId}/email/{id}
Request samples
curl -i -X POST \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/email/:id?additionalRecipients=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
"string"

Returns the default invoice template

Returns the default invoice template

Request
Security:
Responses
200The invoice template
400The request was not valid.
401Unauthorized
403Forbidden
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error
get/invoices/defaultTemplate/invoice
Request samples
curl -i -X GET \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/defaultTemplate/invoice \
  -H 'Authorization: YOUR_API_KEY_HERE'

Returns the default invoice template

Returns the default invoice template

Request
Security:
Responses
200The invoice template
400The request was not valid
401Unauthorized
403Forbidden
404The resource could not be found
429Request limit exceeded... please try your request again in a few seconds
500An internal server error occured.
get/invoices/defaultTemplateAndEmail/invoice
Request samples
curl -i -X GET \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/defaultTemplateAndEmail/invoice \
  -H 'Authorization: YOUR_API_KEY_HERE'

Returns a list of records with the specified owner

Returns a list of records with the specified owner

Request
Security:
path Parameters
tenantId
required
string

The tenant

ownerType
required
string

The type of owner

Enum: "contact" "organization"
ownerId
required
string

The ID of the owner

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned

exclusiveStartKey
string

If paging, this allows you to return the next set of results

includeAllInvoices
boolean

If set, all invoices are returned regardless of balance

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/invoices/{tenantId}/owner/{ownerType}/{ownerId}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/owner/:ownerType/:ownerId?fields=string&exclusiveStartKey=string&includeAllInvoices=true' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Searches for invoices using predefined parameters

Searches for invoices using predefined parameters

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

query Parameters
exclusiveStartKey
string

The start key for the search, for paging support

fieldsToReturn
string

The fields that you want to retrieve; if omitted, the entire object is returned

Request Body schema: application/json

The invoice that you would like to be saved.

business_unit_id
required
string (Business Unit)

The business unit

batch_id
Array of strings (Batch)
purchase_order_number
Array of strings (Purchase Order Number)
date
Array of strings (Date) 2 items
number
Array of numbers <float> (Number) 2 items
total
Array of numbers <float> (Total) 2 items
id
Array of strings (ID)
total_in_base_currency
Array of numbers <float> (Total In Base Currency) 2 items
amount_paid
Array of numbers <float> (Amount Paid) 2 items
date_due
Array of strings <date-time> (Date Due) 2 items
bill_to_type
string (Bill To Type)
bill_to_contact_id
string (Bill To Contact)
bill_to_organization_id
string (Bill To Organization)
balance_due
Array of numbers <float> (Balance Due) 2 items
Responses
200The invoice search was saved successfully.
400The invoice you supplied was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
409The invoice could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to add invoice based on tenant limits.
500General server error.
post/invoices/{tenantId}/search
Request samples
application/json
{
  • "business_unit_id": "string",
  • "batch_id": [
    ],
  • "purchase_order_number": [
    ],
  • "date": [
    ],
  • "number": [
    ],
  • "total": [
    ],
  • "id": [
    ],
  • "total_in_base_currency": [
    ],
  • "amount_paid": [
    ],
  • "date_due": [
    ],
  • "bill_to_type": "string",
  • "bill_to_contact_id": "string",
  • "bill_to_organization_id": "string",
  • "balance_due": [
    ]
}
Response samples
application/json
{
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Returns a list of records with the specified bill_to_contact_id

Returns a list of records with the specified bill_to_contact_id

Request
Security:
path Parameters
tenantId
required
string

The tenant

bill_to_contact_id
required
string

The bill_to_contact_id to use to for record lookup

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned

exclusiveStartKey
string

If paging, this allows you to return the next set of results

includeAllInvoices
string

if set, all invoices should come through

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/invoices/{tenantId}/billToContact/{bill_to_contact_id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/billToContact/:bill_to_contact_id?fields=string&exclusiveStartKey=string&includeAllInvoices=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Returns a list of records with the specified bill_to_organization_id

Returns a list of records with the specified bill_to_organization_id

Request
Security:
path Parameters
tenantId
required
string

The tenant

bill_to_organization_id
required
string

The bill_to_organization_id to use to for record lookup

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned

exclusiveStartKey
string

If paging, this allows you to return the next set of results

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/invoices/{tenantId}/billToOrganization/{bill_to_organization_id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/billToOrganization/:bill_to_organization_id?fields=string&exclusiveStartKey=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Returns a list of records with the specified batch_id

Returns a list of records with the specified batch_id

Request
Security:
path Parameters
tenantId
required
string

The tenant

batch_id
required
string

The batch_id to use to for record lookup

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned

exclusiveStartKey
string

If paging, this allows you to return the next set of results

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/invoices/{tenantId}/batch/{batch_id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/batch/:batch_id?fields=string&exclusiveStartKey=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Sends out a preview of the CRC notification email

Sends out a preview of the CRC notification email

Request
Security:
path Parameters
tenantId
required
string

The tenant

Request Body schema: application/json

The domain_name to use to for record lookup

invoice_id
string (Invoice)
object (Email Template)
destination_email_address
required
string (Destination Email Address)
payment_id
required
string (Payment)
Responses
200The record was retrieved successfully
400The request was not valid.
401Unauthorized
403Forbidden
404Unable to locate any organizations with the specified domain
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
post/invoices/{tenantId}/previewEmail
Request samples
application/json
{
  • "invoice_id": "string",
  • "email_template": {
    },
  • "destination_email_address": "string",
  • "payment_id": "string"
}

Sends out a preview of the notification template

Sends out a preview of the notification template

Request
Security:
path Parameters
tenantId
required
string

The tenant

Request Body schema: application/json

The domain_name to use to for record lookup

invoice_id
string (Invoice)
template
required
string (Template)
id
string (ID)

The refund id

customer_type
required
string (Customer Type)
Enum: "contact" "organization"
contact_id
required
string (Contact)
organization_id
required
string (Organization)
Responses
200The record was retrieved successfully
400The request was not valid.
401Unauthorized
403Forbidden
404Unable to locate any organizations with the specified domain
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
post/invoices/{tenantId}/previewTemplate
Request samples
application/json
{
  • "invoice_id": "string",
  • "template": "string",
  • "id": "string",
  • "customer_type": "contact",
  • "contact_id": "string",
  • "organization_id": "string"
}

Initiates workflow to warm up inventory transactions

Request
Security:
Responses
200Success
400The request was not valid
401Unauthorized
403Forbidden
404The resource could not be found
429Request limit exceeded... please try your request again in a few seconds
500An internal server error occured.
post/invoices/warmUpStepFunctions
Request samples
curl -i -X POST \
  https://collect.api.756794052567.rhythmsoftware.com/invoices/warmUpStepFunctions \
  -H 'Authorization: YOUR_API_KEY_HERE'

Returns a list of records with the specified number

Returns a list of records with the specified number

Request
Security:
path Parameters
tenantId
required
string

The tenant

number
required
number

The number to use to for record lookup

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned

exclusiveStartKey
string

If paging, this allows you to return the next set of results

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/invoices/{tenantId}/number/{number}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/number/:number?fields=string&exclusiveStartKey=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Returns a list of records with the specified order_id

Returns a list of records with the specified order_id

Request
Security:
path Parameters
tenantId
required
string

The tenant

order_id
required
string

The order_id to use to for record lookup

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned

exclusiveStartKey
string

If paging, this allows you to return the next set of results

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/invoices/{tenantId}/order/{order_id}
Request samples
curl -i -X GET \
  'https://collect.api.756794052567.rhythmsoftware.com/invoices/:tenantId/order/:order_id?fields=string&exclusiveStartKey=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "Count": 0,
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Execute Batch Operations

TAllows you to perform up to 100 parallel patch/delete operations

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

Request Body schema: application/json

The batch request

Array of objects
Responses
200Request completed successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The invoice could not be found.
429Limit exceeded... unable to retrieve invoice based on tenant limits.
500General server error.
post/invoices/{tenantId}/batch
Request samples
application/json
{
  • "operations": [
    ]
}
Response samples
application/json
{
  • "success_count": 0,
  • "error_count": 0,
  • "results": [
    ]
}