<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Unclear basic workflow documentation - Accept.js in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57304#M32031</link>
    <description>&lt;P&gt;Where can I get examples of how to pull user payment info (from Authorize.net payment profile) using Accept.js (client side), so that said info never touches the server?&lt;BR /&gt;&lt;BR /&gt;Then, how do I edit/save the payment info using Accept.js&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Also, how do I create a new payment profile using Accept.js, again, so that the info never touches the server?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The documentation provided by Authorize.net is very jumbled and incomplete, with not a lot of coherence. I've read, re-read and scratched my head. Also, emailing support isn't really any help either, because all htey do is reply with cannexd responses that are links to the disjointed documentation that I've already read (and that didn't help).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;</description>
    <pubDate>Mon, 20 Mar 2017 17:14:24 GMT</pubDate>
    <dc:creator>jima</dc:creator>
    <dc:date>2017-03-20T17:14:24Z</dc:date>
    <item>
      <title>Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57304#M32031</link>
      <description>&lt;P&gt;Where can I get examples of how to pull user payment info (from Authorize.net payment profile) using Accept.js (client side), so that said info never touches the server?&lt;BR /&gt;&lt;BR /&gt;Then, how do I edit/save the payment info using Accept.js&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Also, how do I create a new payment profile using Accept.js, again, so that the info never touches the server?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The documentation provided by Authorize.net is very jumbled and incomplete, with not a lot of coherence. I've read, re-read and scratched my head. Also, emailing support isn't really any help either, because all htey do is reply with cannexd responses that are links to the disjointed documentation that I've already read (and that didn't help).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;</description>
      <pubDate>Mon, 20 Mar 2017 17:14:24 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57304#M32031</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-03-20T17:14:24Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57308#M32035</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Accept.js is for one-time transactions. For working with payment profiles stored on the Authorize.Net side, you'd want to check out our &lt;A href="http://developer.authorize.net/api/reference/features/customer_profiles.html" target="_self"&gt;Customer Profiles API&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;One of the uses of the Customer Profiles API is to use the Accept Customer hosted forms to allow customers to enter their credit card details directly, never touching your server.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Have a look at the Customer Profiles documentation, and if there are things that are still unclear, please let us know.&lt;/P&gt;</description>
      <pubDate>Mon, 20 Mar 2017 18:03:57 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57308#M32035</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-20T18:03:57Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57312#M32039</link>
      <description>&lt;P&gt;Accept.js is STILL for one-time transactions? I read, back in 2011, that it would "soon be upgraded" to eliminate that limitation. I guess that never happened?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have read a lot about, and played with the Customer Profiles API as well. Same basic problems exist there too, as regards unclear documentation that is quite disjointed, with no clear process flow. This solution, as far as I understand it, isn't ideal because it doesn't seem to offer such things as pre-loading of existing payment data into payment forms (for editing), and I cannot seem to find a way to retrieve the payment data (client-side), for display into our own form, and even if I could, I'm not seeing a method to submit the edit (using my own form) that doesn't involve the data touching our server(s).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In part, I understand that there are a lot of potential variances to workflow, but there are at least a couple of really rudimentary/basic workflows that could be clearly walked-through, tutorial style, that would help a ton of people trying to implement.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there ANY possibility of getting a direct phone call or Skype conversation with someone who could help walk me through this?&lt;/P&gt;</description>
      <pubDate>Mon, 20 Mar 2017 18:20:55 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57312#M32039</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-03-20T18:20:55Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57314#M32041</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Accept.js has only been in existence less than a year, so I'm not sure what you might have read there. You&amp;nbsp;&lt;EM&gt;can&amp;nbsp;&lt;/EM&gt;use the payment nonce returned from an Accept.js call in an API call to our Customer Profiles API, so maybe that's what you had seen. You can use this payment nonce in most API calls that might have previously required you to send an actual credit card number.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;An example would be if you created your own form to manage a customer's payment profile. You can load the existing payment profile information (with masked card numbers) using our API. Then you can have the customer enter their new credit card number which you convert to a nonce using Accept.js. Then, you'd call &lt;A href="http://developer.authorize.net/api/reference/index.html#customer-profiles-update-customer-payment-profile" target="_self"&gt;updateCustomerPaymentProfileRequest&lt;/A&gt;&amp;nbsp;(for example), sending this block:&lt;/P&gt;&lt;PRE&gt;    &amp;lt;payment&amp;gt;
      &amp;lt;opaqueData&amp;gt;
        &amp;lt;dataDescriptor&amp;gt;COMMON.ACCEPT.INAPP.PAYMENT&amp;lt;/dataDescriptor&amp;gt;
        &amp;lt;dataValue&amp;gt;9471056021205027705001&amp;lt;/dataValue&amp;gt;
      &amp;lt;/opaqueData&amp;gt;  
    &amp;lt;/payment&amp;gt;&lt;/PRE&gt;&lt;P&gt;instead of this block:&lt;/P&gt;&lt;PRE&gt;    &amp;lt;payment&amp;gt;
      &amp;lt;creditCard&amp;gt;
        &amp;lt;cardNumber&amp;gt;4111111111111111&amp;lt;/cardNumber&amp;gt;
        &amp;lt;expirationDate&amp;gt;2026-01&amp;lt;/expirationDate&amp;gt;
      &amp;lt;/creditCard&amp;gt;
    &amp;lt;/payment&amp;gt;&lt;/PRE&gt;&lt;P&gt;So, if that's the kind of usage you're referring to, my apologies for the misunderstanding. I'll clarify my earlier statement. Instead of saying "&lt;SPAN&gt;Accept.js is for one-time transactions", it'd be more clear to say "Accept.js is for the conversion of payment card data into a single use payment token (or 'payment nonce') that can be used in place of the card data in a subsequent request to the Authorize.Net API". So, Accept.js doesn't directly support profiles, but it doesn't directly support anything. It's just the preparatory step to get you back some data that can be used in whatever your next step is.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Accept.js documentation is currently in the middle of a big revamp internally, so I'll make sure that some additional text gets added&amp;nbsp;clarifying that concept.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Our other documentation (including the Customer Profile documentation) will be getting that kind&amp;nbsp;of revamp soon. We know there could be more information there, in a clearer fashion. It's a big priority of mine personally to make it happen. We just aren't able to turn it around overnight.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm happy to help walk you through all of this, but I'd prefer to do it here so that the process can be documented for anyone coming by looking for help later.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Let's start by describing your workflow. Are you trying to have every form for profile creation or update hosted on your site, but not have the card data hit your server? If so, you can definitely accomplish that using a combination of Accept.js and the Customer Profiles section of our API.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Or, are you wanting to use hosted forms on our side (like for ease of development)? That would use the "Accept Customer" forms&amp;nbsp;detailed in the &lt;A href="http://developer.authorize.net/api/reference/features/customer_profiles.html" target="_self"&gt;Customer Profiles documentation&lt;/A&gt;. You'd request a token with the details of what you want to do, then use that token in a form post from the customer's browser to our server. The customer's browser then loads up a form customized to what you were trying to do (create a profile, update a profile, etc.)&lt;/P&gt;</description>
      <pubDate>Mon, 20 Mar 2017 19:00:47 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57314#M32041</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-20T19:00:47Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57505#M32223</link>
      <description>&lt;P&gt;Aaron, thank you for your response and for your follow-up questions. I appreciate it.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You asked about a workflow scenario, so here's a basic starting point. In this particular example, there is no need to perform any sort of charge/authorization transaction, it simply needs to be able to populate pre-saved payment info into a form (our form), and display it to the user so that they can review it, and update it if necessary.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Basic use case:&lt;/P&gt;&lt;P&gt;User logs into the system and visits their user profile (where they have stored their payment info). In the profile section, they have the option to review and/or update their creadit card info.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So, given that (first) basic scenario, how can we&amp;nbsp; - using Accept.js - load the form with the pre-saved payment info so that they can review it? I understand that I can use the API to pull that info, I've done that, but doing that means the payment info (while obfuscated) touches our server, which we want to not do.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;After loading the data into the form, how then do we update said payment data, should the user need to make changes? Through the nonce token, right?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Again, thanks for the assistance on this. This really seems like the most basic use scenario, but I can't seem to find any documentation for it.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Apr 2017 15:29:10 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57505#M32223</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-04-03T15:29:10Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57533#M32247</link>
      <description>&lt;P&gt;Another (followup) question I have is, can we use Accept.js to simply save payment information without performing a chage? Something similar to the createCustomerPaymentProfile() method that is found in the API?&lt;BR /&gt;&lt;BR /&gt;Use case:&lt;/P&gt;&lt;P&gt;User logs into the system and visits their user profile, where they have option to save their payment info, but have not. They would now like to input their payment info and save it for future use, but they are not paying for anything at this time.&lt;/P&gt;</description>
      <pubDate>Wed, 05 Apr 2017 15:34:37 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57533#M32247</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-04-05T15:34:37Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57574#M32283</link>
      <description>&lt;P&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Yes, you can use a payment nonce received from Accept.js to create a customer profile, just replace the payment object with the nonce data instead of credit card data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Richard&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 15:34:40 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57574#M32283</guid>
      <dc:creator>RichardH</dc:creator>
      <dc:date>2017-04-06T15:34:40Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57579#M32286</link>
      <description>&lt;P&gt;Thanks Richard, can you provide some example of doing that?&lt;BR /&gt;&lt;BR /&gt;I'm still seeing an issue with payment info still being passed through our server though. What am I missing (when relating it to the 2 use case examples I previously provided)?&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 16:22:14 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57579#M32286</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-04-06T16:22:14Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57580#M32287</link>
      <description>&lt;P&gt;Use this when creating a customer profile using a payment nonce, use this block&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;    &amp;lt;payment&amp;gt;
      &amp;lt;opaqueData&amp;gt;
        &amp;lt;dataDescriptor&amp;gt;COMMON.ACCEPT.INAPP.PAYMENT&amp;lt;/dataDescriptor&amp;gt;
        &amp;lt;dataValue&amp;gt;9471056021205027705001&amp;lt;/dataValue&amp;gt;
      &amp;lt;/opaqueData&amp;gt;  
    &amp;lt;/payment&amp;gt;&lt;/PRE&gt;
