Skip to main content
Vindicia Knowledge Center

CashBox Release Notes 15.0.0

CashBox Release Notes 15.0.0

Features and Enhancements

This release includes the following new features and enhancements.

Payment API Parity: Add Support for minChargebackProbability to Transaction.authCapture()

The Transaction.authCapture method now includes the minChargebackProbability parameter. As with other CashBox methods, this permits the calling system to specify a minimum acceptable chargeback probability, or risk score. See the CashBox Programming Guide for how to use this parameter.

Ticket: CB-11072 

New CashBox Portal Report: Active AutoBills Detail

A new report is available in the CashBox Portal—for both on-demand and scheduled generation. This report provides a list of active AutoBills (determined by the AutoBill being active within a provided time window) with detailed information for each AutoBill Item on that AutoBill. The report is essentially a snapshot representing the current data state as of run-time (rather than potentially presenting the data as it was during the specified time window). It is useful for a detailed view of the status and condition of every subscription, and of the individual products purchased with each.

The report can be viewed in HTML format or downloaded as a CSV file. The HTML will be a grouped representation for each active AutoBill, however the CSV format is designed to be programmatically consumable, so there will be a row for each AutoBill Item, with the owning AutoBill detail repeated – grouping or pivoting can be applied at will the resulting file for AutoBill level counts.

Note This report was made available in a limited fashion during the 14.0 Release – it is now generally available to all merchants.

Ticket: CB-20422

New Merchant Option: BIN Blacklist for Credit Cards

CashBox now supports an optional BIN blacklist for credit cards. Merchants can request to opt in to benefit from this list, whose contents are determined by Vindicia’s extensive experience and on-going risk assessments. Once enabled, any new credit card submitted for authorization or validation with a BIN (the first 6 digits of the card number, representing the Issuer and type of card) found on the blacklist will be rejected immediately, saving transaction fees and time in situations where collection is unlikely or the risk of fraud is high. For example, the current situation in Greece has rendered payments against local Greek issuers a high risk for fraud or potential collection problems. BINs from such issuers are currently included in the CashBox BIN Blacklist.

Note The standard blacklist contains BINs common for all merchants who opt in to the list. The current content of the black list, which is subject to change at Vindicia’s discretion, is available from Vindicia Support. After consultation with Vindicia Customer Success, merchants can request additional BINs to be blacklisted specifically for their accounts.

To opt in to the CashBox BIN Blacklist, submit a Support Request.

To customize the CashBox BIN Blacklist for your business (add or remove BINs to block), arrange a consultation with the Customer Success team.

Ticket: CB-21046

Redesigned AutoBill Status and Billing State (API and Portal)

Prior to the current release, the API presented a much simpler AutoBill Status than was available in the Portal Reports. The Portal Report statuses also required the checking of additional data, such as the end date, in order to detect some statuses common in the subscription lifecycle of an AutoBill. This release brings a much-improved AutoBill Status information scheme, which is uniformly available in the CashBox Portal, AutoBill Reports, and to SOAP API users (API for release 15.0.0 and higher).

In the new scheme, AutoBill Status provides a clear and mutually exclusive indicator of an AutoBill’s service status and place in its Lifecycle (see the graphic below for an illustration of the lifecycle flow):

  • Processing: the AutoBill is newly created and still being administratively defined. It is not currently providing entitled service and is not yet billing. Typically this status will be extremely brief and not commonly seen.
  • Pending Activation: the AutoBill has been completely created but has a future start date. The AutoBill is not yet granting entitled service and is not yet billing. The AutoBill start date can still be changed.
  • Active: the AutoBill is actively granting entitled service and billing in accordance with the assigned Billing Plan and associated AutoBill Items. The AutoBill is not scheduled for cancellation.
  • Pending Cancel: the AutoBill is Active but scheduled for cancellation. The AutoBill will leave active service at the current end date.
  • Cancelled: the AutoBill is no longer actively granting service—it has been cancelled due to user, merchant, or system direction. This is a terminal and permanent status. The Billing condition of this AutoBill is clarified by the current Billing State. Note that the new Cancel Reason Code feature, introduced in release 14.0.0, offers you a flexible and automated way to indicate how the AutoBill arrived at this status.
  • Expired: the AutoBill is no longer actively granting service—its fixed or non-recurring plan has ended and no further billing is scheduled or possible.

