Skip to main content
Vindicia Knowledge Center

Transaction Data Members

Transaction Data Members

Transaction Data Members

The following table lists and describes the data members of the Transaction object.

Data Member

Data Type




The Account object that represents the customer to which this Transaction object applies.

See Account Data Members.



Required. The monetary amount for this Transaction object, that is, the total cost of one or more line items purchased. When you process the transaction through Vindicia Subscribe by calling auth or authCapture, Vindicia Subscribe fills in this attribute based on the total of the line items (see the TransactionItem attributes) added to the transaction. When reporting the transaction to Vindicia, ensure that the transaction amount matches the total of the line items.

For Vindicia Subscribe-generated Transactions, this field is generated automatically.



The AutoBill Billing Cycle during which this Transaction occurred.



The Vindicia Record ID (or VID) of the AutoBill that "owns" the transaction—null for one-time transactions or any transaction not associated with an AutoBill.



The zero-based number of times the AutoBill has been billed for the current Billing Plan. One-time transactions will have the same value as the most recent recurring billing event, as determined by the AutoBill and its BillingPlan.

Note This data member will increment for free cycles.



The string that is displayed on a customer’s billing statement. For one-time transactions, Vindicia Subscribe supports this value for only certain payment processors. Because this value and its format are constrained by your payment processor, consult with Vindicia Client Services before setting its value.

If GlobalCollect, MeS, Chase Paymentech or Litle is your payment processor, see Custom Billing Statement Identifier Requirements in the Vindicia Subscribe Programming Guide. 



