ChargeOver
ChargeOver is a cloud-based billing tool that automates payment acceptance, invoicing, and contacting customers.
Data integration: Skyvia supports importing data to and from ChargeOver, exporting ChargeOver data to CSV files, replicating ChargeOver data to relational databases, and synchronizing ChargeOver data with other cloud apps and relational databases.
Backup: Skyvia Backup does not support ChargeOver.
Query: Skyvia Query supports ChargeOver.
Establishing Connection
To establish a connection to ChargeOver in Skyvia, you must specify the Subdomain, Publiс Key, Private Key, and Source Timezone.
Getting Credentials
Subdomain — your ChargeOver subdomain value. You can obtain it from the URL of the ChargeOver page you work with. For example, if the URL is https://yoursubdomain.chargeover.com/, you need only the yoursubdomain part.
Public Key — the public key generated on the ChargeOver side that you obtain when enabling REST API.
Private Key — the private key generated on the ChargeOver side that you obtain when enabling REST API.
To obtain the Public Key and Private Key, perform the following steps:
- Sign in with ChargeOver and click on the gear symbol in the top right corner of the ChargeOver page.
-
On the left menu click Developer –> More Dev Tools. Select the REST API block and click Get Started.
- Enable the REST API by selecting Yes from the drop-down list.
-
Copy the Public and Private Keys values, store them somewhere and click Save on the bottom.
Once you save your keys, you will no longer be able to see or retrieve the API private key/password.
Creating Connection
To connect to ChargeOver in Skyvia, perform the following steps:
- Paste the obtained keys values to the corresponding fields in the Connection Editor.
- Specify the Source TimeZone - change the timezone if the ChargeOver timezone differs from your local timezone.
Additional Connection Parameters
Suppress Extended Requests
ChargeOver API returns only part of the fields for some objects when querying multiple records. To query the values of lacking fields, Skyvia performs additional extended requests for each record of such an object. However, this can decrease performance and significantly increase the number of API calls.
The list of additional fields is the following:
OBJECT | FIELD |
---|---|
Customers | Tags |
Subscriptions | LineItems |
Invoices | LineItems, Sent, Schedule |
Quotes | LineItems |
You can select the Suppress Extended Requests checkbox to reduce the number of API calls. However, please note that some of the fields in such objects are not be available in Skyvia (return empty values) even if they have values in ChargeOver because its API does not return them without extended requests.
Connector Specifics
Object Peculiarities
The Pricemodel field of the Items table is a JSON array. If you insert data into this field, you must specify the values in the JSON array format. For example:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[
{
"currency_iso4217": "USD",
"base": 195.95,
"paycycle": "mon",
"pricemodel": "fla"
},
{
"currency_iso4217": "CAD",
"base": 195.95,
"paycycle": "mon",
"pricemodel": "fla"
}
]
Custom Fields
Skyvia supports the custom fields in the AdminWorkers, Contacts, Customers, Invoices, InvoiceLineItems, Items, Subscriptions, SubscriptionLineItems and Transactions tables.
In Skyvia, these fields have static names like Custom1, Custom2, Custom3…Custom20.
3 such fields are available for the Items table, 5 for AdminWorkers, InvoiceLineItems, and Transactions tables, and 20 — for other tables from this list.
They have a static string data type and a default length of 256 characters. You can perform DML operations against such fields in case these fields were created in ChargeOver UI. Otherwise, you will get the error “You must provide a valid [custom_ХХ] value”.
Incremental Replication and Synchronization
Incremental Replication is supported for the following objects: Customers, Contacts, Subscriptions, Items, ItemTierSets, CreditCards, Coupons, AdminWorkers, Invoices, Quotes.
The CreditCards, Coupons, Invoices, and Quotes have only the CreatedDate field and do not have the UpdatedDate. It means that the Incremental Replication will consider only the new records.
Synchronization is supported for the following objects: Customers, Subscriptions, Items, Contacts.
DML Operations Support
Skyvia supports the following DML operations for ChargeOver objects:
Operation | Objects |
---|---|
INSERT, UPDATE, DELETE | Contacts, Customers, Items, Subscriptions |
INSERT, DELETE | CreditCards |
INSERT, UPDATE | Invoices, Quotes |
INSERT | Transactions |
Stored Procedures
Skyvia represents part of the supported ChargeOver features as stored procedures. You can call a stored procedure, for example, as a text of the command in the ExecuteCommand action in a Target component of a Data Flow or in Query.
CancelSubscription
To cancel the subscription, use the command
call CancelSubscription(:Id,:Comments,:CancelReasonId)
SuspendSubscription
To pause the subscription for the undefined period of time, use command
call SuspendSubscription(:Id,:Suspendfrom_datetime,:Suspendto_datetime)
UnsuspendSubscription
To renew the suspended subscription, use command
call UnsuspendSubscription(:Id)
Supported Actions
Skyvia supports all the common actions for ChargeOver.