<?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 Re: Create ARB Subscription via Opaque Data (from Accept.js) in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57367#M32092</link>
    <description>Thanks Tim, that was my understanding of your message. However, even if the ARB request was working correctly 100% of the time, it's never going to work for a nonce that has already been used.</description>
    <pubDate>Wed, 22 Mar 2017 21:54:49 GMT</pubDate>
    <dc:creator>Aaron</dc:creator>
    <dc:date>2017-03-22T21:54:49Z</dc:date>
    <item>
      <title>Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57331#M32057</link>
      <description>&lt;P&gt;So our application is a website that is built on ASP.NET.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;The front end is JavaScript and the back end is C#.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We are using Accept.js on the front end to create two nonce tokens (1 for the ARB sub, 1 for the 1 time transaction). &amp;nbsp;I realize this might not be the best way to do this with two separate transactions but it is what we have for now. &amp;nbsp;This was actually working yesterday until after around 5pm. &amp;nbsp;Then we started getting the E00114 Invalid OTS Token error message every time we tried to create the ARB sub. &amp;nbsp;The 1 time transaction would work just fine.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So we tried flipping the nonce values in case the one we were trying to use for the ARB sub was wrong but even after swapping them to use the other one the 1 time transaction worked but the ARB sub did not. &amp;nbsp;This validated that the nonce values appear to be working fine. &amp;nbsp;We talked to Authorize.net support and they informed us that the error message E00114 could also be returned if the data sent to create the ARB sub was not valid even if the token was valid.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can anyone help me diagnose or validate the ARB create transaction we are sending to Authorize.net? &amp;nbsp;I have read some people reference the ability to capture the XML being sent to Authorize.net via the SDK but since I am using the nuget package (v1.9.1) I'm not sure how to turn this option on.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help would be greatly appreciated.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 16:19:03 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57331#M32057</guid>
      <dc:creator>pmgower</dc:creator>
      <dc:date>2017-03-21T16:19:03Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57335#M32061</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21347"&gt;@pmgower&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Logging in the .NET SDK is done using the Microsoft's ETW system. More details &lt;A href="https://community.developer.cybersource.com/t5/Integration-and-Testing/NuGet-package-URLs-Logging/m-p/57334#M32060" target="_self"&gt;in my reply on the other thread.&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As far as troubleshooting the ARB request, hopefully you can get a log of exactly what's sent and we can see if there's a problem there. In the meantime, there's a couple of things to check.&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Make absolutely sure that the same login ID is being used to make the ARB request as to get the nonce&lt;/LI&gt;&lt;LI&gt;Make sure that both places are going to the same environment (whether production or sandbox).&lt;/LI&gt;&lt;LI&gt;If you're seeing failures in production, what happens when you switch both the nonce generation and the ARB request to sandbox?&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;If you can get a log of the request, please post that here. In the meantime, if you want to post the section of your code that's doing the ARB request, maybe there's something to see there.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 17:22:44 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57335#M32061</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-21T17:22:44Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57337#M32063</link>
      <description>&lt;P&gt;Hello Aaron,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We are experiencing the same problem. Just started yesterday. We are using the Java SDK.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When we make our first charge, we set the duplicate window timeout to 0 seconds. The interesting thing is, we get the Invalid Token error when we execute our code in real time. However, if we step through the code in a debugger, enough time elapses between our 1 time charge and the ARB subscription set up that does not fail.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Again, this worked fine until yesterday. Also, it still works in the sandbox, but does not in production. We had&amp;nbsp;been setting up subscriptions like this succesfully for several weeks now, &amp;nbsp;I think there is a problem on your end.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim Stevens, University of Minnesota Foundation.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 17:45:40 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57337#M32063</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-21T17:45:40Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57339#M32065</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/3085"&gt;@steve074&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ah, so the timing of the request is key for you.&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21347"&gt;@pmgower&lt;/a&gt;, can you tell if yours is time-related? Like, can you induce a delay between retrieving the nonce and doing the ARB request?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If there's no one here currently investigating this internally, I'll make sure someone's on it.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 18:08:36 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57339#M32065</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-21T18:08:36Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57340#M32066</link>
      <description>&lt;P&gt;Yes, it seems to be possibly ignoring the duplicate window time out.&amp;nbsp;I opened support ticket&amp;nbsp;&lt;SPAN&gt;1-406091561, you can link back to that one if you want.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Tim&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 18:23:42 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57340#M32066</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-21T18:23:42Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57341#M32067</link>
      <description>&lt;P&gt;Hi Tim,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My hunch is that it's not related to the duplicate window, because if it wasn't respecting that timeout, you'd get a different error. However, there could be other checks employed that could prevent some sort of quick use, or other problems as well.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'll try to escalate that ticket internally so they're not just asking the same things.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 18:36:04 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57341#M32067</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-21T18:36:04Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57342#M32068</link>
      <description>&lt;P&gt;Thanks, we appreciate quick action on this as it is causing trouble for our donors.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;One other observation that may help is that when we run in real time, we are often gettting the same nonce value on our second nonce call. Not always, and that doesn't seem to be related to the error, as it fails either way.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2017 18:41:40 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57342#M32068</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-21T18:41:40Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57361#M32086</link>
      <description>&lt;P&gt;Thanks for the quick response&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/20843"&gt;@Aaron&lt;/a&gt;. &amp;nbsp;As of yesterday I couldn't even get the create ARB subscription to work. &amp;nbsp;However, this morning I tried it all from my local machine and it all works if I run it through the debugger to capture the trace/log information. &amp;nbsp;The moment I run it outside of the Visual Studio debugger it doesn't work and returns the same E00114 error message. &amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I tried adding a 1 and then 5 second delay between when the front end sends the request to the backend to create the ARB subscription. &amp;nbsp;I suppose I could try to add a delay between getting the two differente nonce values on the frontend but I haven't done that yet because the create ARB subscription is the first one that is using a nonce so IF they are the same create ARB subscription should work.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am now going to work on writing the necessary code to log the trace values. &amp;nbsp;&lt;STRONG&gt;Very discouraged at the fact that I can't easily turn on logging in your SDK and that I have to do it manually.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I will let you know once I get the XML from the trace information; however, when running it inside VS's debugger I didn't see where the&amp;nbsp;&lt;STRONG&gt;request XML&lt;/STRONG&gt; was being logged in the trace information. &amp;nbsp;&lt;STRONG&gt;Any guidenance&lt;/STRONG&gt; into how I can get the&amp;nbsp;request XML would be greatly appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the code I use to send create the ARB Subscription:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;const short AUTHORIZE_NET_NO_END_DATE_TOTAL_OCCURRANCES = 9999;

