Bulk Job

A bulk job is a collection of uploaded records which can be validated and imported/processed. The nature of the job is highly variable. While the user interface has many available jobs, the API supports the following:

Bulk Write Off

  • Takes a list of up to 1000 invoice IDs to write off. The invoices must have a nonzero balance and the customer must be in status "Active" or "Cancelled"

Bulk Payment

  • Takes a list of payments. The JSON for a payment is the JSON from POST payments

Bulk Job Object Fields

recordsObject. Defined belowA list of the records and their statuses.
accountIdNumberThe ID of your Fusebill account.
typeEnum: {CustomerImport, SubscriptionImport, OpeningDeferredRevenueBalance, QuickBooksLatch, QuickBooksUnlatch, DeletePaymentMethods, MovePaymentMethods, PaymentImport, SubscriptionActivationImport, UpdateSubscriptionImport, SubscriptionProductQuantities, SalesforceCatalogSync, CustomerImportBasic, CustomerImportEdit, CustomerActivationImport, CreateSubscriptionImport, PushToThirdPartyVaultImport, CancelSubscriptionImport, CreatePurchaseProductItem, GeotabSubscriptionCreateImport, BulkWriteOff, BulkPayment}The type of upload. Only some are available for creation/processing via API (see above), but any can be read over API.
statusEnum: {Validating, Done, Validated, ValidatedWithErrors,
Processing, Processed, ProcessedWithErrors,
Expired, NotStarted, Failed}
The status of the bulk job.
createdTimestampDateTimeThe timestamp of when the job was created.
completedTimestampDateTimeThe timestamp of when this job finished validation.
totalRecordsNumberThe total number of records provided.
successfulRecordsNumberThe count of records which have succeeded validation.
failedRecordsNumberThe count of records which have failed validation.
totalProcessedRecordsNumberThe count of records which were processed regardless of success/failure.
processedRecordsNumberThe count of records which were successfully processed.
failedProcessedRecordsNumberThe count of records which were not successfully processed.
importingTimestampDateTimeThe timestamp of when the processing started.
processedTimestampDateTimeThe timestamp of when the processing finished.
fileNameStringThe .CSV file name used for the upload.
referenceStringThe reference for the upload. Usually system generated.
modifiedTimestampDateTimeThe timestamp of the last time this entity was modified.
idNumberThe Fusebill generated ID which uniquely identifies this bulk job.

Records Fields

accountUploadIdNumberThe Fusebill generated ID which uniquely identifies the bulk job.
statusEnum:{ Queued, PassedValidation, FailedValidation, QueuedForProcessing, Processed, FailedProcessing}The status of this record. A record has only changed data in the system if it is in status "Processed"
dataStringA string representation of the data this record represents. This varies by bulk job type
detailsStringA string containing an explanation for the current status
createdEntityIdNumberThe Fusebill generated ID of the (possible) entity created by this record. Not all jobs create entities (e.g. customers, subscriptions, etc.)
idNumberThe Fusebill generated ID of this record.