| Secure Acceptance Silent Order Post: Field Mapping Guide | M: Mandatory O: Optional N/A: Not required |
|||||||||||||||||||||||
| Request Fields | ||||||||||||||||||||||||
| Field Information | Comparative value for other CyberSource Services | Which fields are needed for which service | ||||||||||||||||||||||
| Secure Acceptance Field Name | Data Type & Length | Permitted values | Comments | Links | Legacy HOP/SOP Field Names |
SO API Field Names |
Accept Payments | Accept Payments & Create a Payment Token | Create a Payment Token | Update a Payment Token | Make a token based payment | Set up a Recurring Billing series of payments | Decision Manager fraud protection | Payment Types | ||||||||||
| access_key | String (32) | {key generated in UBC} | See ' Creating a Security Key' section of Configuration Guide | Link | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| profile_id | String (7) | {string, created in UBC} | See ' Creating a SOP Profile' section of Configuration Guide. Must be exactly 7 characters in length. | Link | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| signature | - | {Base64 Signature} | Generated using the signing method for the access_key field supplied. | - | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| signed_date_time | String (20) | {UTC Date & Time format} | Your system time must be accurate to avoid payment processing errors related to the signed_date_time field. | - | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| signed_field_names | Variable | {Comma separated list of signed field names} | The names of all fields submitted must be included in this field or the unsigned_field_names field. To avoid increasing PCI DSS scope, do not sign the card_number or card_cvn fields. | - | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| unsigned_field_names | Variable | {Comma separated list of unsigned field names} | Included any unsigned field names you submit with the request - e.g. card_number. Included 'unsigned_field_names' in the signed_field_names field. | - | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| transaction_uuid | String (50) | {Any} | You should generate a unique reference for each transaction. We recommend, but do not mandate, the uuid format. | Link | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| locale | String (5) | - | Specifies the language of customer facing content, e.g. email receipts. | ### Does not exist ### | ### Does not exist ### | M | M | M | M | M | M | M | All | |||||||||||
| transaction_type | String (60) | n authorization n sale n authorization,create_payment_token n sale,create_payment_token n authorization,update_payment_token n sale,update_payment_token n create_payment_token |
In SA this is a Comma delimited string of requested
services eg. transaction_type=authorization,sale In SOAPI this is a list of service named values with a true/false value eg. ccAuthService_run=true ccCaptureService_run=true |
- | orderPage_transactionType | ### Does not exist ### | M | M | M | M | M | M | M | All | ||||||||||
| amount | String (50) | .1234567890 | Total amount for the order. Must be greater than or equal to zero. Where line item detail is provided, this value must equal the total amount of each line item multiplied by their quantity, and include the tax amount. | - | amount | purchaseTotals_grandTotalAmount | M | M | O | O | M | O | O | All | ||||||||||
| bill_payment | String (5) | true,false | True marks payment as a VISA Bill Payment, or in conjunction with the deb_indicator field, a VISA Debt Repayment. | Link | ### Does not exist ### | ccAuthService_billPayment | O | O | N/A | N/A | O | N/A | N/A | Card | ||||||||||
| debt_indicator | String (5) | true,false | True marks payment as a VISA Debt Repayment, providing bill_payment field is also set to True. | Link | ### Does not exist ### | debtIndicator | O | O | N/A | N/A | O | N/A | N/A | Card | ||||||||||
| bill_to_address_city | String (50) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_city | billTo_city | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_address_country | String (2) | {2 letter ISO Country Code} | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | Link | billTo_country | billTo_country | M | M | M | M | O | M | O | All | ||||||||||
| bill_to_address_line1 | String (60) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_street1 | billTo_street1 | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_address_line2 | String (60) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_street2 | billTo_street2 | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_address_postal_code | String (10) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_postalCode | billTo_postalCode | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_address_state | {See notes} | {2 letter state code for US and CA, otherwise string 50} | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | Link | billTo_state | billTo_state | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_company_name | String (40) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_company | billTo_company | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_email | String (255) | {must be a valid email address} | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_email | billTo_email | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_forename | String (60) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_firstName | billTo_firstName | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_phone | String (15) | ( ),+-.*#xX1234567890 | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_phoneNumber | billTo_phoneNumber | O | O | O | O | O | O | O | All | ||||||||||
| bill_to_surname | String (60) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | billTo_lastName | billTo_lastName | O | O | O | O | O | O | O | All | ||||||||||
| card_cvn | String (4) | - | To minimize your PCI DSS scope, ensure that this field is not posted to your own server - for example: do not sign this field, or use server-side validation. | - | card_cvNumber | card_cvNumber | N/A | N/A | N/A | N/A | N/A | N/A | N/A | Card | ||||||||||
| card_expiry_date | String (7) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | card_expirationMonth,card_expirationYear | card_expirationMonth, card_expirationYear | N/A | N/A | N/A | N/A | N/A | N/A | N/A | Card | ||||||||||
| card_number | String (20) | - | To minimize your PCI DSS scope, ensure that this field is not posted to your own server - for example: do not sign this field, or use server-side validation. | - | card_accountNumber | card_accountNumber | N/A | N/A | N/A | N/A | N/A | N/A | N/A | Card | ||||||||||
| card_type | String (3) | 001,002,003,004,005,006,007,014,021,024,031,033,034,035,036,037,042,043 | Display card types to your customer during the checkout process. See the link referenced to see the list of card types and the associated value you will need to provide in this field. | Link | card_cardType | card_cardType | O | O | O | O | N/A | O | O | Card | ||||||||||
| company_tax_id | String (9) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| driver_license_number | String (30) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| driver_license_state | String (2) | {See References} | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | Link | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| echeck_account_name | String (255) | - | The name on the customer's bank account. Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| echeck_account_number | Non-negative integer (17) | - | Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | - | - | M | M | M | O | N/A | M | O | eCheck | ||||||||||
| echeck_account_type | String (1) | C,S,X | Check which fields are required by your processor
to determine whether to make this a mandatory field on your checkout. C: Checking S: Savings X: Corporate Checking (USD only) |
- | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| echeck_bank_name | String (50) | - | The name of the bank that holds the customer's account. Check which fields are required by your processor to determine whether to make this a mandatory field on your checkout. | - | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| echeck_check_number | Non-negative integer (8) | - | To minimize your exposure to payment data, ensure that this field is not posted to your own server - for example: do not sign this field, or use server-side validation. | - | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| echeck_routing_number | Non-negative integer (9) | - | To minimize your exposure to payment data, ensure that this field is not posted to your own server - for example: do not sign this field, or use server-side validation. | - | - | - | M | M | M | O | N/A | M | O | eCheck | ||||||||||
| echeck_sec_code | String (3) | CCD,PPD,TEL,WEB | Check which fields are required by your processor
to determine whether to make this a mandatory field on your checkout. See implementation guide for definition of values. |
Link | - | - | O | O | O | O | N/A | O | O | eCheck | ||||||||||
| reference_number | String (50) | - | This should be unique per transaction, for example the order number/reference generated by your system. | - | orderNumber | merchantReferenceCode | M | M | M | M | M | O | O | All | ||||||||||
| consumer_id | String (50) | - | A consumer ID you can set and store against a token. | - | billTo_customerID | billTo_customerID | N/A | O | O | O | O | O | O | All | ||||||||||
| currency | String (3) | {3 character ISO Currency Code} | Ensure your processor(s) supports the currency you supply for the payment method selected. | Link | currency | purchaseTotals_currency | M | M | O | O | M | O | O | All | ||||||||||
| customer_cookies_accepted | String (5) | true,false | Used for Decision Manager risk profiling. | - | billTo_httpBrowserCookies Accepted |
billTo_httpBrowserCookies Accepted |
N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| customer_gift_wrap | String (5) | true,false | Used for Decision Manager risk profiling. | - | invoiceHeader_isGift | invoiceHeader_isGift | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| customer_ip_address | String (15) | - | Must be a valid IP address. | - | billTo_ipAddress | billTo_ipAddress | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| date_of_birth | String (8) | {Use the format YYYYMMDD} | - | - | billTo_dateOfBirth | billTo_dateOfBirth | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| ignore_avs | String (5) | true,false | Used to skip AVS rules you may have set up in DM. | - | orderPage_ignoreAVS | businessRules_ignoreAVSResult | N/A | N/A | N/A | N/A | N/A | N/A | O | Card | ||||||||||
| ignore_cvn | String (5) | true,false | Used to skip CVN rules you may have set up in DM. | - | orderPage_ignoreCVN | businessRules_ignoreCVResult | N/A | N/A | N/A | N/A | N/A | N/A | O | Card | ||||||||||
| merchant_defined_data# | String (100) | - | # Represents a number from 1 to 100. The first four
of these will be stored against the token, if the Create or Update Token
services are being called. Up to 100 defined data fields can be stored
against an individual transaction and/or used within the DM service. Do use these fields for storing Personally Identifying Information. |
- | merchantDefinedData# | merchantDefinedData_mddField_# | O | O | O | O | O | O | O | All | ||||||||||
| merchant_secure_data# | String (100) | - | # Represents a number from 1 to 3. CyberSource encrypts this data before storing it in the database. Will be stored against a Token and/or an authorization/sale depending on the transaction_type. | - | ### Does not exist ### | merchantSecureData_field# | O | O | O | O | O | O | O | All | ||||||||||
| merchant_secure_data4 | String (2000) | - | The fourth Secure Data field has a larger length of 2,000 characters. See comments for previous fields. | - | ### Does not exist ### | merchantSecureData_field4 | O | O | O | O | O | O | O | All | ||||||||||
| override_custom_receipt_page | String (255) | {Must be a valid URL, including protocol, e.g. http://example.com/receipt} | Used in Secure Acceptance to allow merchants to override the URL of receipt page indicated in the UBC. | - | orderPage_receiptResponseURL | ### Does not exist ### | O | O | O | O | O | N/A | N/A | All | ||||||||||
| payment_method | String (30) | card,echeck | Used to determine the payment method. If not provided, is assumed to be card. | - | paymentOption | ### Does not exist ### | M | M | M | M | N/A | M | N/A | eCheck | ||||||||||
| returns_accepted | String (5) | true,false | Used for Decision Manager risk profiling. | - | invoiceHeader_returnsAccepted | invoiceHeader_returnsAccepted | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| ship_to_address_line1 | String (60) | - | - | - | shipTo_street1 | shipTo_street1 | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_address_line2 | String (60) | - | - | - | shipTo_street2 | shipTo_street2 | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_address_city | String (50) | - | - | - | shipTo_city | shipTo_city | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_address_state | {See notes} | {2 letter state code for US and CA, otherwise string 50} | String (2) when country is US or CA, otherwise String (50) | Link | shipTo_state | shipTo_state | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_address_country | String (2) | {2 letter ISO Country Code} | If US or CA entered, this restricts the ship_to_address_state field to certain Territory or Country codes. | Link | shipTo_country | shipTo_country | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_address_postal_code | String (10) | - | - | - | shipTo_postalCode | shipTo_postalCode | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_company_name | String (40) | - | - | - | shipTo_company | shipTo_company | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_forename | String (60) | - | - | - | shipTo_firstName | shipTo_firstName | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_surname | String (60) | - | - | - | shipTo_lastName | shipTo_lastName | O | O | O | O | O | O | O | All | ||||||||||
| ship_to_phone | String (15) | ( ),+-.*#xX1234567890 | - | - | shipTo_phoneNumber | shipTo_phoneNumber | O | O | O | O | O | O | O | All | ||||||||||
| shipping_method | String (50) | sameday,oneday,twoday,threeday,lowcost,pickup,other,none | Used for Decision Manager risk profiling. | - | shipTo_shippingMethod | shipTo_shippingMethod | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| tax_amount | String (15) | .1234567890 | Will display during the checkout experience, if enabled on the Payment Form section of the profile in the EBC. If line items are used, this should equal the sum of each line item's tax amount multiplied by quantity. | - | taxAmount | purchaseTotals_taxAmount | O | O | N/A | N/A | O | O | O | All | ||||||||||
| 0 | payment_token | - | - | You will receive this value when you create (or, for format preserving tokens when you update) a token. Use this to retrieve billing and shipping details stored against the token. | - | ### Does not exist ### | recurringSubscriptionInfo_subscriptionID | N/A | N/A | N/A | M | M | N/A | N/A | All | |||||||||
| payment_token_comments | String (255) | - | Comments in this field are stored against the token, and displayed in the Subscription Detail report. | - | comments | comments | N/A | O | O | O | O | N/A | N/A | All | ||||||||||
| payment_token_title | String (60) | - | Comments in this field are stored against the token, and displayed in the Subscription Detail report. | - | subscription_title | subscription_title | N/A | O | O | O | O | N/A | N/A | All | ||||||||||
| recurring_amount | - | String (15) | - | - | recurringSubscriptionInfo_amount | recurringSubscriptionInfo_amount | N/A | N/A | N/A | N/A | N/A | M | N/A | All | ||||||||||
| recurring_frequency | String (20) | weekly,monthly,quarterly,annually,bi-weekly,semi-monthly,quad-weekly,semi-annually | weekly: once every seven days, commencing on the
recurring_start_date. monthly: once every month, commencing on the recurring_start_date. Start date of 31st/30th/29th will lead to billings on the last day of shorter months. quarterly: Once every three months, see monthly for end of month billing date logic. annually: Once a year. bi-weekly: Once every 14 days. semi-monthly: Billed on the 1st and 15th of each month, regardless of start date specified. quad-weekly: Once every 28 days. semi-annually: Once every 6 months, see monthly for end of month billing date logic. |
- | recurringSubscriptionInfo_frequency | recurringSubscriptionInfo_frequency | N/A | N/A | N/A | N/A | N/A | M | N/A | All | ||||||||||
| recurring_number_of_installments | String (3) | {any number between 1 and 156} | Optional field containing the number of installments, payments will cease once the number of installments specified has elapsed. This field cannot be used for an update to a subscription. | - | recurringSubscriptionInfo_numberOfPayments | recurringSubscriptionInfo_numberOfPayments | N/A | N/A | N/A | N/A | N/A | O | N/A | All | ||||||||||
| recurring_start_date | String (8) | {format YYYYMMDD} | Minimum date is tomorrow's. If not populated or in the past, will default to tomorrows date. | - | recurringSubscriptionInfo_startDate | recurringSubscriptionInfo_startDate | N/A | N/A | N/A | N/A | N/A | O | N/A | All | ||||||||||
| device_fingerprint_id | String (88) | - | Set to the session ID used in the Decision Manager Device Fingerprint code segments. | - | deviceFingerprintID | deviceFingerprintID | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| item_#_code | String (255) | l default l adult_content l coupon l electronic_good l electronic_software l gift_certificate l service l subscription l handling_only l service l shipping_and_handling l shipping_only l subscription |
Indicates the type of good. # represents the line item number, starting at 0 with a maximum value of 49. | - | item_#_productCode | item_#_productCode | O | O | N/A | N/A | O | O | O | All | ||||||||||
| item_#_name | String (255) | - | # represents the line item number, starting at 0 with a maximum value of 49. | - | item_#_productName | item_#_productName | O | O | N/A | N/A | O | O | O | All | ||||||||||
| item_#_quantity | String (10) | {Positive integer} | Required if one of the following item codes is
used: l adult_content l coupon l electronic_good l electronic_software l gift_certificate l service l subscription # represents the line item number, starting at 0 with a maximum value of 49. |
- | item_#_quantity | item_#_quantity | O | O | N/A | N/A | O | O | O | All | ||||||||||
| item_#_sku | String (255) | - | Your product identifier.
Required if one of the following item codes is used: l adult_content l coupon l electronic_good l electronic_software l gift_certificate l service l subscription # represents the line item number, starting at 0 with a maximum value of 49. |
- | item_#_productSKU | item_#_productSKU | O | O | N/A | N/A | O | O | O | All | ||||||||||
| item_#_tax_amount | String (15) | {Positive integer} | Tax amount for the line item. Cannot be a negative number. Is the same currency as the total amount. # represents the line item number, starting at 0 with a maximum value of 49. | - | item_#_taxAmount | item_#_taxAmount | O | O | N/A | N/A | O | O | O | All | ||||||||||
| item_#_unit_price | String (15) | {Positive integer} | Per unit price for the
item, cannot be a negative number. # represents the line item number, starting at 0 with a maximum value of 49. |
- | item_#_unitPrice | item_#_unitPrice | O | O | N/A | N/A | O | O | O | All | ||||||||||
| line_item_count | String (2) | {Sequential number from 0 to 49} | This is a required field if any item_#_* fields are used. Should equal the total number of line items included in the request. | - | lineItemCount | ### Does not exist ### | O | O | N/A | N/A | O | O | O | All | ||||||||||
| journey_type | String (32) | - | Type of travel, such as: one way or round trip. | - | decisionManager_travelData_journeyType | decisionManagerTravelData_journeyType | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| complete_route | String (255) | - | Concatenation of individual travel legs in the
format for example: SFO-JFK:JFK-LHR:LHR-CDG. Use this field or the journey_leg#_dest and _orig fields. |
Link | decisionManager_travelData_completeRoute | decisionManager_travelData_completeRoute | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| journey_leg#_dest | String (3) | {See comments} | Airport code for the
destination of the leg of the trip designated by the pound (#) symbol in the field name. This code is usually three digits long, for example: SFO = San Francisco. Do not use the colon (:) or the dash (-). See link for list of airport codes. Note In your request, send either the complete route or the individual legs (_leg#_orig and _leg#_dest). If you send all the fields, the complete route takes precedence over the individual legs. |
Link | decisionManager_travelData_leg#_dest | decisionManager_travelData_leg_#_destination | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| journey_leg#_orig | String (3) | {See comments} | See above | Link | decisionManager_travelData_leg#_orig | decisionManager_travelData_leg_#_origin | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| departure_time | DateTime (25) | {See comments} | Departure date and time of
the first leg of the trip. Use one of the following formats: n yyyy-MM-dd HH:mm z n yyyy-MM-dd hh:mm a z n yyyy-MM-dd hh:mma z HH = hour in 24-hour format hh = hour in 12-hour format a = am or pm (case insensitive) z = time zone of the departing flight, for example: If the airline is based in city A, but the flight departs from city B, z is the time zone of city B at the time of departure. Important For travel information, use GMT instead of UTC, or use the local time zone. Examples 2011-03-20 11:30 PM PDT 2011-03-20 11:30pm GMT 2011-03-20 11:30pm GMT-05:00 Eastern Standard Time: GMT-05:00 or EST Note When specifying an offset from GMT, the format must be exactly as specified in the example. Insert no spaces between the time zone and the offset. |
- | decisionManager_travelData_departureDateTime | decisionManager_travelData_departureDateTime | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||
| skip_decision_manager | String (5) | true,false | Allows DM to be skipped on a per transaction basis, even if DM is enabled an profile level. | - | ### Does not exist ### | decisionManager_enabled | N/A | N/A | N/A | N/A | N/A | N/A | O | All | ||||||||||