bool worked = false;
transactionResponse = null;

var monthlyInterval = new paymentScheduleTypeInterval()
{
    length = 1,
    unit = ARBSubscriptionUnitEnum.months
};
var monthlySchedule = new paymentScheduleType()
{
    interval = monthlyInterval,
    startDate = DateTime.Now.AddDays(1),
    totalOccurrences = AUTHORIZE_NET_NO_END_DATE_TOTAL_OCCURRANCES,
    trialOccurrences = 0
};
var paymentType = new paymentType() { Item = model.NonceToOpaque(model.SubscriptionNonce) };

string subscriptionName = $"ProxBox Subscription for {model.FullName}";
ARBSubscriptionType subscriptionType = new ARBSubscriptionType()
{
    amountSpecified = true,
    name = subscriptionName,
    amount = model.MonthlySubscriptionSubtotal,
    paymentSchedule = monthlySchedule,
    billTo = model.nameAndAddressType,
    shipTo = model.nameAndAddressType,
    payment = paymentType,
    trialAmountSpecified = false,
};

var request = new ARBCreateSubscriptionRequest { subscription = subscriptionType };
var controller = new ARBCreateSubscriptionController(request);
controller.Execute();

//get the response which will contain errors (if any)
var response = controller.GetApiResponse();

//validate respose
if (response != null)
{
    if (response.messages.resultCode == messageTypeEnum.Ok)
    {
        if (response.messages.message != null)
        {
            worked = true;
            transactionResponse = response.ToTransactionResponseModel();
        }
        else
        {
            var errorMessage = $"Subscription Error (Subscriber: {model.FullName} - {model.EmailAddress}): No message was set (refId: {response.refId})";
            logger.Error(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, errorMessage, exception: null);
        }
    }
    else
    {
        var errorMessage = $"Subscription Error (Subscriber: {model.FullName} - {model.EmailAddress}): {response.messages.message[0].code} {response.messages.message[0].text}";
        logger.Error(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, errorMessage, exception: null);
    }
}
else
{
    var results = string.Join(", ", controller.GetResults().ToArray());
    var errorMessage = $"Subscription Error (Subscriber: {model.FullName} - {model.EmailAddress}): Reponse was null, ResultCode: {controller.GetResultCode()}, Result Messages: {results}";
    logger.Error(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, errorMessage, exception: null);
}

