Simple Order API Fields
Formatting Restrictions
Unless otherwise noted, all of the field names listed are case sensitive, and the fields accept special characters, such as @, #, and %.
The values of the item_#_ fields must not contain carets (^) or colons (:) because these characters are reserved for use by CyberSource services. The values of all request fields must not contain new lines or carriage returns. However, they can contain embedded spaces and any other printable characters. All leading and trailing spaces will be removed.
Data Type Definitions
For more information about these data types, see the World Wide Web Consortium (W3C) XML Schema Part 2: Datatypes specification:
http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/
Integer—Whole number {..., -3, -2, -1, 0, 1, 2, 3, ...}.
String—Sequence of letters, numbers, spaces, and special characters, such as @ and #.
Request Fields
See Getting Started with CyberSource Advanced for the Simple Order API for information on how name-value pair names relate to their corresponding XML element names.
If the BBAN is included, the bankInfo_bankCode field and the bankInfo_branchCode field are required if the billTo_country value is FR (France).
If the BBAN is included, the bankInfo_bankCode field is required if the billTo_country value is one of the following:
If the BBAN is included, the bankInfo_bankCode field and the bankInfo_branchCode fields are required if the billTo_country value is FR (France).
Customer’s first name. The size of the billTo_firstName and billTo_lastName fields combined cannot exceed 27 characters.
Customer’s last name. The size of the billTo_firstName and billTo_lastName fields combined cannot exceed 27 characters.
Validate (R if billTo_country is US or CA)
Direct Debit (R if billTo_country is US or CA)
Refund (R if billTo_country is US or CA)
State for the billing address. Required if billTo_country value is U.S. or Canada. Otherwise optional. Possible values are the State, Province, and Territory Codes for the United States and Canada.
The requestID value returned from a previous request for the directDebitService service. Providing this information creates a follow-on direct debit refund and reduces the number of API fields you must provide. For more information about follow-on services, see Getting Started with CyberSource Advanced for the Simple Order API.
The requestToken value returned from a previous request for the directDebitService service.
Flag indicating whether or not to include the directDebitRefundService service in your request. Possible values:
Flag indicating whether or not to include directDebitService in your request. Possible values:
The requestID value returned from a previous request for the directDebitValidateService service. Providing this information creates a follow-on direct debit and reduces the number of API fields you must provide. For more information about follow-on services see Getting Started with CyberSource Advanced for the Simple Order API.
The requestToken value returned from a previous request for the directDebitValidateService service.
Flag indicating whether or not to include the directDebitValidateService service in your request. Possible values:
Product’s name. Required if item_#_productCode is not default, stored_value, or one of the values related to shipping or handling.
Product identifier code. Required if item_#_productCode is not default, stored_value, or one of the values related to shipping or handling.
Quantity of the product being purchased. The default is 1. Required if item_#_productCode is not default, stored_value, or one of the values related to shipping or handling.
Tax amount associated with this item. The field is additive. For example, if you send one item including the unitPrice field of 10.00 and the taxAmount field of 0.80, and you send another item with the unitPrice field of 20.00 and the taxAmount field of 1.60, the total amount authorized will be for 32.40, not 30.00 with 2.40 of tax included.
The item_#_unitPrice field and the item_#_taxAmount field must be in the same currency.
If you include the item_#_taxAmount field, and you also include the taxService service in your request, the taxService service will not calculate tax for the item. Instead, it will return the value in the item_#_taxAmount field.
Per-item price of the product. You must include either this field or purchaseTotals_grandTotalAmount in your request. This value cannot be negative. See the information about items and grand totals in Getting Started with CyberSource Advanced for the Simple Order API.
This field is optional for standalone direct debit with BBAN requests. It is not used in other requests. If you include the prenoteTransaction field in your request, you must also include the purchaseTotals_grandTotalAmount field in your request and set the value to 0.
Note Based on the BACS Automated Direct Debit Instruction Service (AUDDIS), U.K. merchants have to lodge the mandate ID prior to a direct debit deposit. The process requires the biller to send a pre-notification to the payer at least five calendar days before collecting the payment. See UK Domestic Direct Debits (BACS)
Grand total for the order. You must include either this field or item_#_unitPrice in your request. For more information about items and grand totals, see Getting Started with CyberSource Advanced for the Simple Order API.
Note If you include the prenoteTransaction field in your request, you must also include this field in your request and set the value to 0.
Direct Debit (R if any shipTo_ fields are included in the request.)
First name of the person receiving the product. The size of shipTo_firstName and shipTo_lastName fields combined cannot exceed 27 characters.
Last name of the person receiving the product. The size of shipTo_firstName and shipTo_lastName fields combined cannot exceed 27 characters.
Direct Debit (R if shipTo_country is US or CA)
Direct Debit (R if any shipTo_ fields are included in the request.)
Reply Fields
 
The amount sent in the direct debit validate request in either the item_#_unitPrice or purchaseTotals_grandTotalAmount fields.
Reason Codes
The codes in the following table give the results of your Simple Order API request. They are returned in the reasonCode and <service>_reasonCode reply fields.
Your error handler should use the decision field to obtain the result if it receives a reason code that it does not recognize.
Possible action: See the reply fields invalidField_0...N for which fields are invalid. Resend the request with the correct information.