&lt;P&gt;instead of this block:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;    &amp;lt;payment&amp;gt;
      &amp;lt;creditCard&amp;gt;
        &amp;lt;cardNumber&amp;gt;4111111111111111&amp;lt;/cardNumber&amp;gt;
        &amp;lt;expirationDate&amp;gt;2026-01&amp;lt;/expirationDate&amp;gt;
      &amp;lt;/creditCard&amp;gt;
    &amp;lt;/payment&amp;gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;Richard&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 16:28:35 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57580#M32287</guid>
      <dc:creator>RichardH</dc:creator>
      <dc:date>2017-04-06T16:28:35Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57581#M32288</link>
      <description>&lt;P&gt;That helps, but can you give a more complete example? Something a little less disjointed? I mean, that's literally the exact same code snippet that was provided earlier in this very thread.&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 16:45:50 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57581#M32288</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-04-06T16:45:50Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57582#M32289</link>
      <description>&lt;P&gt;There are examples of both &lt;A href="http://developer.authorize.net/api/reference/#customer-profiles-create-customer-payment-profile" target="_self"&gt;creating a customer payment profile&lt;/A&gt;&amp;nbsp;and &lt;A href="http://developer.authorize.net/api/reference/#customer-profiles-update-customer-payment-profile" target="_self"&gt;updating a customer payment profile&lt;/A&gt; in our &lt;A href="http://developer.authorize.net/api/reference/" target="_self"&gt;API Reference&lt;/A&gt; (on the "Try It" tab). Either of those methods work equally fine with a payment nonce.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Creating a payment profile would ordinarily look like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;createCustomerPaymentProfileRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"&amp;gt;
  &amp;lt;merchantAuthentication&amp;gt;
    &amp;lt;name&amp;gt;API_LOGIN_ID&amp;lt;/name&amp;gt;
    &amp;lt;transactionKey&amp;gt;API_TRANSACTION_KEY&amp;lt;/transactionKey&amp;gt;
  &amp;lt;/merchantAuthentication&amp;gt;
  &amp;lt;customerProfileId&amp;gt;10000&amp;lt;/customerProfileId&amp;gt;
  &amp;lt;paymentProfile&amp;gt;
    &amp;lt;billTo&amp;gt;
      &amp;lt;firstName&amp;gt;John&amp;lt;/firstName&amp;gt;
      &amp;lt;lastName&amp;gt;Doe&amp;lt;/lastName&amp;gt;
      &amp;lt;company&amp;gt;&amp;lt;/company&amp;gt;
      &amp;lt;address&amp;gt;123 Main St.&amp;lt;/address&amp;gt;
      &amp;lt;city&amp;gt;Bellevue&amp;lt;/city&amp;gt;
      &amp;lt;state&amp;gt;WA&amp;lt;/state&amp;gt;
      &amp;lt;zip&amp;gt;98004&amp;lt;/zip&amp;gt;
      &amp;lt;country&amp;gt;USA&amp;lt;/country&amp;gt;
      &amp;lt;phoneNumber&amp;gt;000-000-0000&amp;lt;/phoneNumber&amp;gt;
      &amp;lt;faxNumber&amp;gt;&amp;lt;/faxNumber&amp;gt;
    &amp;lt;/billTo&amp;gt;
    &amp;lt;payment&amp;gt;
      &amp;lt;creditCard&amp;gt;
        &amp;lt;cardNumber&amp;gt;4111111111111111&amp;lt;/cardNumber&amp;gt;
        &amp;lt;expirationDate&amp;gt;2023-12&amp;lt;/expirationDate&amp;gt;
      &amp;lt;/creditCard&amp;gt;
    &amp;lt;/payment&amp;gt;
    &amp;lt;defaultPaymentProfile&amp;gt;false&amp;lt;/defaultPaymentProfile&amp;gt;
  &amp;lt;/paymentProfile&amp;gt;
  &amp;lt;validationMode&amp;gt;liveMode&amp;lt;/validationMode&amp;gt;