return worked;&lt;/PRE&gt;</description>
      <pubDate>Wed, 22 Mar 2017 19:04:12 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57361#M32086</guid>
      <dc:creator>pmgower</dc:creator>
      <dc:date>2017-03-22T19:04:12Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57362#M32087</link>
      <description>&lt;P&gt;Actually,&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/20843"&gt;@Aaron&lt;/a&gt;, after further review. &amp;nbsp;If I add a &lt;STRONG&gt;System.Threading.Thread.Sleep(5000) &lt;/STRONG&gt;call&amp;nbsp;before I try to create the request and send it to Authorize.net it in fact does allow it to succeed&amp;nbsp;&lt;STRONG&gt;on my local machine.&lt;/STRONG&gt; I will be testing this on the STAGE server very soon.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So back to your initial theory (which would explain how it stopped working with no code changes) is there seems to be a timing issue. &amp;nbsp;Did your team enable any extra checks or something that would require a delay between getting the Accept.js nonce values and using them in an api call this week?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Also should we be concerned about doing two nonce requests to accept.js one after the other in the front end?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Mar 2017 19:32:35 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57362#M32087</guid>
      <dc:creator>pmgower</dc:creator>
      <dc:date>2017-03-22T19:32:35Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57363#M32088</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/21347"&gt;@pmgower&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;Did your team enable any extra checks or something that would require a delay between getting the Accept.js nonce values and using them in an api call this week?&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I'm not aware of anything, but that's what we're trying to find out. We (Authorize.Net) haven't made any changes, but the bits that create the nonce are part of a larger Visa effort, so we can't rule out the possibility of a change being made somewhere outside of Authorize.Net that's inadvertantly affecting us.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's complicated by the fact that the only reports of problems so far have been ARB related, which may be relevant or may be coincidental. We haven't seen any problems with just grabbing a nonce and immediately turning it around and doing a one-time charge, for example.&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/21347"&gt;@pmgower&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Also should we be concerned about doing two nonce requests to accept.js one after the other in the front end?&lt;/STRONG&gt;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I don't know. It doesn't seem like there should be any problems, yet you're seeing some. Is that because of the nature of your setup where you're doing two nonce requests? Or could it possibly manifest itself on any&amp;nbsp;nonce creation that's immediately followed by an ARB request using that nonce?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/3085"&gt;@steve074&lt;/a&gt;&amp;nbsp;reported that two quick nonce requests in a row can sometimes return the same nonce. In that scenario, I would expect that the second request would fail since the nonce has already been used.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So, there's no documented reason why you should expect the two nonce workflow to fail. However, given your current problems and the possibility of getting a duplicated nonce, I&amp;nbsp;personally would want to steer clear of doing things that way.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The easiest smoothest way to do this would be this way:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Get a nonce&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. Send that nonce in to charge the card, with a flag set on the transaction to create a customer profile out of that transaction. There's not a great example of this in the API reference, but here's essentially what it would look like in the raw XML:&lt;/P&gt;&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;createTransactionRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"&amp;gt;
  &amp;lt;merchantAuthentication&amp;gt;
    &amp;lt;name&amp;gt;login_id&amp;lt;/name&amp;gt;
    &amp;lt;transactionKey&amp;gt;trans_key&amp;lt;/transactionKey&amp;gt;
  &amp;lt;/merchantAuthentication&amp;gt;
  &amp;lt;refId&amp;gt;123456&amp;lt;/refId&amp;gt;
  &amp;lt;transactionRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"&amp;gt;
    &amp;lt;transactionType&amp;gt;authCaptureTransaction&amp;lt;/transactionType&amp;gt;
    &amp;lt;amount&amp;gt;18.95&amp;lt;/amount&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;eyJjb2RlIjoiNTBfMl8wNjAwMDUyRDg0N0NGOUQxQUEyNkZGRTJBQkMyM0VEQkE3OTRFRjk3QUYwMTU1OERFNEQ0M0JFQkY5QzJGMjZDQzc2RjQyRUI2NDk3QTc4QURENjFGOUI2MThERTI5RjQ5MTMxMEM1IiwidG9rZW4iOiI5NDkwMjEzNTE2MTQzOTY2OTA0NjAzIiwidiI6IjEuMSJ9&amp;lt;/dataValue&amp;gt;
      &amp;lt;/opaqueData&amp;gt;
    &amp;lt;/payment&amp;gt;
    &amp;lt;profile&amp;gt;
      &amp;lt;createProfile&amp;gt;true&amp;lt;/createProfile&amp;gt;
    &amp;lt;/profile&amp;gt;
    &amp;lt;customer&amp;gt;
      &amp;lt;id&amp;gt;99999456654&amp;lt;/id&amp;gt;
      &amp;lt;email&amp;gt;customer@example.com&amp;lt;/email&amp;gt;
    &amp;lt;/customer&amp;gt;
  &amp;lt;/transactionRequest&amp;gt;
