On This Page
Offline Transaction File Submission Implementation Guide
This section describes how to use this guide and where to find further information.
- Audience and Purpose
- This guide is written for merchants who want to submit offline transaction requests toCybersourcein CSV-formatted batch files. Batch files can be uploaded toCybersourceusing the Simple Order API with Java authentication. Batch files can also be submitted toCybersourceat theBusiness Center.The Offline Transaction File Submission system ingests batched payment requests composed of fields from theMapping information is provided in Reference: Simple Order and SCMP API Field Mapping.CybersourceSimple Order API. If you normally use the SCMP API to request individual transactions, you need to know which Simple Order API fields correspond to the SCMP API fields with which you are familiar.
- Conventions
- The following special statement is used in this document:AnImportantstatement contains information essential to successfully completing a task or learning a concept.
- Related Documentation
- Visit theCybersourcedocumentation hub to find additional technical documentation.
- Customer Support
- For support information about any service, visit the Support Center:
Recent Revisions to This Document
25.10.01
This revision contains only editorial changes and no technical updates.
25.09.01
- Document Restructured
- Reorganized the introductory information:
- Reorganized information about results files and reports:
- Email Notifications
- These email notifications are now available:
- CA for Uploading a Batch File Using Java Sample Code
- The Certificate Authority (CA) has been changed fromEntrust.nettoDigiCert.net. See steps 4e and 4l in Using Java Sample Code for Basic Authentication.
- Transaction Processing Results File
- Each data record contains information about responses to your batched requests. The fields in the data records are now in alphabetical order, except for the first field,merchantReferenceCode. See these topics:
- More Information About Mismatched Field Counts
- Error messages for the batch validation error code123. See these topics:
- Fields in Transaction Response File Data Records Are in Alphabetical Order
- Required and Optional Fields for Transaction Requests
- Added descriptions of required and optional fields for creating a transaction request in a batch upload file. The descriptions were ported from Batched_Template_Guides.pdf. See the service-specific topics in this section:
- eCheck
- Throughout the guide,eCheckis now referred to asACH service.
22.01
Updated the
Business Center
URLs.Introduction to Offline Transaction File Submission
Cybersource
supports the offline submission of multiple payment requests
specified in a single file. Instead of submitting individual requests, you can upload a
file that contains a set, or batch
, of transaction requests. You specify the same
information for a batched request as you would specify for an individually submitted
request. One batch file
can include transactions that use different services,
currencies, countries, merchant IDs, and card types, thus eliminating the burden of
handling these values separately.This guide describes how to upload a batch file using the
Cybersource
Business Center
.Cybersource
attempts to validate the contents of the uploaded batch file
and, if any errors are detected in the file, none of the batched requests are processed.
File validation results and transaction processing results are available through email notifications,
results files, and downloadable reports.Cybersource
recommends against using the batch upload feature
for TID-based processors or APACS-based processors.
With these processors, transactions submitted through batch files can result in timeouts and errors.
For more information, contact customer support.Payment Services Supported
Cybersource
supports batched transaction requests
for these payment services:- Authorization
- Sale
- Capture
- Credit
- Voids
- ACH debit
- ACH credit
- Subscription
However, batched transaction requests for these payment
services are not supported:
- Payer authentication enrollment check (payerAuthEnrollService)
- Bank transfer (bankTransferService)
- PayPal button creation (payPalButtonCreateService)
- PayPal credit (payPalCreditService)
Requirements for Uploading Batch Files
- Your local machine is running J2SE 17 or newer
- Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy files have been downloaded from the Oracle Java SE download page and they are installed on your local machine:
- US_export_policy.jar
- local_policy.jar
Batch Files and Batch File Templates
A transaction batch file is a CSV-formatted file that contains of a header, a set of
transaction requests, and a trailer. To create a batch file, you begin with a copy of a
batch file template and replace field placeholders with values for the header,
transaction requests, and trailer rows.
You can download templates from the
Cybersource
Business Center
,
or you can use a custom template that you tailor to your specific needs.
At the Business Center
,
you can download a batch file template for each payment service
supported for batched payment transactions:
authorizations, sales, captures, credits,
ACH service debits, ACH service debits, and
subscriptions.The services that you enable for your account
might prevent you from uploading files for some transaction types.
if you have questions about which transaction requests you can upload in a batch file,
contact customer support.
For more information, see the topics in Managing Templates and Batch Files.
Validation and Processing Results
You can find the results of batch file validation and subsequent transaction processing
in these files and reports that you can download from the
Business Center
:- Email Notifications
- Cybersourcesends email that reports failed or successful validation of batch files and for successful processing of batched transaction requests. For more information, see Viewing Email Notifications.
- Batch Validation Response File
- After a batch file is uploaded,Cybersourcechecks the validity of the batch file contents and then creates an XML file that shows whether the batch file validation succeeded or failed. If the batch file contains an error, none of the transaction requests are processed. See Viewing the Results of Batch File Validation.
- Transaction Response Files
- After batched transaction requests are processed,Cybersourcecreates two CSV-formatted files. One file lists processing results for all transactions, whether accepted, rejected, or error. The other file lists results only for any transactions that were rejected or that triggered a processing error. For more information, see Viewing the Results of Transaction Processing.
- Transaction Request Report
- This automatically generated report contains general information about the transaction requests that were uploaded from a batch file. For more information, see Viewing the Transaction Request Report.
- Batch Submission Detail Report
- This automatically generated report contains detailed information about the transaction requests that were uploaded from a batch file. For more information, see Viewing the Batch Submission Detail Report.
- Payment Batch Detail Report
- This transaction-level report shows all of your sales and refunds that were submitted to your payment processor through theBusiness Center. The report also tracks which of your transactions have been settled.
Offline Transaction File Submission Flow
This sequence summarizes the flow of offline transaction file submission.
- Create a CSV-formatted file of payment transaction requests.For details, see these topics:
- To upload the batched transaction requests at thefollow the steps in Upload a Batch File at the Business Center.CybersourceBusiness Center,Proceed tostep 4to check that the file validated successfully.
- To upload the batched transaction requests using the Simple Order API,follow the steps in Using Java Sample Code for Basic Authentication.
- Check whether your batch file was validated successfully. Results are available through an optional email notification and in downloadable file validation results files.
- If the batch file contains an error,Cybersourcedoes not submit any of the transaction requests for processing. Correct the error and submit the updated batch file.
- Check the transaction processing results.Results are available through an optional email notification, in downloadable transaction processing results files, and in downloadable reports.
Managing Templates and Batch Files
This section shows how to create a CSV-formatted transaction batch file using a template.
Batch file templates are available at the
Cybersource
Business Center
,
and you can also create custom batch file templates.The services that you enable for your account
might prevent you from uploading files for some transaction types.
if you have questions about which transaction requests you can upload in a batch file,
contact customer support.
The topics in this section cover this information:
- The contents of a batch file template
- Templates available at theBusiness Center
- How to download templates from theBusiness Center
- How to create a custom template
- How to create a batch file
- Example batch files
Batch File Templates
A template for a batch file contains these records:
- A header record that contains required and optional fields for a header record
- A data record that contains required and optional fields for a transaction request
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
In a batch file, the names of the fields used to specify transaction requests
are
Simple Order
API field names.
More information about Simple Order
API fields is available here:- Reference: Request Fields for Batch Files contains descriptions of transaction request fields in a batch file.
- Simple Order API Field Referenceprovides an alphabetical list of theSimple OrderAPI fields available through theCybersourceplatform.
Available Batch File Templates
Each batch file template available the
Business Center
covers only one type of
transaction, but any batch file you submit to Cybersource
can include
transaction requests from any supported service.
Although a batch file can specify more than one type of transaction request,
Cybersource
recommends that you limit batch files to only one transaction request type.
Doing so helps to maximize batch processing throughput.Templates for these types of batch file transactions are available
at the
Cybersource
Business Center
:- Authorizations
- An authorization confirms that a payment card account holds sufficient funds to pay for a purchase. A successful authorization places a hold on the funds in the account, reducing the cardholder's available limits by the authorized amount. The name of the template file for authorizations isauthorizations-TEMPLATE.csv.
- Sales
- A sale bundles an authorization and capture into a single transaction request. Upon a successful transaction, funds are immediately transferred from the cardholder account to the merchant account. The authorization and capture amounts must be the same. Thesales-TEMPLATE.csvtemplate supports these types of transactions:
- Sales
- Sales with Level III data
- Captures
- A capture, also known assettlement, transfers funds from the cardholder’s account to your bank and releases the hold that the authorization placed on the cardholder’s credit card funds. Include in the capture request message the request ID returned from the previous authorization. Thecaptures-TEMPLATE.csvtemplate supports these types of transactions:
- Captures
- Captures with Level III data
- Credits
- Arefund(also known as afollow-on credit) is a payment refund from your bank to the cardholder for a payment that has already been captured. In the request, include the request ID that was returned in the response to the capture request. Unless otherwise specified, you must request a refund within 180 days of a settlement. Thecredits-TEMPLATE.csvtemplate supports these types of transactions:
- Credits
- Original credit transactions (OCTs)
- ACH Service
- These templates are available for ACH service transactions:
- Theecheck-debits-TEMPLATE.csvtemplate supports ACH service debits.
- Theecheck-credits-TEMPLATE.csvtemplate supports ACH service credits.
Download a Batch File Template
- Follow these steps to download a batch file template from theBusiness Center:
- Log in at theCybersourceBusiness Center.
ADDITIONAL INFORMATION
- Production:https://businesscenter.cybersource.com/
- Production in India:https://businesscenter.in.cybersource.com/
- On the left navigation panel, clickVirtual TerminalandBatch Transaction Upload.
ADDITIONAL INFORMATION
The Batch Transaction Upload page appears. - ClickDownload template.
- In drop-down menu, select the type of template that you want to download.
ADDITIONAL INFORMATION
The template downloads to your local machine.
Create a Custom Batch File Template
Custom batch file templates enable you to send batch files that contain information for
transaction services not included with the standard template, such as direct debit and
direct debit refunds.
You must generate two
transaction security keys—one for the
Cybersource
production
environment and one for the test environment. For information about generating and using
security keys, see the Creating and Using Security Keys
guide.Files that include non-ISO-8859-1 characters are processed, but the characters
appear as question marks when you view the transaction details in the
Business Center
and in reports.- Follow these steps to create a custom template using a spreadsheet application or custom script:
- Enter the file header information.
ADDITIONAL INFORMATION
These fields are required in the header:ADDITIONAL INFORMATION
- merchantID: Your merchant identifier, which consists of up to 30 alphanumeric characters.
- transactionType: The type of transaction requests contained in the batch file. Possible values:
- authorization
- sale
- capture
- credit
- ecDebit
- ecCredit
- statusEmail: Email address wherebatch status alertsare sent.
- recordCount: Change the value from 0 (which is invalid) to the number of transactions (data records) in the file.
- targetAPIVersion
- Add this text string at the end of the file header, and make sure to include the leading comma:
ADDITIONAL INFORMATION
,Template=customADDITIONAL INFORMATION
This example shows the header portion of a custom batch file template:merchantID=infodev,batchID=12345,creationDate=2007-06-12, recordCount=3,purchaseTotals_currency=USD,statusEmail=test@example.com, targetAPIVersion=1.90, Template=custom - Following the file header, beginning in row 4, add a data record for each payment transaction request.
ADDITIONAL INFORMATION
When you create a custom template from a standard template, request fields do not have to be in a specific order. For information about the supported fields in a transaction request, see Reference: Request Fields for Batch Files. - Save the template.
Create a Batch File
This topic shows how to create a transaction batch file
by using a provided template or a custom template.
A transaction batch file specifies a set, or
batch
, of payment transactions
that you can upload to Cybersource
for offline processing.Before you begin to create a batch file, be aware of these requirements, limitations,
and recommendations:
- File format—A batch file must be in CSV format. Use a template downloaded from theBusiness Centeror a properly formatted custom template. See Download a Batch File Template and Create a Custom Batch File Template.
- File size—A batch file must not be larger than 75 MB.
- Number of transaction requests—Cybersourcerecommends that a batch file contains no more than 50,000 transaction requests.
- Number of transaction types—Although a batch file can specify more than one type of transaction request,Cybersourcerecommends that you limit batch files to only one transaction request type. Doing so helps to maximize batch processing throughput.
- Follow these steps to create a batch file using a template:
- Begin to create your batch file by making a copy of a batch file template.
ADDITIONAL INFORMATION
- Filename format:<merchant-id>.<batch-id>.
- Filename length: 255 characters or less
- Valid characters: alphanumeric characters, non-ASCII characters, space characters, dashes, periods, and underscores only.
- Open the new batch file using Excel or a similar application.
ADDITIONAL INFORMATION
If you use Excel, make sure toimportthe file. If youopenthe file instead, Excel does not process the CSV formatting correctly. - Specify up to 10 elements in the batch file header:
ADDITIONAL INFORMATION
Required fields are indicated in the template with an asterisk next to the name. Remove any asterisks from your batch file before you upload it, otherwiseCybersourcewill not process any transactions in your batch file. - Load your transaction data into the batch file, beginning in row 4.
ADDITIONAL INFORMATION
The information that you provide for each request in the batch file is the same information that you would provide for an individual service request. The templates specify the required and optional fields for each transaction type included in the batch file template. For descriptions of the fields in a batch file data record, see the tables in Reference: Request Fields for Batch Files. - You can enter the data in one of three ways:
- Manually enter the information into the batch file.
- Copy and paste the information into the batch file.
- Write a script that loads the information into the batch file.
ADDITIONAL INFORMATION
Files that include non-ISO-8859-1 characters (letters with diacritical markings) are processed, but the characters appear as question marks when the transaction details are viewed in theBusiness Centerand in the reports. - Change the value of the file header fieldrecordCountfrom 0 to the number of data records (transactions) in the file.
- Save the file.
Example Batch Files
This section contains example batch files for these types of transactions:
- Authorization
- Sale
- Capture
- Credit
- Void
Example Batch File for an Authorization Request
This example shows a transaction batch file for a single authorization request.
merchantID=pa_cybs_nrtfmerdes_01,batchID=8jjz99m0,recordCount=1,statusEmail=test@example.com,targetAPIVersion=1.86,creationDate=2025-02-19,reference= merchantID,merchantReferenceCode,merchantDefinedData_field1,ccAuthService_run,billTo_firstName,billTo_lastName,billTo_email,billTo_street1,billTo_city,billTo_state,billTo_country,billTo_postalCode,card_accountNumber,card_expirationMonth,card_expirationYear,card_cardType,purchaseTotals_currency,purchaseTotals_grandTotalAmount,item_#_productCode pa_cybs_nrtfmerdes_01,1,8111,true,Jay,Smith,jsmith@example.com,8 Mission Street,San Francisco,CA,US,94101,4111111111111111,01,2026,001,AUD,8.00,1 END,SUM=8.00
Example Batch File for a Sale Request
This example shows a transaction batch file for a single sale request.
merchantID=pa_cybs,batchID=8aai15st,recordCount=2,statusEmail=test@example.com,targetAPIVersion=1.86,creationDate=2025-02-27,reference= merchantID,merchantReferenceCode,merchantDefinedData_field1,ccAuthService_run,billTo_firstName,billTo_lastName,billTo_email,billTo_street1,billTo_city,billTo_state,billTo_country,billTo_postalCode,card_accountNumber,card_expirationMonth,card_expirationYear,card_cardType,purchaseTotals_currency,purchaseTotals_grandTotalAmount,item_#_productCode,ccCaptureService_run pa_cybs,1,7804,true,Jay,Smith,jsmith@example.com,8 Mission Street,San Francisco,CA,US,94101,4111111111111111,01,2026,001,USD,8.00,1,true pa_cybs,2,5559,true,Jay,Smith,jsmith@example.com,8 Mission Street,San Francisco,CA,US,94101,4111111111111111,01,2026,001,USD,8.00,1,true END,SUM=16.00
Example Batch File for a Capture Request
This example shows a transaction batch file for a single capture request.
merchantID=pa_cybs_nrtfmerdes_01,batchID=9376kdt1,recordCount=1,statusEmail=test@example.com,targetAPIVersion=1.86,creationDate=2024-01-09,reference=, merchantID,merchantReferenceCode,merchantDefinedData_field1,purchaseTotals_currency,purchaseTotals_grandTotalAmount,card_expirationYear,ccCaptureService_run,ccCaptureService_authRequestID pa_cybs_nrtfmerdes_01,1,8274,USD,8,2025,true,7258683749286256303096 END,SUM=8.00
Example Batch File for a Credit Request
This example shows a transaction batch file for a single credit request.
merchantID=pa_cybs_nrtfmerdes_01,batchID=1grxc9q0,recordCount=1,statusEmail=test@example.com,targetAPIVersion=1.86,creationDate=2025-02-19,reference= merchantID,merchantReferenceCode,merchantDefinedData_field1,ccCreditService_run,billTo_firstName,billTo_lastName,billTo_email,billTo_street1,billTo_city,billTo_state,billTo_country,billTo_postalCode,card_accountNumber,card_expirationMonth,card_expirationYear,card_cardType,purchaseTotals_currency,purchaseTotals_grandTotalAmount,item_#_productCode,ccCreditService_commerceIndicator pa_cybs_nrtfmerdes_01,1,9506,true,Jay,Smith,jsmith@example.com,8 Mission Street,San Francisco,CA,US,94101,4111111111111111,01,2026,001,AUD,8.00,1,moto END,SUM=8.00
Example Batch File for a Void Request
This example shows a transaction batch file for a single void request.
merchantID=pa_cybs_nrtfmerdes_01,batchID=9376kdt1,recordCount=1,statusEmail=test@example.com,targetAPIVersion=1.86,creationDate=2024-01-09,reference=, merchantID,merchantReferenceCode,merchantDefinedData_field1,purchaseTotals_currency,purchaseTotals_grandTotalAmount,card_expirationYear,voidService_run,voidService_voidRequestID pa_cybs_nrtfmerdes_01,1,8274,USD,8,2025,true,7258683749286256303096 END,SUM=8.00
Uploading a Transaction Batch File at the Cybersource
Business Center
Cybersource
Business Center
This section shows how to use the
Business Center
UI
to upload a transaction batch file to Cybersource
.The topics in this section cover this information:
- How to upload a batch file at theBusiness Center
- How to view the status of the upload process
Upload a Batch File at the Business Center
Business Center
This topic describes how to use the
Business Center
UI
to upload a batch file of payment transaction requests to Cybersource
.- To upload a batch file at theBusiness CenterUI:
- Log in at theCybersourceBusiness Center.
ADDITIONAL INFORMATION
- Production:https://businesscenter.cybersource.com/
- Production in India:https://businesscenter.in.cybersource.com/
- On the left navigation panel of theCybersourceBusiness Center, clickVirtual TerminalandBatch Transaction Upload. The Batch Transaction Upload page appears.
- ClickUpload Batch. The Batch Transaction Upload page appears.
- Optional: Enter any notes related to this batch of transactions.
- Required: Enter the email address to receive file upload status updates.
- ClickBrowseand navigate to the transaction batch file that you want to upload.
- ClickSave.Cybersourceuploads the batch file.
ADDITIONAL INFORMATION
AsCybersourcevalidates and processes the batch file, the status grid appears on the Batch Transaction Upload page. The status changes asCybersourcevalidates the file and processes the payment transaction requests.ADDITIONAL INFORMATION
Cybersourcetypically updates the status and sends a batch status email within 30 minutes of receiving the batch file. The transaction processing time depends on the time of day and the size of your file. For more information about each status, see Batch Processing Status. - Receive the batch status alerts.
ADDITIONAL INFORMATION
When file validation or processing succeeds or fails,Cybersourcesends a notification to the email address you provided when you uploaded the batch file. You can also view validation files as described in Batch Processing Status. - View the reports and response files for your transaction requests:
ADDITIONAL INFORMATION
After all of the requests in a batch file are processed,Cybersourcecreates the batch reports:- —Shows details of the batched transactions.Batch Files Detail Report
- Batch Submission Detail ReportSee these topics for more information about batch upload reports:
- —Transaction-level report that indicates all of the sales and refunds that have been submitted to your payment processor. You can download the report daily. If the batch file has an error, the file is not processed, and the file’s requests are not included in the report. See thePayment Batch Detail Report.Business CenterReporting User Guide
- —AfterResponse filesCybersourceprocesses all of the requests in the batch file,Cybersourcecreates two types of CSV response files that you can use to determine the results of the requests. See Viewing the Results of Transaction Processing.
Batch Processing Status
When you process a transaction batch file
at the
Cybersource
Business Center
,
the batch processing status is displayed in the status grid.These are the possible processing status values for a transaction request:
- Validating
- The batch file is being evaluated for syntax errors. If the validation process finds any syntax errors or mismatched specifications,Cybersourcedoes not process any of the requests.
- Instead, the line number of the first failed record is sent in abatch status alertemail. If syntax errors are found in multiple records, only one alert is sent.
- These are typical errors that can occur in a batch upload file:
- TheRecordCountvalue specified in the file header does not match the number of data records in the file.
- A data record in the file does not contain the number of fields specified in the data header.
- ToBeResolved
- Your batch file has been uploaded, but manual intervention by theCybersourceoperations team is required. Contact Support.
- Rejected or OnHold
- The validation failed. If the validation failed due to duplicate files, the status isOnHoldand areject notificationis sent. For any other type of validation failure, the status isRejected.Cybersourcesends a notification to the email address you provided when you uploaded the batch file.
- To handle a failed validation, follow the suggested remedy in the emailed notification or contact Support.
- If you resubmit your batch file, use the same batch ID that you used for the original file submission unless specified otherwise by Support or in the batch status alert.
- Processing
- Cybersourcehas begun to process the payment transactions specified in the batch file.
- Completed
- Processing of the transactions in your batch file is complete. TheUploadedcolumn of the status grid displays the date, and the field becomes a link to a Batch Files Daily Summary report. See these topics for more information about batch upload reports:
Uploading a Transaction Batch File Using the Simple Order API
Using Java Sample Code for Basic Authentication
The sample code was developed and tested on a Solaris platform.
- Replace your Java installation’s existing security policy files with the new ones you downloaded from Oracle’s site:
ADDITIONAL INFORMATION
- Find your existingUS_export_policy.jarandlocal_policy.jarfiles in the$JAVA_HOME/jre/lib/securitydirectory.
- Rename or move your existing files to another directory.
- Copy the newUS_export_policy.jarandlocal_policy.jarfiles that you downloaded from Oracle to the$JAVA_HOME/jre/lib/securitydirectory.
- Edit the$JAVA_HOME/jre/lib/security/java.securityfile and insert the security provider right after the Oracle provider. Make sure to increment the numbers of the other providers in the list. Your list of security providers will now look similar to this:
ADDITIONAL INFORMATION
security.provider.1=sun.security.provider.Sun security.provider.3=com.sun.net.ssl.internal.ssl.Provider security.provider.4=com.sun.rsajca.Provider security.provider.5=com.sun.crypto.provider.SunJCE security.provider.6=sun.security.jgss.SunProvider - Import yourCybersourceSimple Order API .p12 security key into Internet Explorer.
ADDITIONAL INFORMATION
- Open an Internet Explorer Web browser, go toTools > Internet Options..., and click theContenttab.
- ClickCertificates....
- ClickImport...to open the Certificate Import Wizard, and clickNextto start the Wizard.
- Browse to the location of your .p12 security key and clickNext.For the password for the private key, enter yourCybersourcemerchant ID. For example, if your key is infodev.p12, enterinfodevas the password.
- On this page, check theMark this key as exportablebox and then clickNext.
- ClickNexton the Certificate Store page.
- ClickFinishand a confirmation that the import was successful appears.
- Create a key store file to contain yourCybersourceSimple Order API .p12 security key:
ADDITIONAL INFORMATION
- In a Web browser, go to one of these URLs:
- If you are in test mode and have not gone live withCybersource:https://batchtest.cybersource.com/upload/UploadBatchFile
- If you have gone live withCybersource:https://batch.cybersource.com/upload/UploadBatchFile
- For live transactions in India, https://batch.in.cybersource.com/upload/UploadBatchFile
- Go toFile > Properties.
- ClickCertificates.
- Click theCertification Pathtab.
- SelectDigiCert.com TLS/SSL Certification Authority.
- ClickView Certificate.
- Click theDetails tab.
- ClickCopy to Fileand thenNext.
- ClickBrowseand navigate to where you want to save the file.
- Enter the name that you want to use for the file, such as MyCert. ClickSaveand clickNext.
- ClickFinish.Your file, for exampleMyCert.cer, has been created in the location you specified.
- Go to$JAVA_HOME/bin/keytooland use the J2SE keytool program to create a keystore file that contains this newly created certificate. You must provide a pass phrase for the keystore. You MUST use the same password that you used in Step 3d above. For example, if your p12 key is infodev.p12, the pass phrase must be infodev.To create the keystore, enter this command:$JAVA_HOME/bin/keytool -import -file <path to certificate>/ <name of certificate file> -keystore <name of keystore file>.jks -storepass <pass phrase of keystore>For example:$JAVA_HOME/bin/keytool -import -file /home/bluu/MyCert.cer - keystore MyKeystore.jks -storepass myMerchantIDIf successful, the output will be similar to this example[XXXfrom 2020 guideXXX]:Owner: CN=batchtest.cybersource.com, OU=Operations, O=CybersourceCorporation, L=Mountain View, ST=California, C=US Issuer: CN=Entrust.net Secure Server Certification Authority, OU=(c) 1999 Entrust.net Limited, OU=www.entrust.net/CPS incorp. by ref. (limits liab.), O=Entrust.net, C=US Serial number: 374e1b7b Valid from: Thu Nov 18 17:15:34 PST 2004 until: Tue Jan 31 17:51:24 PST 2006 Certificate fingerprints: MD5: BE:BF:B0:91:69:C4:7B:10:45:EC:D6:0F:16:AA:3D:77 SHA1: 07:F8:41:DC:B2:FC:F5:DA:FC:EE:09:7A:33:B8:29:15:31:18 Trust this certificate? [no]: yes Certificate was added to keystoreIf successful, the output will be similar to this example[XXXneeds approvalXXX]:Owner: CN=batchtest.cybersource.com, OU=Operations, O=CybersourceCorporation, L=Foster City, ST=California, C=US Issuer: CN=DigiCert.com TLS/SSL Certificate Authority, OU=(c) 2022 DigiCert.com Inc, OU=www.digicert.net/legal-repository/security, O=DigiCert.com, C=US Serial number: 374e1b7b Valid from: Monday Nov 18 17:15:34 PST 2024 until: Sat Jan 31 17:51:24 PST 2026 Certificate fingerprints: MD5: BE:BF:B0:91:69:C4:7B:10:45:EC:D6:0F:16:AA:3D:77 SHA1: 07:F8:41:DC:B2:FC:F5:DA:FC:EE:09:7A:33:B8:29:15:31:18 Trust this certificate? [no]: yes Certificate was added to keystore
- Modify theSSLFileTransfer.propsfile with your settings. The file is part of theCybersourcedownload package and looks similar to this example:
ADDITIONAL INFORMATION
# Upload host host=batchtest.cybersource.com # Upload port port=<Upload port> # Username to log into theBusiness CenterbcUserName=<Business Centerlogin name> # Password to log into theBusiness CenterbcPassword=<Business Centerlogin password> # File to upload uploadFile=<path to your file>/<file name> # Path where to upload it to (provided byCybersource) path=/upload/UploadBatchFile # YourCybersourcesecurity key key=<key location path>/<key file name> # New key store you just created that contains the certificate keyStore=<key store location>/<new key store name> # Pass phrase is the string you used in -storepass option when you # created the key store file earlier passPhrase=<pass phrase> - Set theJAVA_HOMEenvironment variable to the location in which you installed J2SE. For example:
ADDITIONAL INFORMATION
JAVA_HOME=/home/j2se - Include$JAVA_HOME/binin the PATH.
- Compile and run the sample:
ADDITIONAL INFORMATION
- Change to the directory location in which you stored theCybersourcesample files.
- Type this:javac SSLFileTransfer.java java SSLFileTransfer <path to props file>/SSLFileTransfer.propsIf the upload is successful, the output should look similar to this:HTTP/1.1 200 OK Date: Wed, 26 Jan 2020 17:26:31 GMT Server: Apache Coyote/1.0 Content-Type: text/plain Content-Length: 0 X-Cache: MISS from <your host> Connection: close UPLOAD FILE SUCCESSFUL
Sample Code for Basic Authentication
The sample below shows how you can upload a batch file to a batch server using Basic Authentication.
import java.util.*;import java.io.*;import javax.net.ssl.*;import java.security.*;public class SSLFileTransfer {Properties props = new Properties(); // stores properties from property file/*** Default constructor*/public SSLFileTransfer() {}/*** Initialize program by reading properties file.** @param propsFile needed for file transfer*/public void init(String propsFile) {try {props.load(new BufferedInputStream(new FileInputStream(new File(propsFile))));} catch (Exception e) {e.printStackTrace();System.exit(-1);}}/*** Error message if incorrect arguments are passed.*/public static void usage() {System.out.println("USAGE: java SSLFileTransfer <full path property file name>");System.exit(-1);}/*** Get factory for authentication** @throws IOException if exception occurs*/private SSLSocketFactory getFactory() throws IOException {try {SSLContext ctx;KeyManagerFactory kmf;KeyStore ks, ks1;char[] passphrase = props.getProperty("passPhrase").toCharArray();ctx = SSLContext.getInstance("TLSv1.2");kmf = KeyManagerFactory.getInstance("SunX509");ks = KeyStore.getInstance("PKCS12");ks1 = KeyStore.getInstance("JKS");ks.load(new FileInputStream(props.getProperty("key")), passphrase);ks1.load(new FileInputStream(props.getProperty("keyStore")), passphrase);kmf.init(ks, passphrase);TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509");tmf.init(ks1);ctx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);return ctx.getSocketFactory();} catch (Exception e) {e.printStackTrace();throw new IOException(e.getMessage());}}/*** Get host from property file*/private String getHost() {return props.getProperty("host", "localhost");}/*** Get port from property file*/private int getPort() {return Integer.parseInt(props.getProperty("port"));}/*** Send request (file) to the server.** @param out outstream to send the data to the server* @throws Exception if an error occurs.*/private void sendRequest(PrintWriter out) throws Exception {final String CRLF = "\r\n";String path = props.getProperty("path");out.print("POST " + path + " HTTP/1.1" + CRLF);final String BOUNDARY = "7d03135102b8";out.print("Host: " + props.getProperty("host") + CRLF);out.print("Content-Type: multipart/form-data; boundary="+BOUNDARY+CRLF);String uploadFile = props.getProperty("uploadFile");String authString = props.getProperty("bcUserName") + ":" + props.getProperty("bcPassword");String encodedAuthString = "Basic " + new sun.misc.BASE64Encoder().encode(authString.getBytes ());out.print("Authorization: " + encodedAuthString+CRLF);StringBuffer sbuf = new StringBuffer();sbuf.append("--"+BOUNDARY+CRLF);sbuf.append("Content-Disposition: form-data; name=\"upfile\"; filename=\"" + uploadFile + "\""+CRLF);sbuf.append("Content-Type: text/plain"+CRLF+CRLF);char[] buf;int cnt;FileReader fi = new FileReader(uploadFile);try {buf = new char[1024000];cnt = fi.read(buf);} finally {fi.close();}sbuf.append(buf, 0, cnt);sbuf.append(CRLF);sbuf.append("--"+BOUNDARY+"--"+CRLF);int sz = sbuf.length();out.print("Content-Length: "+ sz+CRLF);out.print(CRLF);out.print(sbuf);out.flush();// Make sure there were no surprisesif (out.checkError()) {System.out.println("SSLFileTransfer: java.io.PrintWriter error");}}/*** Reads the response from the server.* @param in instream to get the data from the server* @throws Exception if an error occurs.*/private void readResponse(BufferedReader in) throws Exception {boolean successful = false;String inputLine;while ((inputLine = in.readLine()) != null) {if (inputLine.startsWith("HTTP") && inputLine.indexOf("200") >= 0) {successful = true;}System.out.println(inputLine);}System.out.println("UPLOAD FILE " + (successful? "SUCCESSFUL" : "FAILED") + "!!!\n");}/*** Upload file to the server.* @throws Exception if an error occurs.*/public void upload() throws Exception {try {SSLSocketFactory factory = getFactory();SSLSocket socket = (SSLSocket)factory.createSocket(getHost(), getPort());PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())));BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));socket.startHandshake();sendRequest(out);readResponse(in);out.close();in.close();socket.close();} catch (Exception e) {e.printStackTrace();throw e;}}/*** Main method to start file transfer* @param args command line arguments (property file, see usage())* @throws Exception if an error occurs.*/public static void main(String[] args) throws Exception {if (args == null || args.length != 1) {usage();}SSLFileTransfer fileXfer = new SSLFileTransfer();fileXfer.init(args[0]);fileXfer.upload();}}
Viewing Email Notifications
Cybersource
sends email notifications for failed or successful validation
of batch files and for successful processing of all transactions in a validated batch
file. Notifications are sent to the address provided in the
statusEmail
field of the batch file header.Batch file validation results and batched transaction processing results
are also available in downloadable results files and in downloadable reports.
Email Notification for a Failed Batch Validation
When validation of a batch file fails,
Cybersource
sends an email
that provides the ID of the batch file that failed validation, the error
message, and suggested remediation actions.Example of a batch validation failure notification sent by email:
Batch with batchID=bmrvk7js failed during validation. Number of fields does not match with number of field names in the following rows: 1, 2, 4, 5, 6, 8, 10, 11, 12, (+2 more). REMEDY: Correct the format and try again.
The email is sent to the address provided in the
statusEmail
field of
the batch file header.Batch validation results are also available in a results file. See Viewing the Results of Batch File Validation.
Email Notification for a Successful Batch Validation
When validation of a batch file succeeds,
Cybersource
sends an email
that reports the number of transaction requests submitted in the batch file.Example of a batch validation success notification sent by email:
Batch with batchID=b9pypu0v was validated successfully. Number of Data Records read: 2 Time started: 2025/08/18 09:54: AM GMT
The email is sent to the address provided in the
statusEmail
field of
the batch file header.Batch validation results are also available in a results file. See Viewing the Results of Batch File Validation.
Email Notification for Successful Transaction Processing
Upon successful processing of all transactions requested in a batch file,
Cybersource
sends an email
that provides the ID of the batch file whose transaction requests succeeded.Example of transaction processing success notification sent by email:
Batch with batchID=nwlog2h7 was processed successfully.
The email is sent to the address provided in the
statusEmail
field of the batch file header.Transaction processing results are also available in a results file and in reports.
See these sections:
Viewing the Results of Batch File Validation
After a transaction batch file is uploaded,
Cybersource
checks the validity of the file contents
and then creates a batch validation response file.
This XML-formatted file shows whether the batch file validation succeeded or failed.The name of a batch validation response file associates the file with a specific batch
file. The result files are identified by the merchant ID and the batch ID:
- The filename has this format:<merchantID>.<batchID>.validate.xml
- This is an example filename:CyberVacations.39768.validate.xml
In addition to creating batch validation response files,
Cybersource
sends an email notification when a batch validation fails or succeeds.
See Viewing Email Notifications.The topics in this section cover this information:
- How to download a batch validation response file
- The structure of a batch validation response file
- The XML elements of a batch validation response file
- Error codes in a batch validation response
- Example batch validation response files
Download a Batch Validation Response File
- Follow these steps to download a batch validation response file from theBusiness Center:
- Log in at theCybersourceBusiness Center.
ADDITIONAL INFORMATION
- Production:https://businesscenter.cybersource.com/
- Production in India:https://businesscenter.in.cybersource.com/
- On the left navigation panel, click theReportsicon.
- Under Downloadable Reports, clickAvailable Reports. The Available Reports page appears.
- Click the tab that contains the report you want to download.
- In the Download column, click the file format link. Only reports that have successfully finished generating and that contain data include links.
Batch Validation Response File DTD
This Document Type Definition (DTD) defines the structure, elements, and attributes of the
batch validation response file.
<!ELEMENT Batch (ValidationStatus, ValidatedRecords, ValidationTime, ValidationErrors)> <!ATTLIST Batch BatchID CDATA #REQUIRED MerchantID CDATA #REQUIRED Name CDATA #REQUIRED Version NMTOKEN #REQUIRED> <!ELEMENT ValidationStatus (#PCDATA)> <!ELEMENT ValidatedRecords (#PCDATA)> <!ELEMENT ValidationTime (#PCDATA)> <!ELEMENT ValidationErrors (Error)*> <!ELEMENT Error (RecordNumber, ErrorCode, ErrorMessage, ErrorRemedy)> <!ELEMENT RecordNumber (#PCDATA)> <!ELEMENT ErrorCode (#PCDATA)> <!ELEMENT ErrorMessage (#PCDATA)> <!ELEMENT ErrorRemedy (#PCDATA)>
Batch Validation Response File XML Elements
The XML elements of a batch validation response file:
- <Batch> element
- <ValidationErrors> element
- <Error> element
The Batch Element
The
<Batch>
element is the root of the response file, and it
specifies the top level of the response file syntax.<Batch BatchID=CDATA MerchantID=CDATA Name=CDATA Version=NMTOKEN> (ValidationStatus) (ValidatedRecords) (ValidationTime) (ValidationErrors) </Batch>
The <Batch> element has these attributes:
- <BatchID>—Batch file identifier that you assigned.
- Data type: Alphanumeric
- Data length: 8
- MerchantID—Your merchant ID.
- Data type: Alphanumeric
- Data length: 30
- Name—Name of the report. This value is alwaysOLP Validation Report.
- Data type: Alphanumeric
- Data length: 25
- Version—Version number of the report. The current version number is1.0.
- Data type: Numeric
- Data length: 10
Attribute Name | Attribute Value |
|---|---|
BatchID | Batch file identifier that you
assigned.
|
MerchantID | Your merchant ID.
|
Name | Name of the report. This value is
always OLP Validation Report .
|
Version | Version number of the report. The
current version number is 1.0 .
|
Element Name | Description |
|---|---|
ValidationStatus | Status of the attempted validation.
Possible values:
|
ValidatedRecords | Number of records validated. This
value is present only when the validation is successful.
|
ValidationTime | Timestamp for the validation
process. Format: yyyy-MM-ddTHH:mm:ss
|
ValidationErrors | List of the errors in the batch
file. This element is present only if the validation failed. See The ValidationErrors Element.
|
The ValidationErrors Element
The
<ValidationErrors>
element contains the errors associated with the batch file.<ValidationErrors> (Error)* </ValidationErrors>
Element Name | Element Description |
|---|---|
Error | Information about an error. See
The Error Element.
|
The Error Element
The
<Error>
element contains information about an error.<Error> (RecordNumber) (ErrorCode) (ErrorMessage) (ErrorRemedy) </Error>
Element Name | Element Description |
|---|---|
RecordNumber | Number of the record that has an error.
|
ErrorCode | Code that identifies the error. See
Error Codes.
|
ErrorMessage | Message that describes the error.
|
ErrorRemedy | Message that describes the remedy
for the error.
|
Batch Validation Error Codes
This table lists error code values, messages, and remedies that can be present in the
<Error>
element. For general information about that element type, see The Error Element.The
%s
strings in Error Message column of this table
represent dynamic values (such as batch IDs and record numbers)
that appear in actual messages in an <Error> element.Error Code | Error Message | Remedy |
|---|---|---|
101 | Missing required field in File
Header record: %s . | Include the required field in the
file and resubmit. |
102 | MerchantID ( %s ) is not in our
database. | Ensure that the merchant ID is
valid. |
103 | MerchantID ( %s ) does not match with
the ID used to log in for uploading the file. | Verify the merchant ID and
resubmit. |
104 | batchID exceeds max length of
%s . | Generate a shorter batch ID and
resubmit. |
105 | %s had already passed validation
stage. | The batch ID has been submitted. If
this is a new batch, generate a new batch ID and send the file again. |
106 | Invalid recordCount value:
%s . | Check record count to make sure it
is numeric and resubmit. |
107 | The file does not contain any data
records. | The file must contain at least one
data record. Correct and resubmit. |
108 | The recordCount exceeds the maximum
number of records allowed per batch ( %s ). | Generate a smaller batch file and
resubmit. |
109 | Invalid creationDate format:
%s . | Correct the date format and resubmit
(use yyyy-mm-dd ). |
110 | Unsupported service: %s . | The service is not supported through
batching. You may only request that service directly online. |
111 | Missing required field in Data
Header record: %s . | Include the missing required field
in the file and resubmit. |
112 | Missing required field in Data
Record: %s . | Include the required field in the
file and resubmit. |
113 | merchantID %s is not valid or has
not been configured correctly. | Contact Cybersource to confirm that
the merchant ID you are using is valid or is configured to be submitted by
another merchant ID. |
114 | SUM in Trailer record ( %s ) does not
match with actual total (%s ). | Make sure the sum in the Trailer
record matches with the actual sum of all data records. |
115 | SUM in Trailer record is invalid
( %s ). | Check to make sure the sum value is
numeric. |
116 | Missing required field in File
Trailer record: %s . | Pass in required field and
resubmit. |
117 | Duplicate file (batchID:
%s ). | Make sure that the batch ID is
unique. |
118 | Duplicate file. The data content in
this file seems to have been submitted in batchID= %s . | Make sure the content of the file
has not been previously submitted. |
119 | File Trailer record is
missing. | Correct the file format and
resubmit. |
120 | There was a problem reading the
input file. | Contact Cybersource
to verify that file %s was received and is readable. |
121 | Found Data Header record but missing
File Header record. | Correct the file format and
resubmit. |
122 | Found Data record but missing Data
Header record. | Correct the file format and
resubmit. |
123 | Number of fields does not match with the
number of field names in the following rows: <list of batch file row numbers> | Correct the file format and
resubmit. |
124 | Found trailer record but missing
File/Data Header record. | Correct the file format and
resubmit. |
201 | There was a problem inserting the
batch status in the database. | Contact Cybersource . |
202 | Problem updating: batchID: %s ,
status: %s " | Contact Cybersource . |
203 | There was a problem retrieving the
merchant configuration from the database. | Contact Cybersource . |
204 | There was a problem validating the
batchID against the database. | Contact Cybersource . |
205 | There was a database problem while
doing the checksum. | Contact Cybersource . |
301 | There was an internal error while
validating the file. | Contact Cybersource . |
Example: Successful Batch Validation
This example batch validation response file show that the batch file validation
succeeded.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Batch SYSTEM "olp_validation_report_1_0.dtd"> <Batch BatchID="11111111" MerchantID="gpntest1" Name="OLP Validation Report" Version="1.0"> <ValidationStatus>Success</ValidationStatus> <ValidatedRecords>15</ValidatedRecords> <ValidationTime>2022-07-31T14:41:12</ValidationTime> </Batch>
Example: Incorrect Record Count in the Trailer
This example batch validation response file illustrates error code 114.
The trailer record specifies a sum of 14.00, but the actual total is 15.00.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Batch SYSTEM "olp_validation_report_1_0.dtd"> <Batch BatchID="22222222" MerchantID="gpntest2" Name="OLP Validation Report" Version="1.0"> <ValidationStatus>Failed</ValidationStatus> <ValidationTime>2022-07-31T14:40:36</ValidationTime> <ValidationErrors> <Error> <RecordNumber>0</RecordNumber> <ErrorCode>114</ErrorCode> <ErrorMessage>SUM in Trailer record (14.00) does not match with the actual total (15.00).</ErrorMessage> <ErrorRemedy>Make sure the SUM in the Trailer record matches with the actual sum of all data records.</ErrorRemedy> </Error> </ValidationErrors> </Batch>
Example: Field Count in Some Data Records Does Not Match the Header
This example batch validation response file illustrates error code 123.
In this case,
three of the data records do not contain the number of fields specified in the header.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Batch SYSTEM "olp_validation_report_1_0.dtd"> <Batch BatchID="33333333" MerchantID="gpntest3" Name="OLP Validation Report" Version="1.0"> <ValidationStatus>Failed</ValidationStatus> <ValidationTime>2022-07-31T14:40:14</ValidationTime> <ValidationErrors> <Error> <RecordNumber>2</RecordNumber> <ErrorCode>123</ErrorCode> <ErrorMessage>Number of fields does not match with number of field names in the following rows: 2, 3, 5.</ErrorMessage> <ErrorRemedy>Correct the file format and resubmit.</ErrorRemedy> </Error> </ValidationErrors> </Batch>
Example: Field Count in More Than 10 Data Records Does Not Match the Header
This example batch validation response file also illustrates error code 123.
In this case,
more than 10 data records do not contain the number of fields specified in the header.
Only the first 10 mismatched rows are listed.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Batch SYSTEM "olp_validation_report_1_0.dtd"> <Batch BatchID="44444444" MerchantID="gpntest4" Name="OLP Validation Report" Version="1.0"> <ValidationStatus>Failed</ValidationStatus> <ValidationTime>2022-07-31T14:40:14</ValidationTime> <ValidationErrors> <Error> <RecordNumber>3</RecordNumber> <ErrorCode>123</ErrorCode> <ErrorMessage>Number of fields does not match with number of field names in the following rows: 1, 2, 4, 5, 6, 8, 10, 11, 12, 13 (+2 more).</ErrorMessage> <ErrorRemedy>Correct the file format and resubmit.</ErrorRemedy> </Error> </ValidationErrors> </Batch>
Viewing the Results of Transaction Processing
After a transaction batch file is validated successfully,
Cybersource
processes the transactions specified in the batch file and
then creates transaction response files
.
These CSV-formatted files show the processing results for the batched transaction requests.One response file lists processing results for all transactions,
whether accepted, rejected, or in error.
The other response file lists results only for transactions
that were rejected or that triggered a processing error.
- Full list of transaction responses
- This file lists results only for transactions that were rejected or that triggered a processing error.
- File name format:<merchantID>.<batchID>.reply.all
- File name example:CyberVacations.12345.reply.all
- List of exceptions
- This file lists results only for transactions that were rejected or that triggered a processing error.
- File name format:<merchantID>.<batchID>.reply.rejected
- File name example:CyberVacations.12345.reply.rejected
When all transactions requested in a batch file succeed, an email notification is sent.
When processing of batched transaction requests succeeds, an email notification is sent. See Email Notification for Successful Transaction Processing.Batch with batchID=55555 was validated successfully.
The topics in this section cover this information:
- How to download a transaction response file
- The header of a transaction response file
- The data records in a transaction response file
- An example transaction response file
Download a Transaction Response File
- Follow these steps to download a transaction response file from theBusiness Center:
- Log in at theCybersourceBusiness Center.
ADDITIONAL INFORMATION
- Production:https://businesscenter.cybersource.com/
- Production in India:https://businesscenter.in.cybersource.com/
- On the left navigation panel, click theReportsicon.
- Under Downloadable Reports, clickAvailable Reports. The Available Reports page appears.
- Click the tab that contains the report you want to download.
- In the Download column, click the file format link. Only reports that have successfully finished generating and that contain data include links.
File Header
The file header consists of a list of comma-separated name-value pairs, including:
- merchantID
- batchID
This example shows the header portion of the transaction response
file:
merchantID=infodev,batchID=12345
Data Records
The data records in the response file provide the API response information for the requests in the batch file.
Each data record consists of a comma-separated list of name-value pairs containing the API response information
for a single request.
The order of the data records in the response file
might not correspond to the order of the requests in your file.
Within each data record, the first field is
merchantReferenceCode
and the remaining records in the record are in alphabetical order.
Use the value of the merchantReferenceCode
field to link the result in the response file
to the corresponding request from the batch file.Example Transaction Response File
This example shows a full file, including two successful requests and one failed request. The failed request is the second data record in the example.
merchantID=infodev,batchID=12345 merchantReferenceCode=ABC12320398,ccCaptureReply_amount=327.49, ccCaptureReply_reasonCode=100,ccCaptureReply_reconciliationID= 1018546244150167904178,ccCaptureReply_requestDateTime=2007-06-13T22:43:53Z, decision=ACCEPT,purchaseTotals_currency=EUR,reasonCode=100,requestID=1018546244150167904178 merchantReferenceCode=ABC141854,ccCaptureReply_reasonCode=241, decision=REJECT,reasonCode=241,requestID=1018546227570167904150 merchantReferenceCode=ABC39882097,ccCreditReply_amount=14.99, ccCreditReply_reasonCode=100,ccCreditReply_reconciliationID= 1018546230720167904150,ccCreditReply_requestDateTime=2005-09-23T22:44:33Z, decision=ACCEPT,purchaseTotals_currency=CAD,reasonCode=100, requestID=1018546230720167904150
Viewing the Transaction Request Report
The Transaction Request Report with the Batch Upload connection filter shows details of
the transactions that were batched using the upload process.
If you request a report too soon after you upload a batch file,
you might receive an error because the batch has not finished processing.
The topics in this section cover this information:
- How to download a Transaction Request Report
- The structure of a Transaction Request Report
- The XML elements of a Transaction Request Report
- An example XML-formatted Transaction Request Report
- The fields in a CSV-formatted Transaction Request Report
- An example CSV-formatted Transaction Request Report
Download a Transaction Request Report
- Follow these steps to download a transaction request report from theBusiness Center:
- Log in at theCybersourceBusiness Center.
ADDITIONAL INFORMATION
- Production:https://businesscenter.cybersource.com/
- Production in India:https://businesscenter.in.cybersource.com/
- On the left navigation panel, click theReportsicon.
- Under Downloadable Reports, clickAvailable Reports. The Available Reports page appears.
- Click theStandard Reportstab.
- Above the Type column of the Search Results area, enterbatchand press Enter.
- To find the report you want to download, filter the search results by report name or date.
- In the Download column, click the file format link. Only reports that have successfully finished generating and that contain data include links.
Transaction Request Report DTD
This Document Type Definition (DTD) defines
the structure, elements, and attributes of the Transaction Request Report.
<!ELEMENT Report (BatchFiles)> <!ATTLIST Report Name CDATA #REQUIRED Version NMTOKEN #REQUIRED xmlns CDATA #REQUIRED MerchantID CDATA #REQUIRED ReportStartDate CDATA #REQUIRED ReportEndDate CDATA #REQUIRED> <!ELEMENT BatchFiles (BatchFile)*> <!ELEMENT BatchFile (PaymentProcessor)*> <!ATTLIST BatchFile BatchFileID CDATA #REQUIRED> <!ELEMENT PaymentProcessor (Request)*> <!ATTLIST PaymentProcessor PaymentProcessorName CDATA #REQUIRED> <!ELEMENT Request (TransactionReferenceNumber, MerchantReferenceNumber, TransactionStatus, Amount, CurrencyCode, PaymentStatus)> <!ATTLIST Request RequestID CDATA #REQUIRED> <!ELEMENT TransactionReferenceNumber (#PCDATA)> <!ELEMENT MerchantReferenceNumber (#PCDATA)> <!ELEMENT TransactionStatus (#PCDATA)> <!ELEMENT Amount (#PCDATA)> <!ELEMENT CurrencyCode (#PCDATA)> <!ELEMENT PaymentStatus (#PCDATA)>
Transaction Request Report XML Elements
The topics in this section describe the XML elements of a Transaction Request Report:
- The <Report> element
- The <BatchFiles> element
- The <BatchFile> element
- The <PaymentProcessor> element
- The <Request> element
The Report Element
The
<Reports>
element is the root element of the report,
and it specifies the top level of the report syntax.<Report Name=CDATA Version=NMTOKEN xmlns=CDATA MerchantID=CDATA ReportStartDate=CDATA ReportEndDate=CDATA> (BatchFiles) </Report>
This table describes the attributes of the
<Report>
element.Attribute Name | Description |
|---|---|
Name | Name of the report.
This element always contains the text
Batch Files Detail Report .
|
Version | Version number of the report.
The current version number is 1.0 .
|
xmlns | XML namespace for the report. The namespace for the current version is
http://reports.cybersource.com/reports
/bfdr/1.0 .For transactions in India,
http://reports.in.cybersource.com/reports/bfdr/1.0 .
|
MerchantID | Cybersource merchant ID
used for the transactions in the report.
|
ReportStartDate | First date included in the report.
|
ReportEndDate | Last date included in the report.
|
This table describes the child elements of the
<Report>
element.Element Name | Description |
|---|---|
<BatchFiles> | Batch files that are included in the report.
See The BatchFile Element for a list of
child elements. |
This
<Report>
element includes example attribute values. For
information about the <BatchFiles> element, see The BatchFiles Element.<Report Name="Batch Files Detail Report" Version="1.0" xmlns="http://reports.cybersource.com/reports/bfdr/1.0" MerchantID="pcpawnshop" ReportStartDate="2006-09-29T05:00:00-05:00" ReportEndDate="2006-09-30T05:00:00-05:00"> <BatchFiles> ... </BatchFiles> </Report>
The BatchFiles Element
The
<BatchFiles>
element
contains all of the batch files that are included in the report.<BatchFiles> (BatchFile)* </BatchFiles>
This table describes the child elements of the
<BatchFiles>
element.Element Name | Description |
|---|---|
<BatchFile> | Payment processors for the transactions in the batch file.
For a list of attributes and child elements,
see The BatchFile Element. |
This
<BatchFiles>
element includes an example <BatchFile> element.
For information about the <BatchFile> element,
see The BatchFile Element.<BatchFiles> <BatchFile BatchFileID="123"> ... </BatchFile> </BatchFiles>
The BatchFile Element
The
<BatchFile>
element contains the payment processors for the
transactions in the batch file.<BatchFile BatchFileID=CDATA> (PaymentProcessor)* </BatchFile>
This table describes the attributes of the
<BatchFile>
element.Attribute Name | Description |
|---|---|
BatchFileID | Cybersource batch file
in which the transactions were sent.
|
This table describes the child elements of the
<BatchFile>
element.Element Name | Description |
|---|---|
<PaymentProcessor> | Requests associated with the payment processor.
For a list of attributes and child elements,
see The PaymentProcessor Element. |
This example
<BatchFile>
element includes an example
<PaymentProcessor> element. For information about the <PaymentProcessor>
element, see The PaymentProcessor Element.<BatchFile BatchFileID="10101"> <PaymentProcessor PaymentProcessorName="vital”> ... </PaymentProcessor> </BatchFile>
The PaymentProcessor Element
The
<PaymentProcessor>
element contains the requests associated with a
payment processor.<PaymentProcessor PaymentProcessorName=CDATA> (Request)* </PaymentProcessor>
This table describes the attributes of the
<PaymentProcessor>
element.Attribute Name | Description |
|---|---|
PaymentProcessorName | Name of a payment processor.
|
This table describes the child elements of the
<PaymentProcessor>
element.Element Name | Description |
|---|---|
<Request> | Information about a payment transaction.
For a list of attributes, see The Request Element. |
This example
<PaymentProcessor>
element<PaymentProcessor PaymentProcessorName="vital"> <Request> ... </Request> </PaymentProcessor>
The Request Element
The
<Request>
element contains information about a payment transaction.<Request RequestID=CDATA> (TransactionReferenceNumber) (MerchantReferenceNumber) (TransactionStatus) (Amount) (CurrencyCode) (PaymentStatus) </Request>
This table describes the attributes of the
<Request>
element.Attribute Name | Description |
|---|---|
RequestID | Unique identifier generated by Cybersource for
the transaction.
|
This table describes the child elements of the
<Request>
element.Element Name | Description |
|---|---|
TransactionReferenceNumber | Reference number that you use to
reconcile your Cybersource reports with your processor reports.
This field corresponds to the
<service> _reconciliationID (Simple Order API) and to the
<service>_ trans_ref_no (SCMP API) response fields.
|
MerchantReferenceNumber | Merchant-generated order reference
or tracking number.
|
TransactionStatus | One-word description of the result
of the transaction request.
|
Amount | Amount of the transaction. |
CurrencyCode | ISO currency code used for the
transaction. See ISO Standard Country Codes.
|
PaymentStatus | One-word description of the current
status of the transaction. Possible values:
|
This
<Request>
element includes a single example transaction in
the PENDING
state.<Request RequestID="1580782287420174065733"> <TransactionReferenceNumber>5533830406</TransactionReferenceNumber> <MerchantReferenceNumber>1158078228539</MerchantReferenceNumber> <TransactionStatus>SOK</TransactionStatus> <Amount>25.00</Amount> <CurrencyCode>USD</CurrencyCode> <PaymentStatus>PENDING</PaymentStatus> </Request>
Example XML-Formatted Transaction Request Report
This example shows Transaction Request Reports for two batch files.
The first report covers three requests for
TSYS Acquiring Solutions
(raw processor name vital
), and
the second report covers one request for FDMS Nashville
(raw processor name smartfdc
).<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE Report SYSTEM "https://businesscentertest.cybersource.com/ebctest/reports/dtd/bfdr.dtd"> <Report Name="Batch Files Detail Report" Version="1.0" xmlns="https://businesscentertest.cybersource.com/ebctest/reports/dtd/bfdr.dtd" MerchantID="pcpawnshop" ReportStartDate="2006-09-29T05:00:00-05:00" ReportEndDate="2006-09-30T05:00:00-05:00"> <BatchFiles> <BatchFile BatchFileID="127788"> <PaymentProcessor PaymentProcessorName="vital"> <Request RequestID="1595558344253232243215"> <TransactionReferenceNumber>7242635150</TransactionReferenceNumber> <MerchantReferenceNumber>1158078228539</MerchantReferenceNumber> <TransactionStatus>SOK</TransactionStatus> <Amount>25.00</Amount> <CurrencyCode>USD</CurrencyCode> <PaymentStatus>PENDING</PaymentStatus> </Request> <Request RequestID="1595558354743232243215"> <TransactionReferenceNumber>7242636613</TransactionReferenceNumber> <MerchantReferenceNumber>1158078892610</MerchantReferenceNumber> <TransactionStatus>SOK</TransactionStatus> <Amount>100.00</Amount> <CurrencyCode>USD</CurrencyCode> <PaymentStatus>PENDING</PaymentStatus> </Request> <Request RequestID="1595558364563232243215"> <TransactionReferenceNumber>7242637653</TransactionReferenceNumber> <MerchantReferenceNumber>1158079157035</MerchantReferenceNumber> <TransactionStatus>SOK</TransactionStatus> <Amount>99.00</Amount> <CurrencyCode>USD</CurrencyCode> <PaymentStatus>VOIDED</PaymentStatus> </Request> </PaymentProcessor> </BatchFile> <BatchFile BatchFileID="123987"> <PaymentProcessor PaymentProcessorName="smartfdc"> <Request RequestID="1595564779663232243215"> <TransactionReferenceNumber>7243278653</TransactionReferenceNumber> <MerchantReferenceNumber>1159429157035</MerchantReferenceNumber> <TransactionStatus>SOK</TransactionStatus> <Amount>4.00</Amount> <CurrencyCode>USD</CurrencyCode> <PaymentStatus>PENDING</PaymentStatus> </Request> </PaymentProcessor> </BatchFile> </BatchFiles> </Report>
Transaction Request Report CSV Records
The topics in this section describe the CSV records
of a Transaction Request Report:
- <First header> record
- <Second Header> record
- <Transaction> record
First Header Record
The first header record describes the name and version of the report
and indicates which dates are included in the report.
This table describes the fields in the first header record.
Position | Field Name | Description |
|---|---|---|
1 (A) | report_name | Name of the report. This field
always contains the text Batch Files Detail
Report .
|
2 (B) | version_number | Version number of the report. The
current version number is 1 .
|
3 (C) | date_range | Dates included in the report in
the format YYYY-MM-DD to YYYY-MM-DD. The first date is the start date; the
second date is the end date.
|
In this example, the first header record specifies the date range for version 1 of the
report:
Batch Files Detail Report,1,2022-09-29 to 2022-09-30,,,,,,,
Second Header Record
The second header record indicates the name of each field in the report. The fields in the
second header record follow these rules:
- The content of each field is the same as the field name.
- The data type and length of each field is alphanumeric (100).
merchant_id,txn_batch_id,payment_processor,request_id,trans_ ref_no,merchant_ref_number,ics_rflag,amount,currency,action
Transaction Record
Each transaction record contains information about a
Cybersource
payment transaction.Transaction Record
pcpawnshop,127788,vital,9979040000003515181891, 7242635150,1158078228539,SOK,25.00,USD,PENDING
pcpawnshop,127788,vital,9979040000003515181891, 7242635150,1158078228539,SOK,25.00,AUD,PENDING
Position | Field Name | Description |
|---|---|---|
1 | merchant_id | Cybersource
merchant ID used for the transaction.
|
2 | txn_batch_id | Cybersource batch
file in which the transactions were sent.
|
3 | payment_processor | Name of a payment processor.
|
4 | request_id | Identifier for the transaction.
|
5 | trans_ref_no | Reference number that you use to
reconcile your Cybersource reports with your processor reports.
This field corresponds to the <service> _reconciliationID
(Simple Order API)
and to the < service >_trans_ref_no
(SCMP API) response fields.
|
6 | merchant_ref_number | Merchant-generated order reference or tracking number.
|
7 | ics_rflag | One-word description of the
result of the transaction request.
|
8 | amount | Amount of the transaction.
|
9 | currency | ISO currency code used for the
transaction. See ISO Standard Country Codes.
|
10 | action | One-word description of the
current status of the transaction. Possible values:
|
Example CSV-Formatted Transaction Request Report
This example shows a report that contains two batch files. The first batch file contains three requests, and the second batch file contains one request.
Batch Files Detail Report,1,2006-09-29 to 2006-09-30,,,,,,, merchant_id,txn_batch_id,payment_processor,request_id,trans_ref_no, merchant_ref_number,ics_rflag,amount,currency,action pcpawnshop,127788,vital,1598344253232243215,7242635150, 1158078228539,SOK,25.00,USD,PENDING pcpawnshop,127788,vital,1598354743232243226,7242636613, 1158078892610,SOK,100.00,USD,PENDING pcpawnshop,127788,vital,1598364563232243237,7242637653, 1158079157035,SOK,99.00,USD,VOIDED pcpawnshop,123987,smartfdc,1594779663232243248,7243278653, 1159429157035,SOK,4.00,USD,PENDING
Viewing the Batch Submission Detail Report
The Batch Submission Detail Report returns a real-time response
with details about the transactions that you submitted by uploading a batch file.
If you request a report too soon after you upload a batch file,
you might receive an error because the batch has not finished processing.
The topics in this section cover this information:
- How to download a Batch Submission Detail Report
- The structure of a Batch Submission Detail Report
- An example XML-formatted Submission Detail Report
- An example CSV-formatted Submission Detail Report
Download a Batch Submission Detail Report
- Follow these steps to download a batch submission detail report from theBusiness Center:
- Log in at theCybersourceBusiness Center.
ADDITIONAL INFORMATION
- Production:https://businesscenter.cybersource.com/
- Production in India:https://businesscenter.in.cybersource.com/
- On the left navigation panel, click theReportsicon.
- Under Downloadable Reports, clickAvailable Reports. The Available Reports page appears.
- Click theAvailable Reportstab.
- Above the Type column of the Search Results area, enterbatchand press Enter.
- To find the report you want to download, filter the search results by report name or date.
- In the Download column, click the file format link. Only reports that have successfully finished generating and that contain data include links.
Batch Submission Detail Report DTD
This Document Type Definition (DTD) defines
the structure, elements, and attributes of the Batch Submission Detail Report.
<!ELEMENT Report (Transaction)*> <!ATTLIST Report MerchantID CDATA #REQUIRED Name CDATA #REQUIRED SubmissionFileID CDATA #REQUIRED SubmissionDateTime CDATA #REQUIRED Version NMTOKEN #REQUIRED> <!ELEMENT Transaction (LinkToRequest?, RequestID, TransactionDate, CybsMID, ProcessorMID?, HierarchyID?, TransRefNumber?, MerchantRefNumber?, TransactionType?, Amount?, TransactionAmountCurrency?, PaymentMethod?, PaymentType?, AccountSuffix?, Decision?, ReasonCode?, Auth?, MerchantDefinedData1?, MerchantDefinedData2?, MerchantDefinedData3?, MerchantDefinedData4?)> <!ELEMENT LinkToRequest (#PCDATA)> <!ELEMENT RequestID (#PCDATA)> <!ELEMENT TransactionDate (#PCDATA)> <!ELEMENT CybsMID (#PCDATA)> <!ELEMENT ProcessorMID (#PCDATA)> <!ELEMENT HierarchyID (#PCDATA)> <!ELEMENT TransRefNumber (#PCDATA)> <!ELEMENT MerchantRefNumber (#PCDATA)> <!ELEMENT TransactionType (#PCDATA)> <!ELEMENT Amount (#PCDATA)> <!ELEMENT TransactionAmountCurrency (#PCDATA)> <!ELEMENT PaymentMethod (#PCDATA)> <!ELEMENT PaymentType (#PCDATA)> <!ELEMENT AccountSuffix (#PCDATA)> <!ELEMENT Decision (#PCDATA)> <!ELEMENT ReasonCode (#PCDATA)> <!ELEMENT Auth (TransRefNumber?, TransactionDate?, RequestID?, Amount?, Currency?, AuthCode?, ReasonCode?, RCode?)> <!ELEMENT TransRefNumber (#PCDATA)> <!ELEMENT TransactionDate (#PCDATA)> <!ELEMENT RequestID (#PCDATA)> <!ELEMENT Amount (#PCDATA)> <!ELEMENT Currency (#PCDATA)> <!ELEMENT AuthCode (#PCDATA)> <!ELEMENT ReasonCode (#PCDATA)> <!ELEMENT RCode (#PCDATA)> <!ELEMENT MerchantDefinedData1 (#PCDATA)> <!ELEMENT MerchantDefinedData2 (#PCDATA)> <!ELEMENT MerchantDefinedData3 (#PCDATA)> <!ELEMENT MerchantDefinedData4 (#PCDATA)>
Example XML-Formatted Batch Submission Detail Report
This example shows an XML-formatted Batch Submission Detail report
for a batch file that specifies a single authorization request.
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE Report SYSTEM "https://businesscentertest.cybersource.com/ebctest/reports/dtd/bsd.dtd"> <Report Name="Batch Submission Detail Report" Version="1.0" xmlns="https://businesscentertest.cybersource.com/ebctest/reports/dtd/bsd.dtd" Name="Batch Submission Detail Report" SubmissionFileID="12345678" SubmissionDateTime="2022-03-18 15:15:40 GMT" Version="1.0"> <Transaction> <LinkToRequest>2689254011060008415089</LinkToRequest> <RequestID>2689254011060008415089</RequestID> <TransactionDate>2022-03-18 15:16:41 GMT</TransactionDate> <CybsMID>examplemerchantid</CybsMID> <TransRefNumber>81389795F6RU7QH0</TransRefNumber> <MerchantRefNumber>12345-8569-8794654</MerchantRefNumber> <TransactionType>ics_bill,ics_auth</TransactionType> <Amount>1.00</Amount> <TransactionAmountCurrency>USD</TransactionAmountCurrency> <PaymentMethod>credit card</PaymentMethod> <PaymentType>MasterCard</PaymentType> <AccountSuffix>1234</AccountSuffix> <ReasonCode>231</ReasonCode> <Auth> <RequestID>2689254011060008415089</RequestID> </Auth> </Transaction> </Report>
Example CSV-Formatted Batch Submission Detail Report
This example shows a CSV-formatted Batch Submission Detail report for a batch file that
specifies a single authorization request.
This example shows a report in CSV format that contains one batch file consisting of four
authorization requests.
Submission Date/Time,Submission File ID,link_to_request,request_id,transaction_ date,cybs_mid,processor_mid,hierarchy_id,trans_ref_number,merchant_ref_number, transaction_type,amount,transaction,amount_currency,payment_method, payment_type,account_suffix,decision,reason_code,reserved,auth_trans_ref_number, auth_date,auth_request_id,auth_amount,auth_currency,auth_code,auth_reason_code, auth_rcode,merchant_defined_data1,merchant_defined_data2,merchant_defined_data3, merchant_defined_data4 2020-02-06 23:50:41 GMT,10100019,9.99E+21, 5.81E+21,2020-02-06 23:50:56 GMT,example_renewal, exampleCYBS,CS000000196682612120020707470300001,"ics_ bill,ics_auth",684.18, SGD,credit card,Visa,1625,100,2CYBS,2020-02-06 23:50:56 GMT,9.99E+21,684.18, SGD,34521,1 2020-02-06 23:50:41 GMT,10100019,9.99E+21,5.81E+21,2020-02-06 23:50:56 GMT,example_renewal,exampleCYBS,CS000000197045901520020707470300005, "ics_bill,ics_auth",111.37,SGD,credit card,Visa,5246,100,2CYBS,2020-02-06 23:50:56 GMT,9.99E+21,111.37,SGD,698141,1 2020-02-06 23:50:41 GMT,10100019,9.99E+21, 5.81E+21,2020-02-06 23:50:56 GMT,example_renewal, exampleCYBS,CS000000197194803220020707470300006, "ics_auth,ics_bill",140.02,SGD,credit card,Visa,7315,100,2CYBS,2020-02-06 23:50:56 GMT,9.99E+21,140.02,SGD,42372,1 2020-02-06 23:50:41 GMT,10100019,9.99E+21,5.81E+21,2020-02-06 23:50:56 GMT,example_renewal,exampleCYBS,CS000000194267014620020707470300007, "ics_bill,ics_auth",74.13SGD,credit card,MasterCard,782,100,2CYBS,2020-02-06 23:50:56 GMT,9.99E+21,74.13,SGD,T87562,1
Reference: Simple Order and SCMP API Field Mapping
The Offline Transaction File Submission system
ingests batched payment requests composed of fields from the
Cybersource
Simple Order API.
If you normally use the SCMP API to request individual transactions,
you need to know which Simple Order API fields
correspond to the SCMP API fields with which you are familiar.- To request services in the SCMP API, you would set theics_applicationsfield to a comma-separated list of the services you want to run. For example, to request a credit card sale using the SCMP API:ics_applications=ics_auth,ics_bill
- To request services in the Simple Order API, you instead set each service totrue. To request a credit card sale using the Simple Order API:ccAuthService_run=true ccCaptureService_run=true
The tables in this section contain an alphabetical lists
of SCMP API field names and corresponding Simple Order API field names:
- Request-level fields
- Core response fields
- Offer-level fields
- Response fields
Request-Level Fields
Note that the core response fields for the SCMP API and the Simple Order API are different.
For details, see Core Response Fields.
SCMP API | Simple Order API |
|---|---|
account_encoder_id | check_accountEncoderID (for
ACH services) card_accountEncoderID (for credit cards) |
action_code | riskUpdateService_actionCode |
address1 | riskUpdateService_negativeAddress_street1 |
address2 | riskUpdateService_negativeAddress_street2 |
airline_agent_code | airlineData_agentCode |
airline_agent_name | airlineData_agentName |
airline_booking_reference | airlineData_bookingReference |
airline_carrier_name | airlineData_carrierName |
airline_charge_details | airlineData_chargeDetails |
airline_check_digit | airlineData_checkDigit |
airline_customer_code | airlineData_customerCode |
airline_document_number | airlineData_documentNumber |
airline_document_number_of_parts | airlineData_documentNumberOfParts |
airline_document_type | airlineData_documentType |
airline_extended_payment_code | airlineData_extendedPaymentCode |
airline_invoice_number | airlineData_invoiceNumber |
airline_leg#_carrier_code | airlineData_leg_#_carrierCode |
airline_leg#_class | airlineData_leg_#_class |
airline_leg#_depart_tax | airlineData_leg_#_departTax |
airline_leg#_destination | airlineData_leg_#_destination |
airline_leg#_fare_basis | airlineData_leg_#_fareBasis |
airline_leg#_flight_number | airlineData_leg_#_flightNumber |
airline_leg#_leg_departure_date | airlineData_leg_#_departureDate |
airline_leg#_originating_airport_code | airlineData_leg_#_originatingAirportCode |
airline_leg#_stopover_code | airlineData_leg_#_stopoverCode |
airline_passenger_name | airlineData_passengerName |
airline_restricted_ticket_indicator | airlineData_restrictedTicketIndicator |
airline_ticket_issuer_city | airlineData_ticketIssuerCity |
airline_ticket_issuer_code | airlineData_ticketIssuerCode |
airline_ticket_issuer_country | airlineData_ticketIssuerCountry |
airline_ticket_issuer_name | airlineData_ticketIssuerName |
airline_ticket_issuer_postal_code | airlineData_ticketIssuerPostalCode |
airline_ticket_issuer_state | airlineData_ticketIssuerState |
airline_ticket_number | airlineData_ticketNumber |
airline_transaction_type | airlineData_transactionType |
alternate_tax_amount | otherTax_alternateTaxAmount |
alternate_tax_amount_indicator | otherTax_alternateTaxIndicator |
alternate_tax_id | otherTax_alternateTaxID |
amexdata_taa1 | invoiceHeader_amexDataTAA1 |
amexdata_taa2 | invoiceHeader_amexDataTAA2 |
amexdata_taa3 | invoiceHeader_amexDataTAA3 |
amexdata_taa4 | invoiceHeader_amexDataTAA4 |
auth_code | ccAuthService_verbalAuthCode (for
credit card authorization) ccCaptureService_verbalAuthCode (for credit card
capture) |
auth_request_id | ccCaptureService_authRequestID (for
credit card capture) ccAuthReversalService_authRequestID (for credit card
full authorization reversal) |
auth_trans_ref_no | ccAuthService_reconciliationID |
auth_type | ccAuthService_authType (for credit
card authorization) ccCaptureService_authType (for credit card
capture) |
authorization_id | directDebitService_authorizationID |
avs | afsService_avsCode |
avs_level | ccAuthService_avsLevel |
bank_account_name | fundTransfer_accountName |
bank_account_number | fundTransfer_accountNumber |
bank_address | bankInfo_address |
bank_city | bankInfo_city |
bank_code | bankInfo_bankCode |
bank_country | bankInfo_country |
bank_name | bankInfo_name |
bank_sortcode | bankInfo_sortCode |
bank_swiftcode | bankInfo_swiftCode |
bank_transfer_request_id | bankTransferRefundService_bankTransferRequestID |
bank_transfer_trans_ref_no | bankTransferRefundService_reconciliationID |
batch_id | batch_batchID |
batch_record_id | batch_recordID |
bill_address1 | billTo_street1 |
bill_address2 | billTo_street2 |
bill_address3 | billTo_street3 |
bill_address4 | billTo_street4 |
bill_city | billTo_city |
bill_company_tax_id | billTo_companyTaxID |
bill_country | billTo_country |
bill_county | billTo_county |
bill_payment | ccAuthService_billPayment (for
credit card authorization) ccCreditService_billPayment (for credit card
credit) |
bill_request_id | ccCreditService_captureRequestID |
bill_state | billTo_state |
bill_trans_ref_no | ccCaptureService_reconciliationID |
bill_zip | billTo_postalCode |
bml_customer_billing_address_change | bml_customerBillingAddressChange |
bml_customer_email_change | bml_customerEmailChange |
bml_customer_has_checking_account | bml_customerHasCheckingAccount |
bml_customer_has_savings_account | bml_customerHasSavingsAccount |
bml_customer_password_change | bml_customerPasswordChange |
bml_customer_phone_change | bml_customerPhoneChange |
bml_customer_registration_date | bml_customerRegistrationDate |
bml_customer_type_flag | bml_customerTypeFlag |
bml_gross_household_income | bml_grossHouseholdIncome |
bml_household_income_currency | bml_householdIncomeCurrency |
bml_item_category | bml_itemCategory |
bml_merchant_promotion_code | bml_merchantPromotionCode |
bml_preapprovalNumber | bml_preapprovalNumber |
bml_product_delivery_type_indicator | bml_productDeliveryTypeIndicator |
bml_residence_status | bml_residenceStatus |
bml_tc_version | bml_tcVersion |
bml_years_at_current_residence | bml_yearsAtCurrentResidence |
bml_years_with_current_employer | bml_yearsWithCurrentEmployer |
branch_check_digit | fundTransfer_bankCheckDigit |
branch_code | bankInfo_branchCode |
button_type | payPalButtonCreateService_buttonType |
buyer_registration | taxService_buyerRegistration |
card_present | pos_cardPresent |
card_type | card_cardType |
cat_level | pos_catLevel |
cavv | ccAuthService_cavv |
cc_bin | card_bin |
city | riskUpdateService_negativeAddress_city |
client_lib_version | The contents of the SCMP API field
are split into these Simple Order API fields:
|
comments | comments |
company_name | billTo_company |
cost_center | invoiceHeader_costCenter |
country | riskUpdateService_negativeAddress_country |
credit_trans_ref_no | ccCreditService_reconciliationID |
currency | purchaseTotals_currency |
customer_account_id | billTo_customerID |
customer_cc_cv_indicator | card_cvIndicator |
customer_cc_cv_number | card_cvNumber |
customer_cc_expmo | card_expirationMonth |
customer_cc_expyr | card_expirationYear |
customer_cc_issue_number | card_issueNumber |
customer_cc_number | card_accountNumber |
customer_cc_startmo | card_startMonth |
customer_cc_startyr | card_startYear |
customer_cookies_accepted | billTo_httpBrowserCookiesAccepted |
customer_email | billTo_email |
customer_firstname | billTo_firstName |
customer_gift_wrap | invoiceHeader_isGift |
customer_hostname | billTo_hostname |
customer_ipaddress | billTo_ipAddress |
customer_ipaddress_class3 | billTo_ipNetworkAddress |
customer_lastname | billTo_lastName |
customer_phone | billTo_phoneNumber |
customer_phone_type | bml_billToPhoneType |
customer_pin | card_pin |
customer_ssn | billTo_ssn |
cv_result | afsService_cvCode |
date_collect | directDebitService_dateCollect |
date_of_birth | billTo_dateOfBirth |
debit_trans_ref_no | pinlessDebitService_reconciliationID |
decision_manager_enabled | decisionManager_enabled |
decision_manager_profile | decisionManager_profile |
decline_avs_flags | businessRules_declineAVSFlags |
direct_debit_request_id | directDebitRefundService_directDebitRequestID |
direct_debit_text | directDebitService_directDebitText |
direct_debit_trans_ref_no | directDebitRefundService_reconciliationID |
direct_debit_type | directDebitService_directDebitType |
direct_debit_validate_text | directDebitValidateService_directDebitValidateText |
disable_avs | afsService_disableAVSScoring |
domain | billTo_domainName |
driver_license_no | billTo_driversLicenseNumber |
driver_license_state | billTo_driversLicenseState |
duty_amount | purchaseTotals_dutyAmount |
e_commerce_indicator | ccAuthService_commerceIndicator (for
credit card authorization) ccCreditService_commerceIndicator (for credit card
credit) pinlessDebitService_commerceIndicator
(for PIN-less debit cards) |
eci_raw | ccAuthService_eciRaw |
ecp_account_no | check_accountNumber |
ecp_account_type | check_accountType |
ecp_check_no | check_checkNumber |
ecp_debit_request_id | ecCreditService_debitRequestID |
ecp_payment_key | ecDebitService_transactionToken (for ACH service
debit) ecCreditService_transactionToken (for ACH service
credit) |
ecp_payment_mode | ecDebitService_paymentMode |
ecp_rdfi | check_bankTransitNumber |
ecp_ref_no | ecDebitService_referenceNumber (for ACH service
debit) ecCreditService_referenceNumber (for ACH service
credit) |
ecp_settlement_method | ecDebitService_settlementMethod (for ACH service
debit) ecCreditService_settlementMethod (for ACH service
credit) |
ecp_verification_level | ecDebitService_verificationLevel |
employer_address1 | bml_employerStreet1 |
employer_address2 | bml_employerStreet2 |
employer_city | bml_employerCity |
employer_company_name | bml_employerCompanyName |
employer_country | bml_employerCountry |
employer_phone | bml_employerPhoneNumber |
employer_phone_type | bml_employerPhoneType |
employer_state | bml_employerState |
employer_zip | bml_employerPostalCode |
export_address_operator | exportService_addressOperator |
export_address_weight | exportService_addressWeight |
export_company_weight | exportService_companyWeight |
export_name_weight | exportService_nameWeight |
freight_amount | purchaseTotals_freightAmount |
fxrates_funding_currency | fundingTotals_currency |
fxrates_quote_id | ccAuthService_fxQuoteID |
gecc_line1…7 | gecc_line_0…6 |
gecc_plan_number | gecc_planNumber |
gecc_promotion_end_date | gecc_promotionEndDate |
gecc_promotion_plan | gecc_promotionPlan |
gecc_sale_type | gecc_saleType |
gecc_sequence_number | gecc_sequenceNumber |
grand_total_amount | purchaseTotals_grandTotalAmount |
http_browser_email | billTo_httpBrowserEmail |
http_browser_type | billTo_httpBrowserType |
ics_applications | <serviceName>_run |
ignore_avs | businessRules_ignoreAVSResult |
ignore_bad_cv | businessRules_ignoreCVResult |
ignore_dav_result | businessRules_ignoreDAVResult |
ignore_export_result | businessRules_ignoreExportResult |
ignore_validate_result | businessRules_ignoreValidateResult |
industry_datatype | ccCaptureService_industryDatatype (for credit card
capture) ccCreditService_industryDatatype (for credit card
credit) |
invoice_date | invoiceHeader_invoiceDate |
local_tax | otherTax_localTaxAmount |
local_tax_indicator | otherTax_localTaxIndicator |
merchant_defined_data1 | merchantDefinedData_field1 |
merchant_defined_data2 | merchantDefinedData_field2 |
merchant_defined_data3 | merchantDefinedData_field3 |
merchant_defined_data4 | merchantDefinedData_field4 |
merchant_descriptor | invoiceHeader_merchantDescriptor |
merchant_descriptor_contact | invoiceHeader_merchantDescriptorContact |
merchant_id | merchantID |
merchant_ref_number | merchantReferenceCode |
merchant_vat_registration_number | invoiceHeader_merchantVATRegistrationNumber |
middleman_registration | taxService_middlemanRegistration |
N/A | clientSecurityLibraryVersion |
N/A | billTo_title |
N/A | billTo_middleName |
N/A | billTo_suffix |
N/A | shipTo_title |
N/A | shipTo_company |
N/A | shipTo_middleName |
N/A | shipTo_suffix |
N/A | shipFrom_street1 |
N/A | shipFrom_street2 |
N/A | shipFrom_street3 |
N/A | shipFrom_street4 |
N/A | shipFrom_title |
N/A | shipFrom_company |
N/A | shipFrom_firstName |
N/A | shipFrom_middleName |
N/A | shipFrom_lastName |
N/A | shipFrom_suffix |
N/A | shipFrom_phoneNumber |
N/A | shipFrom_email |
N/A | card_fullName |
N/A | check_fullName |
N/A | ccCaptureService_transactionToken |
N/A | ccCreditService_transactionToken |
N/A | ccAuthReversalService_transactionToken |
national_tax | otherTax_nationalTaxAmount |
national_tax_indicator | otherTax_nationalTaxIndicator |
nexus | taxService_nexus |
no_nexus | taxService_noNexus |
order_acceptance_city | taxService_orderAcceptanceCity |
order_acceptance_country | taxService_orderAcceptanceCountry |
order_acceptance_county | taxService_orderAcceptanceCounty |
order_acceptance_state | taxService_orderAcceptanceState |
order_acceptance_zip | taxService_orderAcceptancePostalCode |
order_discount_amount | purchaseTotals_discountAmount |
order_origin_city | taxService_orderOriginCity |
order_origin_country | taxService_orderOriginCountry |
order_origin_county | taxService_orderOriginCounty |
order_origin_state | taxService_orderOriginState |
order_origin_zip | taxService_orderOriginPostalCode |
pa_acquirer_bin | payerAuthEnrollService_acquirerBin |
pa_country_code | payerAuthEnrollService_countryCode |
pa_http_accept | payerAuthEnrollService_httpAccept |
pa_http_user_agent | payerAuthEnrollService_httpUserAgent |
pa_login_id | payerAuthEnrollService_loginID |
pa_merchant_id | payerAuthEnrollService_merchantID |
pa_merchant_name | payerAuthEnrollService_merchantName |
pa_merchant_url | payerAuthEnrollService_merchantURL |
pa_password | payerAuthEnrollService_password |
pa_purchase_description | payerAuthEnrollService_purchaseDescription |
pa_purchase_time | payerAuthEnrollService_purchaseTime |
pa_signedpares | payerAuthValidateService_signedPARes |
partial_payment_id | ccCaptureService_partialPaymentID (for credit card
capture) ccCreditService_partialPaymentID (for credit card
credit) ecCreditService_partialPaymentID (for ACH service
credit) ecDebitService_partialPaymentID (for ACH service
debit) |
payment_method | subscription_paymentMethod |
payment_request_id | paySubscriptionCreateService_paymentRequestID |
payment_type | invoiceHeader_tenderType |
paypal_button_create_trans_ref_no | payPalButtonCreateService_reconciliationID |
paypal_cancel_url | payPalPaymentService_cancelURL |
paypal_credit_trans_ref_no | payPalCreditService_reconciliationID |
paypal_mp_id | payPalPreapprovedPaymentService_mpID (for PayPal preapproved
payment) payPalPreapprovedUpdateService_mpID (for PayPal preapproved
payment update) |
paypal_payment_request_id | payPalCreditService_payPalPaymentRequestID |
paypal_payment_trans_ref_no | payPalPaymentService_reconciliatonID |
paypal_preapproved_payment_trans_ref_no | payPalPreapprovedPaymentService _reconciliationID |
paypal_preapproved_update_trans_ref_no | payPalPreapprovedUpdateService _reconciliationID |
paypal_success_url | payPalPaymentService_successURL |
pos_condition_code | pos_conditionCode |
pos_entry_mode | pos_entryMode |
pos_transaction_security | pos_transactionSecurity |
purchaser_code | invoiceHeader_purchaserCode |
purchaser_order_date | invoiceHeader_purchaserOrderDate |
purchaser_vat_registration_number | invoiceHeader_purchaserVATRegistrationNumber |
purchasing_level | ccCaptureService_purchasingLevel (for credit card
capture) ccCreditService_purchasingLevel (for credit card
credit) |
record_id | riskUpdateService_recordID |
record_name | riskUpdateService_recordName |
recurring_approval_required | recurringSubscriptionInfo_approvalRequired |
recurring_automatic_renew | recurringSubscriptionInfo_automaticRenew |
recurring_disable_auto_auth | paySubscriptionCreateService_disableAutoAuth |
recurring_frequency | recurringSubscriptionInfo_frequency |
recurring_number_of_payments | recurringSubscriptionInfo_numberOfPayments |
recurring_number_of_payments_to_add | recurringSubscriptionInfo_numberOfPaymentsToAdd |
recurring_payment_amount | recurringSubscriptionInfo_amount |
recurring_payment_event_action | paySubscriptionEventUpdateService_action |
recurring_payment_event_amount | recurringSubscriptionInfo_event_amount |
recurring_payment_event_approved_by | recurringSubscriptionInfo_event_approvedBy |
recurring_payment_event_number | recurringSubscriptionInfo_event_number |
recurring_start_date | recurringSubscriptionInfo_startDate |
return_auth_record | ccAuthService_returnAuthRecord |
returns_accepted | invoiceHeader_returnsAccepted |
seller_registration | taxService_sellerRegistration |
ship_from_city | shipFrom_city |
ship_from_country | shipFrom_country |
ship_from_county | shipFrom_county |
ship_from_state | shipFrom_state |
ship_from_zip | shipFrom_postalCode |
ship_to_address1 | shipTo_street1 |
ship_to_address2 | shipTo_street2 |
ship_to_address3 | shipTo_street3 |
ship_to_address4 | shipTo_street4 |
ship_to_city | shipTo_city |
ship_to_country | shipTo_country |
ship_to_county | shipTo_county |
ship_to_email | shipTo_email |
ship_to_firstname | shipTo_firstName |
ship_to_lastname | shipTo_lastName |
ship_to_phone | shipTo_phoneNumber |
ship_to_phone_type | bml_shipToPhoneType |
ship_to_state | shipTo_state |
ship_to_zip | shipTo_postalCode |
shipping_method | shipTo_shippingMethod |
state | riskUpdateService_negativeAddress_state |
subscription_end_date | recurringSubscriptionInfo_endDate |
subscription_id | recurringSubscriptionInfo_subscriptionID |
subscription_status | recurringSubscriptionInfo_status |
subscription_title | subscription_title |
summary_commodity_code | invoiceHeader_summaryCommodityCode |
supplier_order_reference | invoiceHeader_supplierOrderReference |
tax_indicator | invoiceHeader_taxable |
terminal_capability | pos_terminalCapability |
terminal_id | pos_terminalID |
terminal_location | pos_terminalLocation |
terminal_type | pos_terminalType |
total_funding_amount | fundingTotals_grandTotalAmount |
total_tax_amount | purchaseTotals_taxAmount |
track_data | pos_trackData |
transaction_type | directDebitService_transactionType |
ucaf_authentication_data | ucaf_authenticationData |
ucaf_collection_indicator | ucaf_collectionIndicator |
user_po | invoiceHeader_userPO |
validate_request_id | directDebitService_validateRequestID |
vat_invoice_ref_number | invoiceHeader_vatInvoiceReferenceNumber |
vat_tax_amount | otherTax_vatTaxAmount |
vat_tax_rate | otherTax_vatTaxRate |
void_request_id | voidService_voidRequestID |
xid | ccAuthService_xid |
zip | riskUpdateService_negativeAddress_postalCode |
Core Response Fields
SCMP API Response Field and Possible
Values | Simple Order API Response Field and Possible
Values |
|---|---|
ics_rcode and
<service>_rcode
Possible values:
| decision
Possible values:
|
ics_rflag and
<service>_rflag
This field returns a one-word description that gives a
general reason for a decline or error. The Cybersource developer guide\
for the service you are implementing contains a list
of the flags that can be returned for that service. | reasonCode and
<service>_reasonCode
This field returns a 3-digit number that gives the reason
for a REJECT or ERROR decision.The Cybersource developer guide
for the service you are implementing contains a list
of the reason codes that can be returned for that service. |
ics_rmsg and
<service>_rmsg
This field gives more information about why you received
the particular rflag . | No corresponding field returned in
the Simple Order API, although you can see the information in the transaction
details screen on the Business Center . |
Offer-Level Fields
SCMP API | Simple Order API |
|---|---|
alternate_tax_id | item_#_alternateTaxID |
amount | item_#_unitPrice |
buyer_registration | item_#_buyerRegistration |
city_override_amount | item_#_cityOverrideAmount |
city_override_rate | item_#_cityOverrideRate |
commodity_code | item_#_commodityCode |
country_override_amount | item_#_countryOverrideAmount |
country_override_rate | item_#_countryOverrideRate |
county_override_amount | item_#_countyOverrideAmount |
county_override_rate | item_#_countyOverrideRate |
discount_amount | item_#_discountAmount |
discount_indicator | item_#_discountIndicator |
discount_rate | item_#_discountRate |
distributor_product_sku | item_#_productSKU |
district_override_amount | item_#_districtOverrideAmount |
district_override_rate | item_#_districtOverrideRate |
export | item_#_export |
gross_net_indicator | item_#_grossNetIndicator |
merchant_product_sku | item_#_productSKU |
middleman_registration | item_#_middlemanRegistration |
national_tax | item_#_nationalTax |
no_export | item_#_noExport |
order_acceptance_city | item_#_orderAcceptanceCity |
order_acceptance_country | item_#_orderAcceptanceCountry |
order_acceptance_county | item_#_orderAcceptanceCounty |
order_acceptance_state | item_#_orderAcceptanceState |
order_acceptance_zip | item_#_orderAcceptancePostalCode |
order_origin_city | item_#_orderOriginCity |
order_origin_country | item_#_orderOriginCountry |
order_origin_county | item_#_orderOriginCounty |
order_origin_state | item_#_orderOriginState |
order_origin_zip | item_#_orderOriginPostalCode |
point_of_title_transfer | item_#_pointOfTitleTransfer |
product_code | item_#_productCode |
product_name | item_#_productName |
product_risk | item_#_productRisk |
quantity | item_#_quantity |
score_category_time | item_#_timeCategory |
score_category_gift | item_#_giftCategory |
score_host_hedge | item_#_hostHedge |
score_threshold | businessRules_scoreThreshold
(score_threshold is an offer-level field in the SCMP API;
businessRules_scoreThreshold is a request field in the Simple Order
API) |
score_time_hedge | item_#_timeHedge |
score_velocity_hedge | item_#_velocityHedge |
seller_registration | item_#_sellerRegistration |
ship_from_city | item_#_shipFromCity |
ship_from_country | item_#_shipFromCountry |
ship_from_county | item_#_shipFromCounty |
ship_from_state | item_#_shipFromState |
ship_from_zip | item_#_shipFromPostalCode |
state_override_amount | item_#_stateOverrideAmount |
state_override_rate | item_#_stateOverrideRate |
tax_amount | item_#_taxAmount |
tax_rate | item_#_taxRate |
tax_type_applied | item_#_taxTypeApplied |
total_amount | item_#_totalAmount |
unit_of_measure | item_#_unitOfMeasure |
vat_rate | item_#_vatRate |
Response Fields
SCMP API | Simple Order API |
|---|---|
auth_auth_amount | ccAuthReply_amount |
auth_auth_avs | ccAuthReply_avsCode |
auth_auth_code | ccAuthReply_authorizationCode |
auth_auth_record | ccAuthReply_authRecord |
auth_auth_response | ccAuthReply_processorResponse |
auth_auth_time | ccAuthReply_authorizedDateTime |
auth_avs_raw | ccAuthReply_avsCodeRaw |
auth_customer_cc_number | ccAuthReply_bmlAccountNumber |
auth_cv_result | ccAuthReply_cvCode |
auth_cv_result_raw | ccAuthReply_cvCodeRaw |
auth_factor_code | ccAuthReply_authFactorCode |
auth_fxrates_funding_currency | ccAuthReply_fundingTotals_currency |
auth_fxrates_quote_exp | ccAuthReply_fxQuoteExpirationDateTime |
auth_fxrates_quote_id | ccAuthReply_fxQuoteID |
auth_fxrates_quote_rate | ccAuthReply_fxQuoteRate |
auth_fxrates_quote_type | ccAuthReply_fxQuoteType |
auth_rcode | N/A |
auth_reversal_amount | ccAuthReversalReply_amount |
auth_reversal_auth_code | ccAuthReversalReply_authorizationCode |
auth_reversal_auth_response | ccAuthReversalReply_processorResponse |
auth_reversal_rcode | N/A |
auth_reversal_request_time | ccAuthReversalReply_requestDateTime |
auth_reversal_rflag | N/A |
auth_reversal_rmsg | N/A |
auth_rflag | N/A |
auth_rmsg | N/A |
auth_total_funding_amount | ccAuthReply_fundingTotals_grandTotalAmount |
auth_trans_ref_no | ccAuthReply_reconciliationID |
bank_transfer_account_holder | bankTransferReply_accountHolder |
bank_transfer_account_number | bankTransferReply_accountNumber |
bank_transfer_amount | bankTransferReply_amount |
bank_transfer_bank_city | bankTransferReply_bankCity |
bank_transfer_bank_country | bankTransferReply_bankCountry |
bank_transfer_bank_name | bankTransferReply_bankName |
bank_transfer_payment_reference | bankTransferReply_paymentReference |
bank_transfer_rcode | N/A |
bank_transfer_refund_amount | bankTransferRefundReply_amount |
bank_transfer_refund_rcode | N/A |
bank_transfer_refund_response_code | bankTransferRefundReply_processorResponse |
bank_transfer_refund_rflag | N/A |
bank_transfer_refund_rmsg | N/A |
bank_transfer_refund_time | bankTransferRefundReply_requestDateTime |
bank_transfer_refund_trans_ref_no | bankTransferRefundReply_reconciliationID |
bank_transfer_response_code | bankTransferReply_processorResponse |
bank_transfer_rflag | N/A |
bank_transfer_rmsg | N/A |
bank_transfer_special_id | bankTransferReply_bankSpecialID |
bank_transfer_swiftcode | bankTransferReply_bankSwiftCode |
bank_transfer_time | bankTransferReply_requestDateTime |
bank_transfer_trans_ref_no | bankTransferReply_reconciliationID |
bill_bill_amount | ccCaptureReply_amount |
bill_bill_request_time | ccCaptureReply_requestDateTime |
bill_enhanced_data_enabled | ccCaptureReply_enhancedDataEnabled |
bill_fxrates_funding_currency | ccCaptureReply_fundingTotals_currency |
bill_fxrates_quote_exp | ccCaptureReply_fxQuoteExpirationDateTime |
bill_fxrates_quote_id | ccCaptureReply_fxQuoteID |
bill_fxrates_quote_rate | ccCaptureReply_fxQuoteRate |
bill_fxrates_quote_type | ccCaptureReply_fxQuoteType |
bill_purchasing_level3_enabled | ccCaptureReply_purchasingLevel3Enabled |
bill_rcode | N/A |
bill_rflag | N/A |
bill_rmsg | N/A |
bill_total_funding_amount | ccCaptureReply_fundingTotals_grandTotalAmount |
bill_trans_ref_no | ccCaptureReply_reconciliationID |
credit_credit_amount | ccCreditReply_amount |
credit_credit_request_time | ccCreditReply_requestDateTime |
credit_enhanced_data_enabled | ccCreditReply_enhancedDataEnabled |
credit_purchasing_level3_enabled | ccCreditReply_purchasingLevel3Enabled |
credit_rcode | N/A |
credit_rflag | N/A |
credit_rmsg | N/A |
credit_trans_ref_no | ccCreditReply_reconcilationID |
currency | purchaseTotals_currency |
dav_address_type | davReply_addressType |
dav_apt_info | davReply_apartmentInfo |
dav_bar_code | davReply_barCode |
dav_bar_code_chkdigit | davReply_barCodeCheckDigit |
dav_ca_error_info | davReply_caErrorInfo |
dav_ca_info | davReply_caInfo |
dav_careof | davReply_careOf |
dav_city_info | davReply_cityInfo |
dav_country_info | davReply_countyInfo |
dav_directional_info | davReply_directionalInfo |
dav_intl_error_info | davReply_intlErrorInfo |
dav_intl_info | davReply_intlInfo |
dav_lvr_info | davReply_lvrInfo |
dav_match_score | davReply_matchScore |
dav_overall_info | davReply_overallInfo |
dav_rcode | N/A |
dav_rflag | N/A |
dav_rmsg | N/A |
dav_standard_address | davReply_standardizedAddress1 |
dav_standard_address_noapt | davReply_standardizedAddressNoApt |
dav_standard_address2 | davReply_standardizedAddress2 |
dav_standard_address3 | davReply_standardizedAddress3 |
dav_standard_address4 | davReply_standardizedAddress4 |
dav_standard_city | davReply_standardizedCity |
dav_standard_country | davReply_standardizedCountry |
dav_standard_county | davReply_standardizedCounty |
dav_standard_csz | davReply_standardizedCSP |
dav_standard_iso_country | davReply_standardizedISOCountry |
dav_standard_state | davReply_standardizedState |
dav_standard_zip | davReply_standardizedPostalCode |
dav_state_info | davReply_stateInfo |
dav_street_info | davReply_streetInfo |
dav_suffix_info | davReply_suffixInfo |
dav_us_error_info | davReply_usErrorInfo |
dav_us_info | davReply_usInfo |
dav_zip_info | davReply_postalCodeInfo |
decision_active_profile | decisionReply_activeProfileReply_name |
decision_active_profile_destination_queue | decisionReply_activeProfileReply_destinationQueue |
decision_active_profile_rule_#_decision | decisionReply_activeProfileReply_rulesTriggered_
ruleResultItem_#_decision |
decision_active_profile_rule_#_evaluation | decisionReply_activeProfileReply_rulesTriggered_
ruleResultItem_#_evaluation |
decision_active_profile_rule_#_id | decisionReply_activeProfileReply_rulesTriggered_
ruleResultItem_#_ruleID |
decision_active_profile_rule_#_name | decisionReply_activeProfileReply_rulesTriggered_
ruleResultItem_#_name |
decision_active_profile_selector_rule | decisionReply_activeProfileReply_selectedBy |
direct_debit_refund_response_code | directDebitRefundReply_processorResponse |
direct_debit_amount | directDebitReply_amount |
direct_debit_rcode | N/A |
direct_debit_rcode | directDebitReply_reasonCode |
direct_debit_refund_amount | directDebitRefundReply_amount |
direct_debit_refund_rcode | N/A |
direct_debit_refund_rflag | N/A |
direct_debit_refund_rmsg | N/A |
direct_debit_refund_time | directDebitRefundReply_requestDateTime |
direct_debit_refund_trans_ref_no | directDebitRefundReply_reconciliationID |
direct_debit_response_code | directDebitReply_processorResponse |
direct_debit_rflag | N/A |
direct_debit_rmsg | N/A |
direct_debit_time | directDebitReply_requestDateTime |
direct_debit_trans_ref_no | directDebitReply_reconciliationID |
direct_debit_validate_amount | directDebitValidateReply_amount |
direct_debit_validate_rcode | N/A |
direct_debit_validate_response_code | directDebitValidateReply_processorResponse |
direct_debit_validate_rflag | N/A |
direct_debit_validate_rmsg | N/A |
direct_debit_validate_time | directDebitValidateReply_requestDateTime |
direct_debit_validate_trans_ref_no | directDebitValidateReply_reconciliationID |
ecp_credit_processor_trans_id | ecCreditReply_processorTransactionID |
ecp_credit_rcode | N/A |
ecp_credit_ref_no | ecCreditReply_reconciliationID |
ecp_credit_result_code | ecCreditReply_processorResponse |
ecp_credit_rflag | N/A |
ecp_credit_rmsg | N/A |
ecp_credit_settlement_method | ecCreditReply_settlementMethod |
ecp_credit_submit_time | ecCreditReply_requestDateTime |
ecp_credit_total_amount | ecCreditReply_amount |
ecp_debit_avs | ecDebitReply_avsCode |
ecp_debit_avs_raw | ecDebitReply_avsCodeRaw |
ecp_debit_processor_trans_id | ecDebitReply_processorTransactionID |
ecp_debit_rcode | N/A |
ecp_debit_ref_no | ecDebitReply_reconciliationID |
ecp_debit_result_code | ecDebitReply_processorResponse |
ecp_debit_rflag | N/A |
ecp_debit_rmsg | N/A |
ecp_debit_settlement_method | ecDebitReply_settlementMethod |
ecp_debit_submit_time | ecDebitReply_requestDateTime |
ecp_debit_total_amount | ecDebitReply_amount |
ecp_debit_verification_level | ecDebitReply_verificationLevel |
export_ip_country_confidence | exportReply_ipCountryConfidence |
export_match1_address1 | deniedPartiesMatch_0_address_0 |
export_match1_address2 | deniedPartiesMatch_0_address_1 |
export_match1_address3 | deniedPartiesMatch_0_address_2 |
export_match1_list | deniedPartiesMatch_0_list |
export_match1_name1 | deniedPartiesMatch_0_name_0 |
export_match1_name2 | deniedPartiesMatch_0_name_1 |
export_match2_address1 | deniedPartiesMatch_1_address_0 |
export_match2_address2 | deniedPartiesMatch_1_address_1 |
export_match2_address3 | deniedPartiesMatch_1_address_2 |
export_match2_list | deniedPartiesMatch_1_list |
export_match2_name1 | deniedPartiesMatch_1_name_0 |
export_match2_name2 | deniedPartiesMatch_1_name_1 |
export_match3_address1 | deniedPartiesMatch_2_address_0 |
export_match3_address2 | deniedPartiesMatch_2_address_1 |
export_match3_address3 | deniedPartiesMatch_2_address_2 |
export_match3_list | deniedPartiesMatch_2_list |
export_match3_name1 | deniedPartiesMatch_2_name_0 |
export_match3_name2 | deniedPartiesMatch_2_name_1 |
export_rcode | N/A |
export_rflag | N/A |
export_rmsg | N/A |
fxrates_currency# | fxRatesReply_quote_#_currency |
fxrates_funding_currency# | fxRatesReply_quote_#_fundingCurrency |
fxrates_quote_date# | fxRatesReply_quote_#_receivedDateTime |
fxrates_quote_exp# | fxRatesReply_quote_#_expirationDateTime |
fxrates_quote_id# | fxRatesReply_quote_#_id |
fxrates_quote_rate# | fxRatesReply_quote_#_rate |
fxrates_quote_type# | fxRatesReply_quote_#_type |
fxrates_rcode | N/A |
fxrates_rflag | N/A |
fxrates_rmsg | N/A |
ics_rcode | N/A |
ics_rflag | N/A |
ics_rmsg | N/A |
merchant_ref_number | merchantReferenceCode |
N/A | reasonCode |
N/A | decision |
N/A | missingField_# |
N/A | invalidField_# |
N/A | ccAuthReply_reasonCode |
N/A | ccAuthReply_transactionToken |
N/A | ccCaptureReply_reasonCode |
N/A | ccCaptureReply_transactionToken |
N/A | ccCreditReply_reasonCode |
N/A | ccCreditReply_transactionToken |
N/A | ccAuthReversalReply_reasonCode |
N/A | ccAuthReversalReply_transactionToken |
N/A | ecDebitReply_reasonCode |
N/A | ecDebitReply_transactionToken |
N/A | ecCreditReply_reasonCode |
N/A | ecCreditReply_transactionToken |
N/A | voidReply_reasonCode |
N/A | pinlessDebitValidateReply_reasonCode |
N/A | pinlessDebitReply_reasonCode |
N/A | payPalPaymentReply_reasonCode |
N/A | payPalCreditReply_reasonCode |
N/A | payPalButtonCreateReply_reasonCode |
N/A | payPalPreapprovedPaymentReply_reasonCode |
N/A | payPalPreapprovedUpdateReply_reasonCode |
N/A | payerAuthEnrollReply_reasonCode |
N/A | payerAuthValidateReply_reasonCode |
N/A | taxReply_reasonCode |
N/A | afsReply_reasonCode |
N/A | davReply_reasonCode |
N/A | exportReply_reasonCode |
N/A | bankTransferReply_reasonCode |
N/A | bankTransferRefundReply_reasonCode |
N/A | directDebitValidateReply_reasonCode |
N/A | directDebitRefundReply_reasonCode |
N/A | fxRatesReply_reasonCode |
N/A | paySubscriptionCreateReply_reasonCode |
N/A | paySubscriptionEventUpdateReply_reasonCode |
N/A | paySubscriptionRetrieveReply_reasonCode |
pa_enroll_acs_url | payerAuthEnrollReply_acsURL |
pa_enroll_e_commerce_indicator | payerAuthEnrollReply_commerceIndicator |
pa_enroll_pareq | payerAuthEnrollReply_paReq |
pa_enroll_proofxml | payerAuthEnrollReply_proofXML |
pa_enroll_proxypan | payerAuthEnrollReply_proxyPAN |
pa_enroll_rcode | N/A |
pa_enroll_rflag | N/A |
pa_enroll_rmsg | N/A |
pa_enroll_ucaf_collection_indicator | payerAuthEnrollReply_ucafCollectionIndicator |
pa_enroll_xid | payerAuthEnrollReply_xid |
pa_validate_authentication_result | payerAuthValidateReply_authenticationResult |
pa_validate_authentication_status_msg | payerAuthValidateReply_authenticationStatusMessage |
pa_validate_cavv | payerAuthValidateReply_cavv |
pa_validate_e_commerce_indicator | payerAuthValidateReply_commerceIndicator |
pa_validate_eci | payerAuthValidateReply_eci |
pa_validate_eci_raw | payerAuthValidateReply_eciRaw |
pa_validate_rcode | N/A |
pa_validate_rflag | N/A |
pa_validate_rmsg | N/A |
pa_validate_xid | payerAuthValidateReply_xid |
pay_subscription_create_rcode | N/A |
pay_subscription_create_rflag | N/A |
pay_subscription_create_rmsg | N/A |
pay_subscription_create_subscription_id | paySubscriptionCreateReply_subscriptionID |
pay_subscription_retrieve_approval_required | paySubscriptionRetrieveReply_approvalRequired |
pay_subscription_retrieve_automatic_renew | paySubscriptionRetrieveReply_automaticRenew |
pay_subscription_retrieve_bill_address1 | paySubscriptionRetrieveReply_street1 |
pay_subscription_retrieve_bill_address2 | paySubscriptionRetrieveReply_street2 |
pay_subscription_retrieve_bill_city | paySubscriptionRetrieveReply_city |
pay_subscription_retrieve_bill_country | paySubscriptionRetrieveReply_country |
pay_subscription_retrieve_bill_state | paySubscriptionRetrieveReply_state |
pay_subscription_retrieve_bill_zip | paySubscriptionRetrieveReply_postalCode |
pay_subscription_retrieve_card_type | paySubscriptionRetrieveReply_cardType |
pay_subscription_retrieve_comments | paySubscriptionRetrieveReply_comments |
pay_subscription_retrieve_company_name | paySubscriptionRetrieveReply_companyName |
pay_subscription_retrieve_currency | paySubscriptionRetrieveReply_currency |
pay_subscription_retrieve_customer_account_id | paySubscriptionRetrieveReply_customerAccountID |
pay_subscription_retrieve_customer_cc_expmo | paySubscriptionRetrieveReply_cardExpirationMonth |
pay_subscription_retrieve_customer_cc_expyr | paySubscriptionRetrieveReply_cardExpirationYear |
pay_subscription_retrieve_customer_cc_issue_number | paySubscriptionRetrieveReply_cardIssueNumber |
pay_subscription_retrieve_customer_cc_number | paySubscriptionRetrieveReply_cardAccountnumber |
pay_subscription_retrieve_customer_cc_startmo | paySubscriptionRetrieveReply_cardStartMonth |
pay_subscription_retrieve_customer_cc_startyr | paySubscriptionRetrieveReply_cardStartYear |
pay_subscription_retrieve_customer_email | paySubscriptionRetrieveReply_email |
pay_subscription_retrieve_customer_firstname | paySubscriptionRetrieveReply_firstName |
pay_subscription_retrieve_customer_lastname | paySubscriptionRetrieveReply_lastName |
pay_subscription_retrieve_customer_phone | paySubscriptionRetrieveReply_phoneNumber |
pay_subscription_retrieve_ecp_account_no | paySubscriptionRetrieveReply_checkAccountNumber |
pay_subscription_retrieve_ecp_account_no | paySubscriptionRetrieveReply_checkAccountType |
pay_subscription_retrieve_ecp_rdfi | paySubscriptionRetrieveReply_checkBankTransitNumber |
pay_subscription_retrieve_end_date | paySubscriptionRetrieveReply_endDate |
pay_subscription_retrieve_frequency | paySubscriptionRetrieveReply_frequency |
pay_subscription_retrieve_merchant_ref_number | paySubscriptionRetrieveReply_merchantReferenceCode |
pay_subscription_retrieve_payment_method | paySubscriptionRetrieveReply_paymentMethod |
pay_subscription_retrieve_payments_left | paySubscriptionRetrieveReply_paymentsRemaining |
pay_subscription_retrieve_rcode | N/A |
pay_subscription_retrieve_recurring_amount | paySubscriptionRetrieveReply_recurringAmount |
pay_subscription_retrieve_rflag | N/A |
pay_subscription_retrieve_rmsg | N/A |
pay_subscription_retrieve_setup_amount | paySubscriptionRetrieveReply_setupAmount |
pay_subscription_retrieve_start_date | paySubscriptionRetrieveReply_startDate |
pay_subscription_retrieve_status | paySubscriptionRetrieveReply_status |
pay_subscription_retrieve_subscription_id | paySubscriptionRetrieveReply_subscriptionID |
pay_subscription_retrieve_title | paySubscriptionRetrieveReply_title |
pay_subscription_retrieve_total_payments | paySubscriptionRetrieveReply_totalPayments |
pay_subscription_update_rcode | paySubscriptionUpdateReply_reasonCode |
pay_subscription_update_subscription_id | paySubscriptionUpdateReply_subscriptionID |
paypal_button_create_button_type | payPalButtonCreateReply_buttonType |
paypal_button_create_encrypted_form_data | payPalButtonCreateReply_encryptedFormData |
paypal_button_create_rcode | N/A |
paypal_button_create_rflag | N/A |
paypal_button_create_rmsg | N/A |
paypal_button_create_time | payPalButtonCreateReply_requestDateTime |
paypal_button_create_trans_ref_no | payPalButtonCreateReply_reconciliationID |
paypal_button_create_unencrypted_form_data | payPalButtonCreateReply_unencryptedFormData |
paypal_credit_amount | payPalCreditReply_amount |
paypal_credit_rcode | N/A |
paypal_credit_response_code | payPalCreditReply_processorResponse |
paypal_credit_rflag | N/A |
paypal_credit_rmsg | N/A |
paypal_credit_time | payPalCreditReply_requestDateTime |
paypal_credit_trans_ref_no | payPalCreditReply_reconciliationID |
paypal_payment_amount | payPalPaymentReply_amount |
paypal_payment_rcode | N/A |
paypal_payment_rflag | N/A |
paypal_payment_rmsg | N/A |
paypal_payment_secure_data | payPalPaymentReply_secureData |
paypal_payment_time | payPalPaymentReply_requestDateTime |
paypal_payment_trans_ref_no | payPalPaymentReply_reconciliationID |
paypal_preapproved_payment_desc | payPalPreapprovedPaymentReply_desc |
paypal_preapproved_payment_exchange_rate | payPalPreapprovedPaymentReply_exchangeRate |
paypal_preapproved_payment_fee_amount | payPalPreapprovedPaymentReply_feeAmount |
paypal_preapproved_payment_mp_max | payPalPreapprovedPaymentReply_mpMax |
paypal_preapproved_payment_mp_status | payPalPreapprovedPaymentReply_mpStatus |
paypal_preapproved_payment_payer | payPalPreapprovedPaymentReply_payer |
paypal_preapproved_payment_payer_business | payPalPreapprovedPaymentReply_payerBusiness |
paypal_preapproved_payment_payer_country | payPalPreapprovedPaymentReply_payerCountry |
paypal_preapproved_payment_payer_id | payPalPreapprovedPaymentReply_payerID |
paypal_preapproved_payment_payer_name | payPalPreapprovedPaymentReply_payerName |
paypal_preapproved_payment_payer_status | payPalPreapprovedPaymentReply_payerStatus |
paypal_preapproved_payment_payment_date | payPalPreapprovedPaymentReply_paymentDate |
paypal_preapproved_payment_payment_gross_amount | payPalPreapprovedPaymentReply_paymentGrossAmount |
paypal_preapproved_payment_payment_source_id | payPalPreapprovedPaymentReply_paymentSourceID |
paypal_preapproved_payment_payment_status | payPalPreapprovedPaymentReply_paymentStatus |
paypal_preapproved_payment_payment_type | payPalPreapprovedPaymentReply_paymentType |
paypal_preapproved_payment_pending_reason | payPalPreapprovedPaymentReply_pendingReason |
paypal_preapproved_payment_rcode | N/A |
paypal_preapproved_payment_rflag | N/A |
paypal_preapproved_payment_rmsg | N/A |
paypal_preapproved_payment_settle_amount | payPalPreapprovedPaymentReply_settleAmount |
paypal_preapproved_payment_tax_amount | payPalPreapprovedPaymentReply_taxAmount |
paypal_preapproved_payment_time | payPalPreapprovedPaymentReply_requestDateTime |
paypal_preapproved_payment_trans_ref_no | payPalPreapprovedPaymentReply_reconciliationID |
paypal_preapproved_payment_transaction_id | payPalPreapprovedPaymentReply_transactionID |
paypal_preapproved_payment_transaction_type | payPalPreapprovedPaymentReply_transactionType |
paypal_preapproved_update_desc | payPalPreapprovedUpdateReply_desc |
paypal_preapproved_update_mp_max | payPalPreapprovedUpdateReply_mpMax |
paypal_preapproved_update_mp_status | payPalPreapprovedUpdateReply_mpStatus |
paypal_preapproved_update_payer | payPalPreapprovedUpdateReply_payer |
paypal_preapproved_update_payer_business | payPalPreapprovedUpdateReply_payerBusiness |
paypal_preapproved_update_payer_country | payPalPreapprovedUpdateReply_payerCountry |
paypal_preapproved_update_payer_id | payPalPreapprovedUpdateReply_payerID |
paypal_preapproved_update_payer_name | payPalPreapprovedUpdateReply_payerName |
paypal_preapproved_update_payer_status | payPalPreapprovedUpdateReply_payerStatus |
paypal_preapproved_update_payment_source_id | payPalPreapprovedUpdateReply_paymentSourceID |
paypal_preapproved_update_rcode | N/A |
paypal_preapproved_update_rflag | N/A |
paypal_preapproved_update_rmsg | N/A |
paypal_preapproved_update_time | payPalPreapprovedUpdateReply_requestDateTime |
paypal_preapproved_update_trans_ref_no | payPalPreapprovedUpdateReply_reconciliationID |
pinless_debit_amount | pinlessDebitReply_amount |
pinless_debit_auth_code | pinlessDebitReply_authorizationCode |
pinless_debit_processor_response | pinlessDebitReply_processorResponse |
pinless_debit_rcode | N/A |
pinless_debit_receipt_number | pinlessDebitReply_receiptNumber |
pinless_debit_rflag | N/A |
pinless_debit_rmsg | N/A |
pinless_debit_time | pinlessDebitReply_requestDateTime |
pinless_debit_trans_ref_no | pinlessDebitReply_reconciliationID |
pinless_debit_validate_rcode | N/A |
pinless_debit_validate_rflag | N/A |
pinless_debit_validate_rmsg | N/A |
pinless_debit_validate_status | pinlessDebitValidateReply_status |
pinless_debit_validate_time | pinlessDebitValidateReply_requestDateTime |
request_id | requestID |
score_address_info | afsReply_addressInfoCode |
score_factors | afsReply_afsFactorCode |
score_host_severity | afsReply_hostSeverity |
score_hotlist_info | afsReply_hotlistInfoCode |
score_internet_info | afsReply_internetInfoCode |
score_phone_info | afsReply_phoneInfoCode |
score_rcode | N/A |
score_rflag | N/A |
score_rmsg | N/A |
score_score_result | afsReply_afsResult |
score_suspicious_info | afsReply_suspiciousInfoCode |
score_time_local | afsReply_consumerLocalTime |
score_velocity_info | afsReply_velocityInfoCode |
tax_city_name | taxReply_city |
tax_city_tax# | taxReply_item_#_cityTaxAmount |
tax_county_name | taxReply_county |
tax_county_tax# | taxReply_item_#_countyTaxAmount |
tax_district_tax# | taxReply_item_#_districtTaxAmount |
tax_rcode | N/A |
tax_rflag | N/A |
tax_rmsg | N/A |
tax_state_name | taxReply_state |
tax_state_tax# | taxReply_item_#_stateTaxAmount |
tax_tax_amount# | taxReply_item_#_totalTaxAmount |
tax_total_city_tax | taxReply_totalCityTaxAmount |
tax_total_county_tax | taxReply_totalCountyTaxAmount |
tax_total_district_tax | taxReply_totalDistrictTaxAmount |
tax_total_grand | taxReply_grandTotalTaxAmount |
tax_total_state_tax | taxReply_totalStateTaxAmount |
tax_total_tax | taxReply_totalTaxAmount |
tax_zip | taxReply_postalCode |
ucaf_authentication_data | payerAuthValidateReply_ucafAuthenticationData |
ucaf_collection_indicator | payerAuthValidateReply_ucafCollectionIndicator |
void_rcode | N/A |
void_rflag | N/A |
void_rmsg | N/A |
void_void_amount | voidReply_amount |
void_void_currency | voidReply_currency |
void_void_request_time | voidReply_requestDateTime |
Reference: Request Fields for Batch Files
The tables in this section list the Simple Order API fields you use
to create transaction requests in a batch file:
- Fields for an Authorization Request
- Fields for a Sale Request
- Fields for a Capture Request
- Fields for a Credit Request
- Fields for an ACH Service Debit Request
- Fields for an ACH Service Credit Request
- Fields for a Subscription Creation Request
- Fields for a Subscription Update Request
- Fields for a Subscription Cancellation Request
Fields for an Authorization Request
This table describes the required and optional fields for specifying
an authorization request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode* | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
C | purchaseTotals_grandTotalAmount* | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen. | Required | String | 15 |
D | billTo_firstName* | Customer’s first name.
Set the value to the customer's first name as it appears on the card. | Required | String | 60 |
E | billTo_lastName* | Customer’s last name.
Set the value to the customer's last name as it appears on the card. | Required | String | 60 |
F | billTo_customerID | Your identifier for the customer. | Optional | String | 50 |
G | billTo_email* | Customer’s email address, including the full domain name. For example: jdoe@example.com | Required | String | 255 |
H | billTo_street1* | First line of the billing street address. | Required | String | 60 |
I | billTo_street2 | Second line of the billing street address. Used for additional address information. For example: Attention: Accounts Payable | Required | String | 60 |
J | billTo_city* | City of the billing address. | Required | String | 50 |
K | billTo_state* | State or province of the billing address. Use the two-character codes. | Required | String | 2 |
L | billTo_country* | Country of the billing address. Use the two-character ISO codes. | Required | String | 2 |
M | billTo_postalCode* | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format: [5 digits][dash][4 digits]. If the value of billTo_country is CA, the postal code must follow these rules: If the number of characters is greater than 3, the first 3 characters must be in this format: [alpha][numeric][alpha]. If the number of characters is 7, the last 3 characters must be in this format: [numeric][alpha][numeric]. | Required | String | 10 |
N | card_accountNumber* | Customer’s credit card number. | Required | String (Numbers Only) | 20 |
O | billTo_phoneNumber | Customer’s phone number. | Required | String | 15 |
P | card_expirationMonth* | Two-digit month in which the credit card expires. Format: MM. Possible values: 01 through 12. The leading 0 is required. | Required | String | 2 |
Q | card_expirationYear* | Four-digit year in which the credit card expires. Format: YYYY. | Required | String | 4 |
R | card_cardType* | Type of card to authorize. This field is required if the card type is JCB (007), and optional for all other card types. • 001: Visa • 002: MasterCard • 003: American Express • 004: Discover • 005: Diners Club • 007: JCB (required) | Required | String | 3 |
S | card_cvIndicator | Card verification indicator used to indicate if a card verification
value was sent. Accepted by FDMS Nashville .
Possible values:• 0: CV number service not requested.• 1: CV number
service requested and supported.• 2: CV number on credit card is
illegible.• 9: CV number was not imprinted on credit card. The default
value is 1 if you send the card_cvNumber field in the request, and 0 if
you do not send the card_cvNumber field. | Optional | String (Numbers Only) | 4 |
T | card_cvNumber | Card verification number. | Optional | String (Numbers Only) | 2 |
U | ccAuthService_commerceIndicator | Transaction channel type. Possible values: • internet (default): eCommerce transaction. • install: Installment profile. Payments will be made in installments. If selected, then installment_sequence and installment_totalCount are required. This value is valid only for Visa. • moto: Mail order or telephone order. See Indicating a Recurring Payment for information about recurring payments. | Optional | String | 13 |
V | comments | Optional comments you have about the authorization. These comments will not be shown to the customer. | Optional | String | 255 |
W | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
X | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
Y | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
Z | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AA | shipTo_firstName | First name of the person receiving the shipment. | Optional | String | 60 |
AB | shipTo_lastName | Last name of the person receiving the shipment. | Optional | String | 60 |
AC | shipTo_street1 | First line of the address to which to ship the product. | Optional | String | 60 |
AD | shipTo_street2 | Second line of the address to which to ship the product. | Optional | String | 60 |
AE | shipTo_city | City to which to ship the product. | Optional | String | 50 |
AF | shipTo_state | State or province to which to ship the product. Use the two-character codes. | Optional | String | 2 |
AG | shipTo_country | Country to which to ship the product. Use the two-character ISO codes. | Optional | String | 2 |
AH | shipTo_postalCode | Postal code for the shipping address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Optional | String | 10 |
Fields for a Sale Request
This table describes the required and optional fields for specifying
a sale request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode * | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
C | purchaseTotals_grandTotalAmount* | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen. | Required | String | 15 |
D | billTo_firstName* | Customer’s first name. The value should be the same as the one that appears on the card. | Required | String | 60 |
E | billTo_lastName* | Customer’s last name. The value should be the same as the one that appears on the card. | Required | String | 60 |
F | billTo_customerID | Your identifier for the customer. | Optional | String | 50 |
G | billTo_email* | Customer’s email address, including the full domain name. For example: jdoe@example.com | Required | String | 255 |
H | billTo_street1* | First line of the billing street address. | Required | String | 60 |
I | billTo_street2 | Second line of the billing street address. Used for additional address information. For example: Attention: Accounts Payable | Required | String | 60 |
J | billTo_city* | City of the billing address. | Required | String | 50 |
K | billTo_state* | State or province of the billing address. Use the two-character codes. | Required | String | 2 |
L | billTo_country* | Country of the billing address. Use the two-character ISO codes. | Required | String | 2 |
M | billTo_postalCode* | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Required | String | 10 |
N | card_accountNumber* | Customer’s credit card number. | Required | String (Numbers Only) | 20 |
O | billTo_phoneNumber | Customer’s phone number. | Required | String | 15 |
P | card_expirationMonth* | Two-digit month in which the credit card expires. Format: MM. Possible values: 01 through 12. The leading 0 is required. | Required | String | 2 |
Q | card_expirationYear* | Four-digit year in which the credit card expires. Format: YYYY. | Required | String | 4 |
R | card_cardType* | Type of card to authorize. This field is required if the card type is JCB (007), and optional for all other card types.
| Required | String | 3 |
S | card_cvIndicator | Card verification indicator used to indicate if a card verification value was sent. Accepted by FDMS Nashville . Possible values:
| Optional | String (Numbers Only) | 4 |
T | card_cvNumber | Card verification number. | Optional | String (Numbers Only) | 2 |
U | ccAuthService_commerceIndicator | Transaction channel type. Possible values:
| Optional | String | 13 |
V | comments | Optional comments you have about the authorization. These comments will not be shown to the customer. | Optional | String | 255 |
W | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
X | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
Y | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
Z | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AA | shipTo_firstName | First name of the person receiving the shipment. | Optional | String | 60 |
AB | shipTo_lastName | Last name of the person receiving the shipment. | Optional | String | 60 |
AC | shipTo_street1 | First line of the address to which to ship the product. | Optional | String | 60 |
AD | shipTo_street2 | Second line of the address to which to ship the product. | Optional | String | 60 |
AE | shipTo_city | City to which to ship the product. | Optional | String | 50 |
AF | shipTo_state | State or province to which to ship the product. Use the two-character codes. | Optional | String | 2 |
AG | shipTo_country | Country to which to ship the product. Use the two-character ISO codes. | Optional | String | 2 |
AH | shipTo_postalCode | Postal code for the shipping address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Optional | String | 10 |
Fields for a Capture Request
This table describes the required and optional fields for specifying
a capture request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description |
|---|---|---|
A | merchantReferenceCode * | Merchant-generated order reference or tracking number.
|
B | purchaseTotals_currency* | Currency used for the order.
|
C | purchaseTotals_grandTotalAmount* | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen.
|
D | ccCaptureService_authRequestID* | The requestID returned from a previous request for ccAuthService.
|
E | ccCaptureService_authRequestToken | The requestToken returned from a previous request for ccAuthService.
|
F | ccCaptureService_authType | If the request contains a verbally authorized transaction, this field must contain the value verbal.
|
G | ccCaptureService_verbalAuthCode | Verbally received authorization code.
|
H | billTo_customerID | Your identifier for the customer.
|
I | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile.
|
J | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile.
|
K | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile.
|
L | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile.
|
Fields for a Credit Request
This table describes the required and optional fields for specifying
a credit request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode* | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
C | purchaseTotals_grandTotalAmount* | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whehter the card is lost or stolen. | Required | String | 15 |
D | ccCaptureService_authRequestID* | The requestID returned from a previous request for ccAuthService. | Required | NA | NA |
E | ccCaptureService_authRequestToken | The requestToken returned from a previous request for ccAuthService. | Optional | NA | NA |
F | ccCaptureService_authType | If the request contains a verbally authorized transaction, this field must contain the value verbal. | Optional | NA | NA |
G | ccCaptureService_verbalAuthCode | Verbally received authorization code. | Optional | NA | NA |
H | billTo_customerID | Your identifier for the customer. | Optional | NA | NA |
I | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
J | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
K | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
L | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
M | billTo_postalCode* | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Required | String | 10 |
N | card_accountNumber* | Customer’s credit card number. | Required | String (Numbers Only) | 20 |
O | card_cardType* | Type of card to authorize. This field is required if the card type is JCB (007), and optional for all other card types.
| Required | String | 3 |
P | billTo_phoneNumber | Customer’s phone number. | Required | String | 15 |
Q | card_expirationMonth* | Two-digit month in which the credit card expires. Format: MM. Possible values: 01 through 12. The leading 0 is required. | Required | String | 2 |
R | card_expirationYear* | Four-digit year in which the credit card expires. Format: YYYY. | Required | String | 4 |
S | card_cvIndicator | Card verification indicator used to indicate if a card verification value was sent. Accepted by FDMS Nashville . Possible values:
| Optional | String (Numbers Only) | 4 |
T | card_cvNumber | Card verification number. | Optional | String (Numbers Only) | 2 |
U | ccCreditService_captureRequestID | The requestID returned from a previous request for ccCaptureService. Creates a follow-on credit by linking the credit to the previous capture. If you send this field, you do not need to send several other Credit request fields. See Crediting a Payment for more information about follow-on credits. | Optional | NA | NA |
V | ccCreditService_captureRequestToken | The requestToken returned from a previous request for ccCaptureService. | Optional | NA | NA |
W | ccCreditService_commerceIndicator | Transaction type. Use with stand-alone credits. See Request Fields for possible values. | Optional | NA | NA |
X | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
Y | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
Z | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AA | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AB | shipTo_firstName | First name of the person receiving the shipment. | Optional | String | 60 |
AC | shipTo_lastName | Last name of the person receiving the shipment. | Optional | String | 60 |
AD | shipTo_street1 | First line of the address to which to ship the product. | Optional | String | 60 |
AE | shipTo_street2 | Second line of the address to which to ship the product. | Optional | String | 60 |
AF | shipTo_city | City to which to ship the product. | Optional | String | 50 |
AG | shipTo_state | State or province to which to ship the product. Use the two-character codes. | Optional | String | 2 |
AH | shipTo_country | Country to which to ship the product. Use the two-character ISO codes. | Optional | String | 2 |
AI | shipTo_postalCode | Postal code for the shipping address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Optional | String | 10 |
Fields for an ACH Service Debit Request
This table describes the required and optional fields for specifying
an ACH service debit request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode * | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
C | purchaseTotals_grandTotalAmount* | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen. | Required | String | 15 |
D | billTo_firstName* | Customer’s first name. The value should be the same as the one that appears on the card. | Required | String | 60 |
E | billTo_lastName* | Customer’s last name. The value should be the same as the one that appears on the card. | Required | String | 60 |
F | billTo_customerID | Your identifier for the customer. | Optional | String | 50 |
G | billTo_email* | Customer’s email address, including the full domain name. For example: jdoe@example.com | Required | String | 255 |
H | billTo_street1* | First line of the billing street address. | Required | String | 60 |
I | billTo_street2 | Second line of the billing street address. Used for additional address information. For example: Attention: Accounts Payable | Required | String | 60 |
J | billTo_city* | City of the billing address. | Required | String | 50 |
K | billTo_state* | State or province of the billing address. Use the two-character codes. | Required | String | 2 |
L | billTo_country* | Country of the billing address. Use the two-character ISO codes. | Required | String | 2 |
M | billTo_postalCode* | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Required | String | 10 |
N | check_accountType* | Checking account type. See Request Fields for possible values. | Required | NA | NA |
O | check_bankTransitNumber* | Bank routing number (or "transit number"). | Required | NA | NA |
P | check_accountNumber* | Checking account number. If processing encoded account numbers, use this field for the encoded account number. | Required | NA | NA |
Q | check_checkNumber | Check number. NOTE: If you use AmeriNet, check with them to see if they require you to provide this field. | Optional | NA | NA |
R | billTo_phoneNumber | Customer’s phone number. | Optional | String | 15 |
S | billTo_driversLicenseNumber | Driver’s license number of the customer. Required for AmeriNet guaranteed personal checking. For TeleCheck , see description of billTo_company. | Optional | NA | NA |
T | billTo_driversLicenseState | State or province where the customer’s driver’s license was issued. Required for AmeriNet guaranteed personal checking. For TeleCheck , see description of billTo_company. | Optional | NA | NA |
U | billTo_company | Name of the customer’s company. Required for AmeriNet guaranteed corporate checking. For TeleCheck personal checks, you must provide billTo_driversLicenseNumber and billTo_driversLicenseState. For TeleCheck corporate checks, you must provide either both billTo_driversLicenseNumber and billTo_driversLicenseState, or both billTo_company and billTo_companyTaxID. | Optional | NA | NA |
V | billTo_companyTaxID | Tax identifier of the customer’s company. For TeleCheck , see description of billTo_company. | Optional | NA | NA |
W | billTo_dateOfBirth | Customer’s date of birth. NOTE: If you use AmeriNet, check with them to see if they require you to provide this field. For AmeriNet corporate accounts, use the value 1970-01-01. | Optional | NA | NA |
X | billTo_ipAddress | IP address for the customer. Example: 10.1.27.63. | Optional | String | 15 |
Y | check_secCode | Code that specifies the authorization method for the transaction. | Optional | String | 3 |
Fields for an ACH Service Credit Request
This table describes the required and optional fields for specifying
an ACH service credit request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode * | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
C | purchaseTotals_grandTotalAmount* | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen. | Required | String | 15 |
D | billTo_firstName* | Customer’s first name. The value should be the same as the one that appears on the card. | Required | String | 60 |
E | billTo_lastName* | Customer’s last name. The value should be the same as the one that appears on the card. | Required | String | 60 |
F | billTo_email* | Customer’s email address, including the full domain name. For example: jdoe@example.com | Required | String | 255 |
G | billTo_street1* | First line of the billing street address. | Required | String | 60 |
H | billTo_street2 | Second line of the billing street address. Used for additional address information. For example: Attention: Accounts Payable | Required | String | 60 |
I | billTo_city* | City of the billing address. | Required | String | 50 |
J | billTo_state* | State or province of the billing address. Use the two-character codes. | Required | String | 2 |
K | billTo_country* | Country of the billing address. Use the two-character ISO codes. | Required | String | 2 |
L | billTo_postalCode* | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Required | String | 10 |
M | check_accountType* | Checking account type. See Request Fields for possible values. | Required | NA | NA |
N | check_bankTransitNumber* | Bank routing number (or "transit number"). | Required | NA | NA |
O | check_accountNumber* | Checking account number. If processing encoded account numbers, use this field for the encoded account number. | Required | NA | NA |
P | check_checkNumber | Check number. NOTE: If you use AmeriNet, check with them to see if they require you to provide this field. | Optional | NA | NA |
Q | billTo_phoneNumber | Customer’s phone number. | Optional | String | 15 |
R | billTo_driversLicenseNumber | Driver’s license number of the customer. Required for AmeriNet guaranteed personal checking. For TeleCheck , see description of billTo_company. | Optional | NA | NA |
S | billTo_driversLicenseState | State or province where the customer’s driver’s license was issued. Required for AmeriNet guaranteed personal checking. For TeleCheck , see description of billTo_company. | Optional | NA | NA |
T | billTo_company | Name of the customer’s company. Required for AmeriNet guaranteed corporate checking. For TeleCheck personal checks, you must provide billTo_driversLicenseNumber and billTo_driversLicenseState. For TeleCheck corporate checks, you must provide either both billTo_driversLicenseNumber and billTo_driversLicenseState, or both billTo_company and billTo_companyTaxID. | Optional | NA | NA |
U | billTo_companyTaxID | Tax identifier of the customer’s company. For TeleCheck , see description of billTo_company. | Optional | NA | NA |
V | ecCreditService_debitRequestID | The requestID from the previous debit. See Follow-on or Stand-Alone Credit for more information. | Required for a Cybersource follow-on credit. | NA | NA |
W | ecCreditService_debitRequestToken | The requestToken returned from a previous request for ecDebitService. | Optional | NA | NA |
X | ecCreditService_partialPaymentID | Merchant-generated value that identifies a specific partial credit associated with an order. Make sure the field value you use for each credit request is unique within the scope of the order. Used only for TeleCheck . See Multiple Partial Credits. | Required for TeleCheck partial credits. | NA | NA |
Y | ecCreditService_referenceNumber | For Cybersource stand-alone credits with TeleCheck , set this field to the value that you received in the ecDebitReply_reconciliationID field in the associated debit’s reply. See Follow-on or Stand-Alone Credit for more information. | Required for Cybersource stand-alone credits with TeleCheck . | NA | NA |
Z | billTo_dateOfBirth | Customer’s date of birth. NOTE: If you use AmeriNet, check with them to see if they require you to provide this field. For AmeriNet corporate accounts, use the value 1970-01-01. | Optional | NA | NA |
Fields for a Subscription Creation Request
This table describes the required and optional fields for specifying a subscription
creation request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode* | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
C | recurringSubscriptionInfo_amount* | Amount of the subscription payments, for example, 19.95. For on-demand subscriptions, this value can be 0. Create: Required for installment and recurring subscription; optional for on-demand subscriptions. | Required | String | 15 |
D | purchaseTotals_grandTotalAmount | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen. | Optional | String | 15 |
E | billTo_firstName* | Customer’s first name. The value should be the same as the one that appears on the card. | Required | String | 60 |
F | billTo_lastName* | Customer’s last name. The value should be the same as the one that appears on the card. | Required | String | 60 |
G | billTo_customerID | Your identifier for the customer. | Optional | String | 50 |
H | billTo_email* | Customer’s email address, including the full domain name. For example: jdoe@example.com | Required | String | 255 |
I | billTo_street1* | First line of the billing street address. | Required | String | 60 |
J | billTo_street2 | Second line of the billing street address. Used for additional address information. For example: Attention: Accounts Payable | Optional | String | 60 |
K | billTo_city* | City of the billing address. | Required | String | 50 |
L | billTo_state* | State or province of the billing address. Use the two-character codes. | Required | String | 2 |
M | billTo_country* | Country of the billing address. Use the two-character ISO codes. | Required | String | 2 |
N | billTo_postalCode* | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Required | String | 10 |
O | card_accountNumber* | Customer’s credit card number. | Required | String (Numbers Only) | 20 |
P | billTo_phoneNumber | Customer’s phone number. | Optional | String | 15 |
Q | billTo_company | Customer's Company Name | Optional | String | 60 |
R | card_expirationMonth* | Two-digit month in which the credit card expires. Format: MM. Possible values: 01 through 12. The leading 0 is required. | Required | String | 2 |
S | card_expirationYear* | Four-digit year in which the credit card expires. Format: YYYY. | Required | String | 4 |
T | card_cardType* | Type of card to authorize. This field is required if the card type is JCB (007), and optional for all other card types.
| Required | String | 3 |
U | card_cvIndicator | Card verification indicator used to indicate if a card verification value was sent. Accepted by FDMS Nashville . Possible values:
| Optional | String (Numbers Only) | 4 |
V | card_cvNumber | Card verification number. | Optional | String (Numbers Only) | 2 |
W | subscription_title | Name or title of the subscription. | Optional | String | 60 |
X | recurringSubscriptionInfo_frequency* | Frequency of payments. Possible values:
| Required | String | 20 |
Y | recurringSubscriptionInfo_numberOfPayments | Number of payments for an installment subscription. The maximum allowed value is 156, which corresponds to 3 years of weekly payments. | Optional (Required for "installment" subscriptions) | Integer | 3 |
Z | recurringSubscriptionInfo_startDate | Date when your customer is billed for the first time for installment and recurring subscriptions. Use format YYYYMMDD. See Setting the Start Date for the Subscription for information about how to determine the start date. | Optional | Integer | 10 |
AA | recurringSubscriptionInfo_approvalRequired | Whether the subscription uses approval-required payments. For more information, see Automatic or Approval-Required Payments. Possible values:
| Optional | String | 5 |
AB | recurringSubscriptionInfo_automaticRenew | Whether to automatically renew the payment schedule for the subscription. Possible values:
| Optional | String | 5 |
AC | comments | Optional comments you have about the authorization. These comments will not be shown to the customer. | Optional | String | 255 |
AD | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AE | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AF | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AG | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AH | merchantSecureData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AI | merchantSecureData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AJ | merchantSecureData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AK | merchantSecureData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AL | paySubscriptionCreateService_disableAutoAuth | Whether to turn off the $1.00 pre-authorization check when creating this particular subscription. You use this if you are configured to use the $1.00 pre-authorization, but for the specific subscription you are creating, you want to override that setting. Possible values:
| Optional | String | 1 |
AM | paySubscriptionCreateService_paymentRequestID | Required when converting an existing authorization to a subscription. The value is that of the requestID reply field from the authorization. | Optional | String | 26 |
AN | paySubscriptionCreateService_paymentRequestToken | The requestToken value returned from a previous request for ccAuthService. This field is required when you are creating a subscription based on information from a credit card authorization. Otherwise, it is not used. The field is an encoded string that contains no confidential information, such as an account or card verification number. The string may contain up to 256 characters.
| Optional | String | 256 |
AO | shipTo_firstName | First name of the person receiving the shipment. | Optional | String | 60 |
AP | shipTo_lastName | Last name of the person receiving the shipment. | Optional | String | 60 |
AQ | shipTo_company | Name of Company receiving the shipment. | Optional | String | 60 |
AR | shipTo_street1 | First line of the address to which to ship the product. | Optional | String | 60 |
AS | shipTo_street2 | Second line of the address to which to ship the product. | Optional | String | 60 |
AT | shipTo_city | City to which to ship the product. | Optional | String | 50 |
AU | shipTo_state | State or province to which to ship the product. Use the two-character codes. | Optional | String | 2 |
AW | shipTo_postalCode | Postal code for the shipping address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Optional | String | 10 |
AX | businessRules_ignoreAVSResult | Use only if you are using automatic pre-authorization. This field overrides that configuration setting and enables you to create the subscription even if the credit card does not pass the AVS check.
NOTE: Do not use this field if you are using Smart Authorization for AVS results. Possible values:
| Optional | String | 5 |
Fields for a Subscription Update Request
This table describes the required and optional fields for specifying a subscription
update request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode* | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | recurringSubscriptionInfo_subscriptionID* | Subscription ID that is returned to you when a subscription is created. Include this field in your request when you update a subscription or an individual payment, or when you retrieve subscription information. Also see Processing a Payment or Credit with a Subscription for information about using a subscription ID when initiating a one-time payment or credit. | Required | String | 26 |
C | purchaseTotals_currency* | Currency used for the order. | Required | String | 5 |
D | recurringSubscriptionInfo_amount* | Amount of the subscription payments, for example, 19.95. For on-demand subscriptions, this value can be 0. Create: Required for installment and recurring subscription; optional for on-demand subscriptions. | Required | String | 15 |
E | purchaseTotals_grandTotalAmount | Grand total for the order.
You must include either this field or item_#_unitPrice in your request.
If you use TSYS Acquiring Solutions as your payment processor,
you can set this field to 0 to check whether the card is lost or stolen. | Optional | String | 15 |
F | billTo_firstName | Customer’s first name. The value should be the same as the one that appears on the card. | Optional | String | 60 |
G | billTo_lastName | Customer’s last name. The value should be the same as the one that appears on the card. | Optional | String | 60 |
H | billTo_customerID | Your identifier for the customer. | Optional | String | 50 |
I | billTo_email* | Customer’s email address, including the full domain name. For example: jdoe@example.com | Required | String | 255 |
J | billTo_street1 | First line of the billing street address. | Optional | String | 60 |
K | billTo_street2 | Second line of the billing street address. Used for additional address information. For example: Attention: Accounts Payable | Optional | String | 60 |
L | billTo_city | City of the billing address. | Optional | String | 50 |
M | billTo_state | State or province of the billing address. Use the two-character codes. | Optional | String | 2 |
N | billTo_country | Country of the billing address. Use the two-character ISO codes. | Optional | String | 2 |
O | billTo_postalCode | Postal code for the billing address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Optional | String | 10 |
P | card_accountNumber | Customer’s credit card number. | Optional | String (Numbers Only) | 20 |
Q | billTo_phoneNumber | Customer’s phone number. | Optional | String | 15 |
R | billTo_company | Customer's Company Name. | Optional | String | 60 |
S | card_expirationMonth | Two-digit month in which the credit card expires. Format: MM. Possible values: 01 through 12. The leading 0 is required. | Optional | String | 2 |
T | card_expirationYear | Four-digit year in which the credit card expires. Format: YYYY. | Optional | String | 4 |
U | card_cardType | Type of card to authorize. This field is required if the card type is JCB (007), and optional for all other card types. Possible values:
| Optional | String | 3 |
V | subscription_title | Name or title of the subscription. | Optional | String | 60 |
W | recurringSubscriptionInfo_approvalRequired | Whether the subscription uses approval-required payments. For more information, see Automatic or Approval-Required Payments. Possible values:
| Optional | String | 5 |
X | recurringSubscriptionInfo_automaticRenew | Whether to automatically renew the payment schedule for the subscription. Possible values:
Cybersource will incorrectly continue billing the customer after the last installment payment. | Optional | String | 5 |
Y | recurringSubscriptionInfo_numberOfPaymentsToAdd | Number of payments to add to an existing installment subscription. | Optional | Integer | 3 |
Z | comments | Optional comments you have about the authorization. These comments will not be shown to the customer. | Optional | String | 255 |
AA | merchantDefinedData_field1 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AB | merchantDefinedData_field2 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AC | merchantDefinedData_field3 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AD | merchantDefinedData_field4 | Four fields that you can use to store information. NOTE: If you are creating a profile based on an authorization, the merchant-defined data fields do not get transferred to the new profile. | Optional | String | 64 |
AE | merchantSecureData_field1 | Storage fields for any type of data. No validation is performed on this field except size check. The data is encrypted before it is stored. | Optional | NA | 100 Bytes |
AF | merchantSecureData_field2 | Storage fields for any type of data. No validation is performed on this field except size check. The data is encrypted before it is stored. | Optional | NA | 100 Bytes |
AG | merchantSecureData_field3 | Storage fields for any type of data. No validation is performed on this field except size check. The data is encrypted before it is stored. | Optional | NA | 100 Bytes |
AH | merchantSecureData_field4 | Storage fields for any type of data. No validation is performed on this field except size check. The data is encrypted before it is stored. | Optional | NA | 2K Bytes |
AI | shipTo_firstName | First name of the person receiving the shipment. | Optional | String | 60 |
AJ | shipTo_lastName | Last name of the person receiving the shipment. | Optional | String | 60 |
AK | shipTo_company | Name of Company receiving the shipment. | Optional | String | 60 |
AL | shipTo_street1 | First line of the address to which to ship the product. | Optional | String | 60 |
AM | shipTo_street2 | Second line of the address to which to ship the product. | Optional | String | 60 |
AN | shipTo_city | City to which to ship the product. | Optional | String | 50 |
AO | shipTo_state | State or province to which to ship the product. Use the two-character codes. | Optional | String | 2 |
AP | shipTo_country | Country to which to ship the product. Use the two-character ISO codes. | Optional | String | 2 |
AQ | shipTo_postalCode | Postal code for the shipping address. The postal code must consist of 5 to 9 digits. For a 9-digit postal code, use this format:
| Optional | String | 10 |
Fields for a Subscription Cancellation Request
This table describes the required and optional fields for specifying a subscription
cancellation request.
Field names are listed in the table as they appear in batch file templates.
An asterisk after a field name indicates that the field is required for an authorization request.
When you create a batch file based on a template, remove any asterisks from field names.
Column | Field Name | Description | Required? | Data Type | Length |
|---|---|---|---|---|---|
A | merchantReferenceCode * | Merchant-generated order reference or tracking number. | Required | String | 50 |
B | recurringSubscriptionInfo_subscriptionID* | Subscription ID that is returned to you when a subscription is created. Include this field in your request when you update a subscription or an individual payment, or when you retrieve subscription information. Also see Processing a Payment or Credit with a Subscription for information about using a subscription ID when initiating a one-time payment or credit. | Required | String | 26 |
C | recurringSubscriptionInfo_status* | Status of the subscription. Set this field to cancel to cancel the future scheduled payments for an installment or recurring subscription. | Required | String | 15 |
VISA Platform Connect: Specifications and Conditions for
Resellers/Partners
The following are specifications and conditions that apply to a Reseller/Partner enabling
its merchants through
Cybersource for
. Failure to meet any of the specifications and conditions below is
subject to the liability provisions and indemnification obligations under
Reseller/Partner’s contract with Visa/Cybersource.Visa Platform Connect
(“VPC”)
processing- Before boarding merchants for payment processing on a VPC acquirer’s connection, Reseller/Partner and the VPC acquirer must have a contract or other legal agreement that permits Reseller/Partner to enable its merchants to process payments with the acquirer through the dedicated VPC connection and/or traditional connection with such VPC acquirer.
- Reseller/Partner is responsible for boarding and enabling its merchants in accordance with the terms of the contract or other legal agreement with the relevant VPC acquirer.
- Reseller/Partner acknowledges and agrees that all considerations and fees associated with chargebacks, interchange downgrades, settlement issues, funding delays, and other processing related activities are strictly between Reseller and the relevant VPC acquirer.
- Reseller/Partner acknowledges and agrees that the relevant VPC acquirer is responsible for payment processing issues, including but not limited to, transaction declines by network/issuer, decline rates, and interchange qualification, as may be agreed to or outlined in the contract or other legal agreement between Reseller/Partner and such VPC acquirer.
DISCLAIMER: NEITHER VISA NOR CYBERSOURCE WILL BE RESPONSIBLE OR LIABLE FOR ANY ERRORS OR
OMISSIONS BY THE
Visa Platform Connect
ACQUIRER IN PROCESSING TRANSACTIONS. NEITHER VISA
NOR CYBERSOURCE WILL BE RESPONSIBLE OR LIABLE FOR RESELLER/PARTNER BOARDING MERCHANTS OR
ENABLING MERCHANT PROCESSING IN VIOLATION OF THE TERMS AND CONDITIONS IMPOSED BY THE
RELEVANT Visa Platform Connect
ACQUIRER.