We use Accept Host Form page to create customer payment profiles and experience some issue on our sandbox account
In the form date is filled with the mask (MM/YY) and we want to pass 11/65 (11/2065). It was verified completed.
Hosted Form screenshot:
But on getCustomerPaymentProfileRequest Authorize.NET respond that CustomerPaymentProfile was created with ExpDate – 11/1965
Response:
{
"paymentProfile": {
"customerProfileId": "1813777948",
"customerPaymentProfileId": "1808460830",
"payment": {
"creditCard": {
"cardNumber": "XXXX4137",
"expirationDate": "1965-11",
"cardType": "AmericanExpress"
}
}
},
"refId": "9149541511113735551",
"messages": {
"resultCode": "Ok",
"message": [
{
"code": "I00001",
"text": "Successful."
}
]
}
Is it Payment Form issue? Could we override date format somehow? For example, via settings for Hosted Page. How we request token for Hosted Page:
{
"getHostedProfilePageRequest": {
"merchantAuthentication": {
"name": "7tM3uvZ62EL",
"transactionKey": "4n6SSLvm363m832A"
},
"refId": 9149541511113735546,
"customerProfileId": "1813777948",
"hostedProfileSettings": {
"setting": [
{
"settingName": "hostedProfileReturnUrl",
"settingValue": "http://10.112.251.223:6300/solutions/closePGPopup.jsp"
},
{
"settingName": "hostedProfileValidationMode",
"settingValue": "testMode"
},
{
"settingName": "hostedProfileBillingAddressOptions",
"settingValue": "showNone"
},
{
"settingName": "hostedProfileReturnUrlText",
"settingValue": "Continue"
},
{
"settingName": "hostedProfilePageBorderVisible",
"settingValue": "false"
},
{
"settingName": "hostedProfileHeadingBgColor",
"settingValue": "E0E0E0"
},
{
"settingName": "hostedProfileBillingAddressRequired",
"settingValue": "false"
},
{
"settingName": "hostedProfileCardCodeRequired",
"settingValue": "true"
},
{
"settingName": "hostedProfileManageOptions",
"settingValue": "showPayment"
}
]
}
}
}
12-11-2017 12:41 AM - edited 12-11-2017 12:42 AM
@WinZib0NE Yes, you can update the expiration date by using UpdateCustomerPaymentProfile by using the YYYY format. <expirationDate>2026-01</expirationDate>
<updateCustomerPaymentProfileRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name>XXXXXX</name>
<transactionKey>XXXXX</transactionKey>
</merchantAuthentication>
<customerProfileId>10000</customerProfileId>
<paymentProfile>
<billTo>
<firstName>John</firstName>
<lastName>Doe</lastName>
<company></company>
<address>123 Main St.</address>
<city>Bellevue</city>
<state>WA</state>
<zip>98004</zip>
<country>USA</country>
<phoneNumber>000-000-0000</phoneNumber>
<faxNumber></faxNumber>
</billTo>
<payment>
<creditCard>
<cardNumber>4111111111111111</cardNumber>
<expirationDate>2026-01</expirationDate>
</creditCard>
</payment>
<defaultPaymentProfile>false</defaultPaymentProfile>
<customerPaymentProfileId>20000</customerPaymentProfileId>
</paymentProfile>
<validationMode>liveMode</validationMode>
</updateCustomerPaymentProfileRequest>
12-11-2017 05:15 PM
I don't want to update payment profile via additional Update call.
Is there any way to override date format for Accept Hosted Form?
12-13-2017 02:08 AM