&amp;lt;/createCustomerPaymentProfileRequest&amp;gt;&lt;/PRE&gt;
&lt;P&gt;If you used a nonce instead, it would look like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;createCustomerPaymentProfileRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"&amp;gt;
  &amp;lt;merchantAuthentication&amp;gt;
    &amp;lt;name&amp;gt;API_LOGIN_ID&amp;lt;/name&amp;gt;
    &amp;lt;transactionKey&amp;gt;API_TRANSACTION_KEY&amp;lt;/transactionKey&amp;gt;
  &amp;lt;/merchantAuthentication&amp;gt;
  &amp;lt;customerProfileId&amp;gt;10000&amp;lt;/customerProfileId&amp;gt;
  &amp;lt;paymentProfile&amp;gt;
    &amp;lt;billTo&amp;gt;
      &amp;lt;firstName&amp;gt;John&amp;lt;/firstName&amp;gt;
      &amp;lt;lastName&amp;gt;Doe&amp;lt;/lastName&amp;gt;
      &amp;lt;company&amp;gt;&amp;lt;/company&amp;gt;
      &amp;lt;address&amp;gt;123 Main St.&amp;lt;/address&amp;gt;
      &amp;lt;city&amp;gt;Bellevue&amp;lt;/city&amp;gt;
      &amp;lt;state&amp;gt;WA&amp;lt;/state&amp;gt;
      &amp;lt;zip&amp;gt;98004&amp;lt;/zip&amp;gt;
      &amp;lt;country&amp;gt;USA&amp;lt;/country&amp;gt;
      &amp;lt;phoneNumber&amp;gt;000-000-0000&amp;lt;/phoneNumber&amp;gt;
      &amp;lt;faxNumber&amp;gt;&amp;lt;/faxNumber&amp;gt;
    &amp;lt;/billTo&amp;gt;
    &amp;lt;payment&amp;gt;
      &amp;lt;opaqueData&amp;gt;
        &amp;lt;dataDescriptor&amp;gt;COMMON.ACCEPT.INAPP.PAYMENT&amp;lt;/dataDescriptor&amp;gt;
        &amp;lt;dataValue&amp;gt;9471056021205027705001&amp;lt;/dataValue&amp;gt;
      &amp;lt;/opaqueData&amp;gt;  
    &amp;lt;/payment&amp;gt;
    &amp;lt;defaultPaymentProfile&amp;gt;false&amp;lt;/defaultPaymentProfile&amp;gt;
  &amp;lt;/paymentProfile&amp;gt;
  &amp;lt;validationMode&amp;gt;liveMode&amp;lt;/validationMode&amp;gt;