Additionally, CashBox may assign the following specialty status values as terminal statuses:

  • Deleted: the AutoBill was administratively removed—this status may be seen in custom and specialty reports but will otherwise not be visible (a deleted AutoBill does not exist from a merchant perspective).
  • Dry Run: the AutoBill was temporarily created in service of a Dry Run—it will not be available beyond the duration of the dry run.
  • Legacy Suspended: this status is used in limited scenarios for legacy AutoBills that ended with a Hard Fail status but which did not otherwise meet the conditions of the new status values.
  • Upgraded: a terminal status given to an older version of an AutoBill that has been explicitly transitioned using the AutoBill.upgrade() API method.

As of the current release a new field, Billing State, joins an improved AutoBill Status field. The new Billing State field expands on the current billing condition of a subscription. In combination with the Status field, it provides a definitive representation of the AutoBill’s current condition.

  • Unbilled: no billing has yet occurred for this AutoBill.
  • Good Standing: the AutoBill is in a billable state and has no overdue balance.
  • Free/Trial: the AutoBill’s current Billing Period definition (as specified by the current Billing Plan) is forcibly free. This can be a temporary state or for the duration of the billing period configured to be free—or permanent if the Billing Plan is permanently free. This state does not apply when the free condition is arrived at due to a Campaign application.
  • In Retry: the AutoBill is still active but in retry, and has at least one billing period in which there was a failed attempt to charge; the AutoBill is still within the configured retry period and may yet be saved by automated processes or customer action. This state corresponds to the prior Soft Error status. In the new scheme, it will only be paired with the Active status.
  • Unusable Payment Method: The AutoBill is still active but is in retry, and has at least one billing period in which there was a failed attempt to charge, and received an error code designated as a Hard Fail, which is expected to be unrecoverable. The AutoBill will remain in this state, in the expectation that a new payment method will be provided by the customer, until the specified retry, or grace period, expires. This state corresponds to the previous Hard Error status when the AutoBill end date has not passed.
  • Billing Completed: the AutoBill is not active; it successfully completed all required billing and has no further scheduled billings.
  • Failed To Collect: the AutoBill is no longer active, having exhausted the retry period without a successful payment method update. This state corresponds to the previous Hard Error status, in which the AutoBill end date has passed. This state will only exist for an AutoBill with the status: Cancelled.
  • Overdue: the AutoBill is assigned a Merchant Accepted Payment (MAP) payment method (invoicing) and has at least one invoice that is overdue.
  • Pending Acceptance: the AutoBill uses a payment method that requires merchant or customer action before charges can be processed, and is waiting on that external action or approval.
  • Free Period: the AutoBill is currently in a free or $0 billing period, for any period excepting a Free=True condition on the initial billing period only (which uses the Free/Trial state).
  • Terminated: the AutoBill has been forced into a terminal state by system or merchant direction. No further billing is planned.
  • Grace Period: the AutoBill has an unpaid balance and is in the retry period but has passed the last scheduled retry attempt—the only path to recovery is a successful payment method update (usually customer intervention).

Status flow diagram:

Updated All SSL Certificates to SHA256 Encryption

All remaining SSL certificates will be upgraded to SHA256 encryption in advance of the eventual phasing out of SHA1.

Ticket: CB-21145

Cancelled AutoBills with Immediate Settlement Will Now Share Tax Adjustments with Avalara

AutoBill cancellations performed due to AutoBill.cancel() method with settle = true now communicate adjustments to the Avalara Tax service, so the AvaTax merchant tax reports will accurately reflect the impact of the refund. No action is required by merchants—this only affects merchants using the Avalara Tax service. The change is retroactive to all SOAP API versions starting with 5.0.

Ticket: CB-17454

Bug Fixes

The following Bugs were fixed in 15.0.0:

Ticket No. Summary Description


CashBox did not return appropriate error when restricted SKU line items are specified when creating one-time Transactions

CashBox now returns to merchants the correct 400 error message: The SKU value provided for Transaction Item is invalid. SKU beginning with ‘VIN_’ are reserved for system use, for Transaction.auth() and Transaction:.authCapture() calls when one or more restricted SKU line items are included in one-time Transactions. This change is applied to all the SOAP clients for SOAP versions 4.0 and higher.


Scheduled “Active AutoBills” report included reports active outside of the specified date range.

A change introduced in a recent release permitted some additional AutoBills to be presented in the Active AutoBills report in some circumstances. This error has been corrected – the report will now only return AutoBills that were active at some point in the specified date range.


Payment method deactivated if only one present and Account.updatePaymentMethod() called with catch-up billing enabled

This older bug report was addressed by improvements made in release 10.0.0—no further action was required for this release; we have closed this and related bug reports.