&amp;lt;/createTransactionRequest&amp;gt;&lt;/PRE&gt;&lt;P&gt;Basically, the same as a regular charge with a nonce, just adding the createProfile=true, and adding either a customer id or an email to act as a key in the profile creation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;3. Send the profile ID and payment profile ID returned in step 2 in a &lt;A href="http://developer.authorize.net/api/reference/#recurring-billing-create-a-subscription-from-customer-profile" target="_self"&gt;request to create a subscription&lt;/A&gt;.&lt;/P&gt;</description>
      <pubDate>Wed, 22 Mar 2017 20:14:18 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57363#M32088</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-22T20:14:18Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57364#M32089</link>
      <description>&lt;P&gt;Re: logging&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I don't know for a fact that the built in logging in the .NET SDK even does log the full request XML. I'm just assuming it does based on the way the other SDKs work. I know we need to improve the logging in .NET specifically, but if it's not even logging the request, it needs more improvement than I thought.&lt;/P&gt;</description>
      <pubDate>Wed, 22 Mar 2017 20:16:36 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57364#M32089</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-22T20:16:36Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57365#M32090</link>
      <description>&lt;P&gt;Hello&amp;nbsp;@Aaron,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You describe setting up a customer profile as part of the transaction. When we did our initial development of Accept.js that was not a supported option. Has this changed recently? When I would send a request in like you describe it would either throw an unsupported error, or it would ignore the create customer flag.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;No resolution to my ticket yet, but I will update this forum when I hear something from your support group.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Wed, 22 Mar 2017 20:31:04 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57365#M32090</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-22T20:31:04Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57366#M32091</link>
      <description>&lt;P&gt;And to clarify my detail about the same nonce value for both nonces, the ARB subscription nonce still comes back invalid regardless if the nonce values match. Don't want that to get lost in all the confusion :)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Wed, 22 Mar 2017 20:35:36 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57366#M32091</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-22T20:35:36Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57367#M32092</link>
      <description>Thanks Tim, that was my understanding of your message. However, even if the ARB request was working correctly 100% of the time, it's never going to work for a nonce that has already been used.</description>
      <pubDate>Wed, 22 Mar 2017 21:54:49 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57367#M32092</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-22T21:54:49Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57370#M32094</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;steve074 wrote:&amp;nbsp;&lt;P&gt;You describe setting up a customer profile as part of the transaction. When we did our initial development of Accept.js that was not a supported option. Has this changed recently? When I would send a request in like you describe it would either throw an unsupported error, or it would ignore the create customer flag.&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;I don't know when that might have changed, but I tested it myself earlier just to verify that I wasn't misremembering things.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;One problem is that in our &lt;A href="http://developer.authorize.net/api/reference/index.html" target="_self"&gt;API Reference&lt;/A&gt;, there's not a specific section on "Charge a Card Using An Accept Nonce AND&amp;nbsp;Make A Profile At The Same Time." You'd have to look at the relevant fields for the profile creation&amp;nbsp;on the "&lt;A href="http://developer.authorize.net/api/reference/index.html#payment-transactions-charge-a-credit-card" target="_self"&gt;Charge a Credit Card&lt;/A&gt;" section, and couple those with the relevant fields for the nonce from the "&lt;A href="http://developer.authorize.net/api/reference/index.html#payment-transactions-create-an-accept-payment-transaction" target="_self"&gt;Create an Accept Payment Transaction&lt;/A&gt;" section. Both of those describe uses of the &lt;EM&gt;createTransactionRequest&lt;/EM&gt; API call, but neither of them are the full list of every parameter that can be sent with that call. Even when you find all of the parameters from the two sections, you still have to get them in correct order to match &lt;A href="https://apitest.authorize.net/xml/v1/schema/AnetApiSchema.xsd" target="_self"&gt;the schema&lt;/A&gt; that we're checking against. That's harder when we never show an example of a complete request to do the thing that you want to do.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So, without having experienced it myself, I can't tell whether it was really unsupported at one time, or if we just didn't have clear enough help for you to get a request formatted correctly. Either way, it definitely works now.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;(Of course, I'll work on getting this documented more specfically.)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Mar 2017 22:55:50 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57370#M32094</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-22T22:55:50Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57374#M32098</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/20843"&gt;@Aaron&lt;/a&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I added the createCustomerProfile flag and set it to true. Against the sandbox, the transaction succeeds, but the profile creation does not. It returns error E00103, "Customer profile creation failed. This payment method does not support profile creation."&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In other news, we did successfully add a three second band aid delay that allows the second nonce to work in production. I will leave our support ticket open until the real problem is fixed and I'll update this thread when it is.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 14:41:53 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57374#M32098</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-23T14:41:53Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57377#M32099</link>
      <description>&lt;P&gt;New update regarding nonce values. We changed our call center payment page to include the 3 second timeout and ran a donation through. Unfortunately, even with three seconds the nonce values returned were identical. We increased the value to 10 seconds, got unique nonces, and the subscription was set up successfully.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So, I may have been incorrect about non-unique values still failing, and the timeout period needs to be longer than three seconds.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 17:11:02 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57377#M32099</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-23T17:11:02Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57378#M32100</link>
      <description>&lt;P&gt;New update. We changed our timeout value to five seconds and still got the same nonce values. Our management has determined that any longer is too long for our donor experience, so we have removed our subscription functionality from production until this is resolved.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am attempting to escalate my ticket to a production down status, but the link to managing existing tickets is returning an ERR_CONNECTION_RESET error.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This problem is now at a critical level and we would like an escalation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 17:32:54 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57378#M32100</guid>
      <dc:creator>steve074</dc:creator>
      <dc:date>2017-03-23T17:32:54Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57379#M32101</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/3085"&gt;@steve074&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I added the createCustomerProfile flag and set it to true. Against the sandbox, the transaction succeeds, but the profile creation does not. It returns error E00103, "Customer profile creation failed. This payment method does not support profile creation."&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;Nooooo! I tested it myself! I talked about with teammates yesterday, and we all agreed that it should work. I made up a quick test and tried it. It worked. So, I went ahead and posted it. Looking back over the logs of my test system, I realize now that I didn't save my modifications to my test script at the right time, and I was running transactions with regular &amp;lt;creditCard&amp;gt; elements.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;An embarrassing&amp;nbsp;mistake, and I deeply apologize for any time wasted.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I ran some more tests, and verified that a couple of other scenarios&amp;nbsp;&lt;EM&gt;do&lt;/EM&gt; work. For example:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Get a nonce.&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://developer.authorize.net/api/reference/#payment-transactions-create-an-accept-payment-transaction" target="_self"&gt;Run the one-time transaction &lt;/A&gt;&lt;SPAN&gt;&lt;A href="http://developer.authorize.net/api/reference/#payment-transactions-create-an-accept-payment-transaction" target="_self"&gt;using that nonce&lt;/A&gt; in place of the creditCard data.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://developer.authorize.net/api/reference/#customer-profiles-create-a-customer-profile-from-a-transaction" target="_self"&gt;Create a profile from that transaction&lt;/A&gt;.&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://developer.authorize.net/api/reference/#recurring-billing-create-a-subscription-from-customer-profile" target="_self"&gt;Create a subscription from that profile&lt;/A&gt;.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Or, alternatively:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Get a nonce.&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://developer.authorize.net/api/reference/#customer-profiles-create-customer-profile" target="_self"&gt;Create a customer profile&lt;/A&gt; using that nonce in place of the creditCard data.&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://developer.authorize.net/api/reference/#payment-transactions-charge-a-customer-profile" target="_self"&gt;Charge the customer profile&lt;/A&gt; for the one time transaction.&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://developer.authorize.net/api/reference/#recurring-billing-create-a-subscription-from-customer-profile" target="_self"&gt;Create a subscription from the profile&lt;/A&gt;.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Both of these are just one more API call than what I previously suggested. This second one isn't ideal, though, because you create the profile before you've seen whether the first transaction is good or not, so you'd end up with extra profiles for customers that aren't proceeding to the subscription phase.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This doesn't explain why I can create a profile directly using a nonce, but can't create it at transaction time with the createCustomerProfile flag. We've got to fix that, because clearly the system can handle it.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 17:42:48 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57379#M32101</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-23T17:42:48Z</dc:date>
    </item>
    <item>
      <title>Re: Create ARB Subscription via Opaque Data (from Accept.js)</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57380#M32102</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/3085"&gt;@steve074&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;I am attempting to escalate my ticket to a production down status, but the link to managing existing tickets is returning an ERR_CONNECTION_RESET error.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This problem is now at a critical level and we would like an escalation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I don't know what might be going on with the ticket management page. That's unfortunate. However, I reached out to the support specialist assigned to the case, and she's escalating it to the production team for investigation right now.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 17:45:42 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Create-ARB-Subscription-via-Opaque-Data-from-Accept-js/m-p/57380#M32102</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-03-23T17:45:42Z</dc:date>
    </item>
  </channel>
</rss>