&amp;lt;/createCustomerPaymentProfileRequest&amp;gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 16:52:02 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57582#M32289</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-04-06T16:52:02Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57583#M32290</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;I'm still seeing an issue with payment info still being passed through our server though. What am I missing (when relating it to the 2 use case examples I previously provided)?&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When using Accept.js, you do need to make sure your craft your form in such a way that it's not just submitting every form field straight to your server. If you have the card data and everything else all integrated into one form, you need to set the submit button up so that it sends card data through the Accept.js script, but then takes the nonce and submits that to your server with only the other fields in the form.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The first key thing to do is to make sure that any "submit" button on the form does not actually have the attribute type="submit", so the browser's not trying to actually post it when clicked. We usually recommend just making a "button" type like this:&lt;/P&gt;
&lt;PRE&gt;&amp;lt;button type="button" id="submitButton" onclick="sendPaymentDataToAnet()"&amp;gt;Pay&amp;lt;/button&amp;gt;&lt;/PRE&gt;
&lt;P&gt;Then, your "sendPaymentDataToAnet()" function pulls out the card data and sends it through Accept.js to get the nonce (like in step 3 in our &lt;A href="http://developer.authorize.net/api/reference/features/acceptjs.html" target="_self"&gt;Accept.js documentation&lt;/A&gt;).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Once you have the nonce, then it's up to you to determine the best way to get the rest of the information to your server, along with the nonce. We provide an example of that&amp;nbsp;&lt;SPAN&gt;in step 4 in our &lt;/SPAN&gt;&lt;A href="http://developer.authorize.net/api/reference/features/acceptjs.html" target="_self"&gt;Accept.js documentation&lt;/A&gt;. That example is using JavaScript to programatically create a new form within the DOM for that page, create input parameters for all of the non-card fields on your existing form &lt;EM&gt;and&lt;/EM&gt; the payment nonce, and then submitting&amp;nbsp;&lt;EM&gt;that new form&lt;/EM&gt; to your server.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 16:57:44 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57583#M32290</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-04-06T16:57:44Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57589#M32294</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;... here's a basic starting point. In this particular example, there is no need to perform any sort of charge/authorization transaction, it simply needs to be able to populate pre-saved payment info into a form (our form), and display it to the user so that they can review it, and update it if necessary.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Basic use case:&lt;/P&gt;
&lt;P&gt;User logs into the system and visits their user profile (where they have stored their payment info). In the profile section, they have the option to review and/or update their creadit card info.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So, given that (first) basic scenario, how can we&amp;nbsp; - using Accept.js - load the form with the pre-saved payment info so that they can review it? I understand that I can use the API to pull that info, I've done that, but doing that means the payment info (while obfuscated) touches our server, which we want to not do.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;After loading the data into the form, how then do we update said payment data, should the user need to make changes? Through the nonce token, right?&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me try to address this scenario specifically, and give a walkthrough of how I might go about implementing that.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The key part of all of this would be &lt;A href="http://developer.authorize.net/api/reference/features/customer_profiles.html" target="_self"&gt;Customer Profiles&lt;/A&gt;. We store payment info on our side, so you don't have to store it on your side. You have an API to use to store the info, update the info, retrieve the info, or use the info in a transaction. That API for creation and updating works with actual card numbers, but since you don't want to be exposed to those, it also works with the payment nonce generated by Accept.js. For even less exposure, you can embed or redirect the Accept Customer forms so that creation or updating piece happens within our form.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let's assume for this example that you want all of the forms hosted on your side, though.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;jima wrote:&amp;nbsp;
&lt;P&gt;User logs into the system and visits their user profile (where they have stored their payment info). In the profile section, they have the option to review and/or update their creadit card info.&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here's what I would do. Once the user logs into the system, I know who they are on my side, and I would know what customer profile ID corresponds to them. I'd have an extra table in my database with that info, or I'd have some separate lookup table with that info.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When the user navigates to the "user profile" page on my site, I'd do an API call to "&lt;A href="http://developer.authorize.net/api/reference/#customer-profiles-get-customer-profile" target="_self"&gt;getCustomerProfileRequest&lt;/A&gt;" to retrieve the details of that customer's profile. That call will return all of the info about the customer that I have stored at Authorize.Net, including any associated payment profiles and shipping address profiles.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'd then format that data to present to the customer. I could list out all of the details for each payment profile right on that page, or I could just list the card type and last four or something and require a press on a "Details" button to show more info. I'd put an "Add new payment profile" button somewhere (as well as an "Add new shipping address" button), and then put an "Edit" button next to each payment profile or address profile I have displayed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If the customer clicks on "Add new payment profile", I would send him/her to a form&amp;nbsp;hosted on my server which would take as input all of the needed information for the new payment profile (like card information, billing address, etc). When the customer clicks the submit or done button, I'd send the card info through Accept.js to get a nonce. I'd take the nonce and the other data (like the example in my previous post) and then submit that to a location on my server, where my application would package the nonce and other data into a&amp;nbsp;&lt;A href="http://developer.authorize.net/api/reference/index.html#customer-profiles-create-customer-payment-profile" target="_self"&gt;createCustomerPaymentProfileRequest&lt;/A&gt;&amp;nbsp;API call.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If the customer had instead clicked on the "Edit" button for an existing payment profile, the process would be similar. I would bring them to a form pre-populated with everything that was already on file for that payment profile. I could either use the information I got back in that first &lt;A href="http://developer.authorize.net/api/reference/#customer-profiles-get-customer-profile" target="_self"&gt;getCustomerProfileRequest&lt;/A&gt;&amp;nbsp;call, or, to be extra sure I had the most current information, I could do a call to&amp;nbsp;&lt;A href="http://developer.authorize.net/api/reference/index.html#customer-profiles-get-customer-payment-profile" target="_self"&gt;getCustomerPaymentProfileRequest&lt;/A&gt;&amp;nbsp;just for that profile, and use the information returned to populate the fields.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When the customer clicks the submit or done button there, I'd first want to see if they updated the card data. If they did (card number or expiration date), I'd send that through Accept.js to get a nonce. If they didn't, I can skip that step and just post everything as is to my server. My server would then do a call to&amp;nbsp;&lt;A href="http://developer.authorize.net/api/reference/index.html#customer-profiles-update-customer-payment-profile" target="_self"&gt;updateCustomerPaymentProfileRequest&lt;/A&gt;. To update a customer payment profile, you have to send&amp;nbsp;&lt;EM&gt;all&lt;/EM&gt; the data you want associated with that payment profile, not just the data that was changed. Any thing that was in the profile before that's not sent in the update call is blanked out. If the payment data had been changed, you'd send the nonce in that call. If the payment data&amp;nbsp;&lt;EM&gt;hadn't&lt;/EM&gt; changed, I'd still need to send the old payment data so that the existing payment data didn't get erased. To do that, I'd just send the same obfuscated card number and expiration date that was returned to me in the&amp;nbsp;&lt;SPAN&gt;call to&amp;nbsp;&lt;/SPAN&gt;&lt;A href="http://developer.authorize.net/api/reference/index.html#customer-profiles-get-customer-payment-profile" target="_self"&gt;getCustomerPaymentProfileRequest&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;I understand that I can use the API to pull that info, I've done that, but doing that means the payment info (while obfuscated) touches our server, which we want to not do.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When you use the API to pull the info from a payment profile, you're only getting a masked card number and masked expiration date back, like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;        &amp;lt;payment&amp;gt;
            &amp;lt;creditCard&amp;gt;
                &amp;lt;cardNumber&amp;gt;XXXX1111&amp;lt;/cardNumber&amp;gt;
                &amp;lt;expirationDate&amp;gt;XXXX&amp;lt;/expirationDate&amp;gt;
                &amp;lt;cardType&amp;gt;Visa&amp;lt;/cardType&amp;gt;
            &amp;lt;/creditCard&amp;gt;
        &amp;lt;/payment&amp;gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You've got only the last four so that you can present that to the customer to identify their card. There's nothing to worry about regarding having that on your server. You also need that last four to be able to do an update, since all of the existing info needs to be resent in an update request. In an update request, if you send the masked info as you've received it ("XXXX1111"), our system checks the last four you send against the last four on file, and if it matches will leave the card number intact on our system.&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 18:02:07 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57589#M32294</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-04-06T18:02:07Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57591#M32296</link>
      <description>&lt;P&gt;Thanks for this... that helps a lot, though I still don't really love the fact that there isn't an Accept.js method for simply pulling payment info, or adding, or updating for that matter. Seems like having to juggle the various integration methods only complicates and convolutes the process. Do you know if there are plans, woth hard timelines perhaps, to expand the capabilities of Accept.js to include those types of calls?&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 20:04:55 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57591#M32296</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-04-06T20:04:55Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57592#M32297</link>
      <description>&lt;P&gt;No plans, although that's another thing that would be worth posting on our&amp;nbsp;&lt;A href="https://community.developer.cybersource.com/t5/Ideas/idb-p/ideas" target="_self"&gt;Ideas Forum&lt;/A&gt;. Basically, looking for the ability to not just send a credit card to Accept.js and get a nonce, but send a credit card and a profile ID, with a command to add the card to the provided profile, or update a specified profile with that card.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I can definitely see the usefulness of such an idea, but like I said, we have no current plans for that. Again, if you post that in the Ideas Forum, we can track that for future improvements.&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 20:23:22 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/57592#M32297</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-04-06T20:23:22Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58079#M32751</link>
      <description>&lt;P&gt;Following the previous suggestion of getting a nonce through the Accept.js, then using it with an server call, can someone explain why the XML generation in the PHP SDK is messing up?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here's the SDK method call to createCustomerPaymentProfile():&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;$authNetCusObj = new AuthorizeNetCIM();