AutoBIll.addCampaign method could return 200/OK when the pre-existing Campaign remained.

Fixes an issue where the AutoBill.addCampaign() method returned 200/OK without successfully applying the specified campaign to the AutoBill. Instead, it should return an error code and appropriate messaging.


Credit-Only transactions were not reflecting the proper status code once fully refunded.

Previously, When a refund was issued against a transaction that had been fully paid in currency credits (net price $0), CashBox refunded the credits properly but did not change the transaction status to "Refunded" as it would for non-credit-only refunds.

This behavior has been changed so that the transaction status (disposition) is updated to Refunded when the refund succeeds even if it was a 100% credit refund.


Transaction.fetchDeltaSince does not fetch on token and, under certain conditions, other payment methods.

The Transaction.fetchDeltaSince API method will return transactions using any payment method in all conditions.


Campaign ID Field Not Populated for Billing Plan Campaigns applied via Portal.

When entering a campaign code directly on the billing plan, the code was not always being applied to the billing plan and therefore not being displayed on the View AutoBill page after clicking Submit. This portal validation problem has been corrected—all validly applied Campaigns using the portal will be displayed.

Note that on the Edit AutoBill page in the portal, there are 3 places you can enter a campaign code:

  • At the top (Apply to entire AutoBill—based on eligibility for the plan and/or products present on AutoBill Items)
  • For an AutoBill item, in its section (product specific discounts)
  • In the billing plan section (Billing plan specific discount)


500 error on AutoBill.migrate if Transaction is in retry and AutoBillCycles is greater than 0.

Previously, autobill_migrate_retry_cycle1.php could cause a 500 error, when AutoBillCycle and BillingPlanCycle were set to a value greater than zero.

In the current release, when a transaction is in retry cycle and AutoBillCycle and BillingPlanCycle are set to value greater than zero, and the next Transaction Billing is not found, CashBox returns the earliest next activity seen and the AutoBill migration completes successfully.


Transaction.finalizeCustomerAction() returning Failed to finalizeCustomerAction.

Fixed a bug for the MOLPay payment processor where a transaction could be marked as Captured before a finalizeCustomerAction call if more than one callback was received from MOLPay.


AutoBill nextBilling amount is not honoring discounts when fetched, or using fetchFutureRebills.

When a future-dated AutoBill was created with a discount, the initial amount for nextBilling returned from the AutoBill.update now correctly reflects the discount. Previously, however, when you fetched the AutoBill after it was created, the amount shown in nextBilling did not reflect the discount although it would be applied.

The bug introduced in SOAP versions 9.0.0 has been fixed.


“Immediately billed” PayPal one-time transactions using an existing Billing Agreement enter AuthorizedPending status after being Authorized.

This erroneous Transaction disposition change has been corrected. The Transactions in this scenario will now follow the expected status flow.


200110/order not found response from Global Collect on second billing.

This has been resolved so that a Global Collect code of 400220 is no longer returned for a subsequent billing if the first billing for an AutoBill was paid using credits or was a 100% discount.


No Entitlement Stop Push Notification when Stopping AutoBill with Immediate Disentitlement from Portal/API.

This issue has been resolved. Immediate disentitlement will result in the proper push notification immediately.


Individual Campaign codes not displayed for items from Transaction.auth.

Previously, Transaction.auth with several different campaign codes applied on several different Transaction items returned a single campaign code for all items. In the current release, this has been fixed in SOAP versions 5.0 and higher, so that the correct campaign code is returned for each transaction item.


The No Affiliate option does not filter correctly in the Active AutoBills Detail Report.

Filter issue resolved.


AutoBill.modify was returning a 500 error code when the AutoBill parameter is missing.

An AutoBill must be specified in the AutoBill.modify() call. This method has been updated to return a 400 error when this required parameter is not provided.


 AutoBill Detail not returning any results in Scheduled Reports.

When the report was generated from Scheduled Reports rather than generated directly, none of the results were returned. This has been corrected.


AutoBill.cancel did not prorate an item’s cost if it had at least one successful billing cycle after an AutoBill.modify call.

Previously, CashBox did not correctly prorate refund amounts during AutoBill.cancel if the ending AutoBill had items that had a successful billing cycle after an AutoBill.modify call.

In the current release, CashBox correctly prorates refunds regardless of pending or scheduled activity.

CashBox for
Salesforce (Basic)

Learn More
CashBox for Salesforce (Basic)


Learn More

CashBox for
Salesforce (Premium)

Learn More
CashBox for Salesforce (Premium)
Back to Top