The ISO 4217 currency code (see for this Transaction object. The default is USD. To determine the actual monetary value, set the values for both amount and currency.



The payment method for deposits to a customer account for this Transaction object. This field is used to make outbound ECP payments or transfers.

See PaymentMethod Data Members.



The number of your division or group with your payment processor for this Transaction. Chase Paymentech refers to this number as the Division Number; Litle calls it the Report Group; MeS calls it the Profile ID. Do not specify this attribute for one-time transactions.

If you subscribe to ChargeGuard, complete this field when reporting transactions to Vindicia Subscribe. Vindicia Subscribe will use this value to match the Transaction to the appropriate chargeback from the payment processor.



The ECP transaction mode for the Transaction object, for example, Inbound or Outbound. If this value is Outbound or Transfer, you must set a value for destPaymentMethod. Specify this attribute for ECP-based transactions only.



Mandate is the Mandate object used to authorize this transaction.



Optional. Your unique identifier for the partner or affiliate who directed this Transaction object to you. Track this information if, for example, you pay a service fee to affiliates who generate business and revenue for you. To implement affiliate tracking, fill in this attribute when reporting or processing one-time Transactions through Vindicia Subscribe. For recurring transactions, Vindicia Subscribe fills in this attribute if it is specified in the corresponding AutoBill object.



Optional. Your sub-ID for (and additional information on) the partner or affiliate who directed this Transaction to you. To implement affiliate tracking, fill in this attribute when reporting or processing one-time transactions through Vindicia Subscribe. For recurring Transactions, Vindicia Subscribe fills in this attribute if it is specified in the corresponding AutoBill object.



The merchant-specified identifier of the AutoBill that "owns" the transaction—null for one-time transactions.



Your unique identifier for this Transaction object. Vindicia Subscribe automatically generates this value for rebilling transactions with the prefix you specified during initial configuration. Vindicia recommends that this prefix differ from the one specified for recurring transactions.

For real-time transactions that you authorize or capture by making a call to Vindicia Subscribe, for example, with Transaction.capture(), you must fill in this attribute.

If you are reporting this transaction to Vindicia for ChargeGuard only, ensure that this ID matches the order number you sent to the payment processor. That way, ChargeGuard can match this transaction with a chargeback received for this transaction from the processor.



Optional. An array of name–value pairs, which are useful in tracking the associated AutoBill object.

Vindicia Subscribe provides the following name-value pairs for use with European Direct Debit (EDD) payment methods:

  • Use name vin:MandateFlag and value 1 to associate the EDD Payment Method with the AutoBill.
  • Use name vin:MandateVersion and value 1.0.1, to associate a mandate document of version 1.0.1 with the object.
  • Use name vin:MandateID to pass the Mandate ID field of the EDD Extension record to Chase Paymentech.
  • Use name vin:MandateApprovalDate to pass the Signature Date field of the EDD Extension Record to Chase Paymntech.
  • Use vin:ValidateFullAmt to pass whether full amount authorization needs to be done before charging. This must be enabled if the processor is Global Collect.

vin:PayPalNoShippingAddress—if set to 1 passes the NOSHIPPING=1 flag in the PayPal ExpressCheckOut request, masking the shipping address for customers buying digital goods.

paypal:NoCommitUserAction—if set to 1, removes the useraction=commit setting from the PayPall ExpressCheckOut request, resulting in a the PayPal checkout page showing "Agree to Continue" instead of "Agree and Pay". Use this setting if you want to do additional checking after the customer exits this checkout page and final authorization doesn’t immediately follow. Vindicia Subscribe supports this feature only for one-time transactions.

paypal:SuppressItems—if set to 1, suppresses display of line item details of a purchase during a PayPal ExpressCheckOut request.

To prevent showing item detail and pricing, provide the name-value pairs: paypal:SuppressItems and paypal:NoCommitUserAction, both with a value of 1, in AutoBill or Transaction objects.

If you use Vindicia's legacy Tax engine or any variety of Avalara Tax service, you can use the vin:NegativeAmountTaxClassificationdata option on any Transaction (name = vin:NegativeAmountTaxClassification, value =xyz, where xyz is a tax class). This instructs Vindicia Subscribe to calculate a negative tax amount on the part of the total that was paid for using currency credits. This is useful if the customer paid taxes when purchasing the currency credits.

Note All name-value pairs included with the Transaction-generating AutoBill will be automatically copied to the resultant Transaction.

The following name-value pairs are automatically populated by Vindicia Subscribe for AutoBill-generated Transactions:

• vin:AutoBillVID—the VID of the AutoBill for which this Transaction was generated.

• vin:ignoreCredits—if set to true, specifies that Transaction.auth,Transaction.capture, and Transaction.authCapture calls ignore Credits available on an Account to pay for a one-time purchase. If set to false, these calls will use available credits for the Transaction. (This name-value pair enables customers to make purchases without using available Credits to pay for them.)

• vin:MerchantAutoBillIdentifier—your unique ID for the AutoBill for which this Transaction was generated.

• vin:RetryNumber—the attempt number (in retry cycles) of the Transaction.

• vin:Type—the type of Transaction. Vindicia Subscribe will automatically populate this name-value pair with value = modify for Transactions which are the result of a Transaction.modify call.

See The NameValuePair Object.

If Global Collect is your payment processor, you can set vin:recurring to 1 to have Vindicia Subscribe flag one-time-Transactions as recurring Transactions. Vindicia Subscribe then passes the values: orderID, EffortID, and AttemptID to Global Collect, as set by you in the vin:orderID, vin:EffortID, and vin:AttemptID fields.

You can send these name-value pairs on transaction.auth(),transaction.capture() and transaction.authcapture() calls for one-time transactions to indicate that those transactions should be flagged as recurring.



An optional description of the Transaction object.



The date of the original transaction attempt for the governing AutoBill that spawned the transaction—null for one-time transactions or any transaction not part of an AutoBill.



In the event of a partial payment, this read-only field reflects the original amount of the Transaction, as a decimal value.



The payment processor for this Transaction object. This string will be available to you in the Transaction object Vindicia Subscribe returns to you in response to your call.

Note If Vindicia Subscribe handles the billing, do not fill in this field.



The name Vindicia uses to identify a Vindicia Subscribe Transaction to the associated payment processor. This is usually the Vindicia Subscribe transactionId. In some cases however, due to the format requirements of some payment processors, Vindicia Subscribe alters the Transaction name before sending it to the processor. In those cases, the name of a transaction in a report by the payment processor will differ from the name of the same transaction in a report by Vindicia. The paymentProcessorTransactionId data member enables you to reconcile the original Vindicia Subscribe Transaction name with the altered Transaction name Vindicia Subscribe sends to the payment processor, to identify the Transaction.



The language (specified as an ISO language string) Vindicia Subscribe uses in email notifications when creating a real-time (one-time)Transaction (see the Transaction.authCapture method), assuming that a template for this language and the email notification type have been uploaded to the Vindicia Subscribe database as part of your configuration. This value overrides any language setting in the Account object for this transaction.



Your unique identifier for a previous transaction referenced by this Transaction object.



The number of retry attempts to bill for this transaction. This index begins with 0 for the initial attempt to charge for a particular billing. A value of 1 indicates the first retry, 3 indicates the third retry, and so on. For one-time transactions, this value is null.



The corrected billing or shipping address Vindicia Subscribe uses to calculate sales tax for this Transaction object. Vindicia Subscribe fills it in automatically. This field is optional for migrated transactions.

Note If Vindicia Subscribe calculates sales tax for you, leave this field empty.

See Address Data Members.



Optional. The customer’s shipping address for this Transaction object. For one-time transactions, Vindicia Subscribe uses this address first to calculate taxes, if any, that are to be added to this transaction’s total.

See Address Data Members.



Optional. The IP address from which this Transaction object originated. This attribute is required for reporting transactions for ChargeGuard, and for scoring transactions for risk screening. With this information, Vindicia Subscribe can pinpoint the geographical location at which the transaction was made. For Vindicia Subscribe-generated recurring transactions, this is the IP address specified on the corresponding AutoBill object.



Optional. The Media Access Control (MAC) address of the customer computer or router, from which this Transaction object originated. This information can be useful in chargeback disputes.



The payment method through which this Transaction object will deduct funds. Vindicia Subscribe uses this payment method for actual billing. For one-time transactions, except for outbound ECP-based, specify this attribute. If the payment method is not already attached to the account for this Transaction object, Vindicia Subscribe attaches it when saving this object in the database. To turn off this behavior, set the PaymentMethod object’s active attribute to false.

For one-time transactions, if shippingAddress is not specified on the Transaction object, Vindicia Subscribe uses the billing address specified on the payment method for calculating taxes, if any.

For recurring transactions generated by Vindicia Subscribe, this attribute is the PaymentMethod object associated with the corresponding AutoBill object.

When reporting a transaction for ChargeGuard, partially mask the payment method’s data members, for added security.

See PaymentMethod Data Members.



Optional. The phone number from which this Transaction object originated. This information may be useful in chargeback disputes.



An array of the statuses this Transaction object has gone through, with the first entry being the most recent status. Each TransactionStatus object contains a Vindicia Subscribe enumerated status type (for example, Authorized or Captured) and the responses from the payment processor, depending on how Vindicia Subscribe processed the Transaction. You need not specify this attribute when creating Transaction objects for risk screening.

Because Vindicia Subscribe sets this value for real-time (one-time) transactions, leave this field empty when creating a Transaction object to be processed through Vindicia Subscribe. When your API call completes, Vindicia Subscribe returns to you the Transaction object with this attribute filled in. Be sure to examine this attribute in the returned object to verify that the transaction has been approved by the payment processor.

For recurring transactions, Vindicia Subscribe sets this attribute when capturing the transaction with the payment processor.

When reporting transactions for ChargeGuard, specify a value for this field. After status updates, report the transaction again and include the reason codes (auth codes or other return codes) received from the payment processor.

See the TransactionStatus Subobject.



An array of tax exemptions to be applied by Vindicia Subscribe to this Transaction object. Specify this attribute for one-time transactions for which Vindicia Subscribe calculates and adds applicable taxes, if any, and adjusts the total transaction amounts accordingly.

See the TaxExemption Subobject.



A time stamp that specifies the date and time of when this transaction occurred. Vindicia Subscribe sets this value for one-time and recurring transactions. Be sure to include this attribute in migrated transactions; otherwise, it defaults to the current time.



TransactionItem array that lists the line items that comprise this Transaction object. Each item is a separate data structure of type TransactionItem.

For migrated transactions, Vindicia Subscribe does not validate that the subitem amounts listed here add up to the total transaction amount (see the amount attribute).

For one-time transactions, Vindicia Subscribe adds the subitem amounts and sets this Transaction object’s amount attribute. Vindicia Subscribe also adds applicable taxes, such as city tax and state tax, as subitems.

For Vindicia Subscribe-generated recurring transactions, this attribute consists of a TransactionItem that refers to the Product object on the corresponding AutoBill object and the applicable tax items.

To add sales tax when migrating transactions, include the tax as a line item here.

See the TransactionItem Subobject.



Optional. Your customer’s user agent from whom this Transaction originated.



The response from a payment verification system, for example, Visa (VbV) or MasterCard SecureCode, for this Transaction object. If you report transactions to Vindicia for ChargeGuard, populate this field with the information on the payment verification performed while conducting this transaction.



Vindicia’s unique identifier for this Transaction object. When creating a Transaction object, leave this field empty. Vindicia assigns it a VID when saving the object in the database and make the VID available in the Transaction object returned to you in response to your call. Afterwards, you can refer to the object by specifying either the VID or merchantTransactionId.

Note In the absence of an existing VID or merchantTransactionId, Vindicia treats a Transaction object as a new object for any API call, and assigns the object a new VID.

For Users

Learn More
For Users

Vindicia Subscribe Features

Learn More
Vindicia Subscribe Features
Back to Top