$authorizeDotNetResponse = $authNetCusObj-&amp;gt;createCustomerPaymentProfile($custProfId, $formattedRequestData);&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here's the PHP array that's being passed into (which the XML is supposed to get generated from):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;$formattedRequestData = array(
	'billTo' =&amp;gt; array(
		'firstName' =&amp;gt; 'TestKen',
		'lastName' =&amp;gt; 'TestBraz',
		'address' =&amp;gt; '123 Testa Trove',
		'city' =&amp;gt; 'Hahahah',
		'state' =&amp;gt; 'Utah',
		'zip' =&amp;gt; '84440'
	),
	'payment' =&amp;gt; array(
		'opaqueData' =&amp;gt; array(
			'dataDescription' =&amp;gt; 'COMMON.ACCEPT.INAPP.PAYMENT',
			'dataValue' =&amp;gt; trim($data['dataNonce'])
		)
	)
);&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here's the (bad) XML that gets generated in the call:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;createCustomerPaymentProfileRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"&amp;gt;
	&amp;lt;merchantAuthentication&amp;gt;
		&amp;lt;name&amp;gt;Protected&amp;lt;/name&amp;gt;
		&amp;lt;transactionKey&amp;gt;Protected&amp;lt;/transactionKey&amp;gt;
	&amp;lt;/merchantAuthentication&amp;gt;
	&amp;lt;customerProfileId&amp;gt;181&amp;lt;/customerProfileId&amp;gt;
	&amp;lt;paymentProfile&amp;gt;
		&amp;lt;billTo&amp;gt;
			&amp;lt;0&amp;gt;TestKen&amp;lt;/0&amp;gt;
		&amp;lt;/billTo&amp;gt;
		&amp;lt;billTo&amp;gt;
			&amp;lt;0&amp;gt;TestBraz&amp;lt;/0&amp;gt;
		&amp;lt;/billTo&amp;gt;
		&amp;lt;billTo&amp;gt;
			&amp;lt;0&amp;gt;123 Testa Trove&amp;lt;/0&amp;gt;
		&amp;lt;/billTo&amp;gt;
		&amp;lt;billTo&amp;gt;
			&amp;lt;0&amp;gt;Test City&amp;lt;/0&amp;gt;
		&amp;lt;/billTo&amp;gt;
		&amp;lt;billTo&amp;gt;
			&amp;lt;0&amp;gt;Test State&amp;lt;/0&amp;gt;
		&amp;lt;/billTo&amp;gt;
		&amp;lt;billTo&amp;gt;
			&amp;lt;0&amp;gt;84440&amp;lt;/0&amp;gt;
		&amp;lt;/billTo&amp;gt;
		&amp;lt;payment&amp;gt;
			&amp;lt;dataDescription&amp;gt;COMMON.ACCEPT.INAPP.PAYMENT&amp;lt;/dataDescription&amp;gt;
			&amp;lt;dataValue&amp;gt;eyJjfMl&amp;lt;/dataValue&amp;gt;
		&amp;lt;/payment&amp;gt;
	&amp;lt;/paymentProfile&amp;gt;
&amp;lt;/createCustomerPaymentProfileRequest&amp;gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 May 2017 16:28:48 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58079#M32751</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-05-15T16:28:48Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58080#M32752</link>
      <description>&lt;P&gt;HI&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21289"&gt;@jima&lt;/a&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Two things:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;1. The AuthorizeNetCIM.php class is still in the SDK for backward compatibility, but it's a relic from when the customer profiles functions were completely separate from the rest of our API. Now, all the payment functions and profile functions and everything else lives in one unified API called, appropriately enough, the Authorize.Net API. So, going forward, if you're wanting to do things with customer profiles, better to use one of the methods in the current API.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;$authNetCusObj= new AnetAPI\CreateCustomerProfileRequest();&lt;/PRE&gt;
&lt;P&gt;2. The PHP SDK has a bunch of setter and getter functions for working with the various objects instead of having you write them into an array. For example, setting the billTo address would look like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;	  // Create the Bill To info
	  $billto = new AnetAPI\CustomerAddressType();
	  $billto-&amp;gt;setFirstName("Ellen");
	  $billto-&amp;gt;setLastName("Johnson");
	  $billto-&amp;gt;setCompany("Souveniropolis");
	  $billto-&amp;gt;setAddress("14 Main Street");
	  $billto-&amp;gt;setCity("Pecan Springs");
	  $billto-&amp;gt;setState("TX");
	  $billto-&amp;gt;setZip("44628");
	  $billto-&amp;gt;setCountry("USA");&lt;/PRE&gt;
&lt;P&gt;Take a look at t&lt;A href="https://github.com/AuthorizeNet/sample-code-php/blob/master/CustomerProfiles/create-customer-profile-with-accept-nonce.php" target="_self"&gt;he sample code on GitHub&lt;/A&gt; for a complete example of how to create a profile with a payment nonce/token.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 May 2017 16:45:49 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58080#M32752</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-05-15T16:45:49Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58081#M32753</link>
      <description>&lt;P&gt;Understood that the SDK is older, but until the API is installable without the current necessary dependencies, that isn't an option (which I think I initially stated in the beginning of this thread.) I don't have full admin rights to the machine(s) to install the necessay dependencies (and those that do have access have denied my request to have them added).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I'm stuck here, with my only option to be to use the SDK.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;BTW: I've also used the setter functions as well (instead of the array)... it made no difference, they both fail in their own ways.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 May 2017 16:55:33 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58081#M32753</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-05-15T16:55:33Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58086#M32758</link>
      <description>&lt;P&gt;So which version of the SDK are you using?&lt;/P&gt;</description>
      <pubDate>Mon, 15 May 2017 18:17:51 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58086#M32758</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-05-15T18:17:51Z</dc:date>
    </item>
    <item>
      <title>Re: Unclear basic workflow documentation - Accept.js</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58087#M32759</link>
      <description>&lt;P&gt;LOL, ashamed to admit that I don't know and that I could use some help in finding out too! :)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here's the file list that I have, if that helps any (which it may not):&lt;BR /&gt;AuthorizeNetCIM.php&lt;/P&gt;&lt;P&gt;AuthorizeNetException.php&lt;/P&gt;&lt;P&gt;AuthorizeNetRequest.php&lt;/P&gt;&lt;P&gt;AuthorizeNetResponse.php&lt;/P&gt;&lt;P&gt;AuthorizeNetTypes.php&lt;/P&gt;&lt;P&gt;AuthorizeNetXMLResponse.php&lt;/P&gt;&lt;P&gt;(None of them reference a version anywhere within)&lt;/P&gt;</description>
      <pubDate>Mon, 15 May 2017 18:23:13 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Unclear-basic-workflow-documentation-Accept-js/m-p/58087#M32759</guid>
      <dc:creator>jima</dc:creator>
      <dc:date>2017-05-15T18:23:13Z</dc:date>
    </item>
  </channel>
</rss>

