<?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: CyberSource SOAP Toolkit API Token Payment? in cybersource APIs</title>
    <link>https://community.developer.cybersource.com/t5/cybersource-APIs/CyberSource-SOAP-Toolkit-API-Token-Payment/m-p/84123#M371</link>
    <description>&lt;P&gt;I believe you need to enable name-value-pairs in order to provide fields using&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;_&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;for nesting (e.g:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;recurringSubscriptionInfo_subscriptionID), when I changed your code to use XML payloads it worked:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;// ...&lt;/SPAN&gt;
&lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt;-&amp;gt;run = &lt;SPAN class=""&gt;'true'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;ccAuthService = &lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt;-&amp;gt;run = &lt;SPAN class=""&gt;'true'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;ccCaptureService = &lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;merchantID = &lt;SPAN class=""&gt;'&amp;lt;my merchant id&amp;gt;'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;merchantReferenceCode = &lt;SPAN class=""&gt;uniqid&lt;/SPAN&gt;();

&lt;SPAN class=""&gt;$recurringSubscriptionInfo&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$recurringSubscriptionInfo&lt;/SPAN&gt;-&amp;gt;subscriptionID = &lt;SPAN class=""&gt;'&amp;lt;my subscription token&amp;gt;'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;recurringSubscriptionInfo = &lt;SPAN class=""&gt;$recurringSubscriptionInfo&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt;-&amp;gt;currency = &lt;SPAN class=""&gt;'USD'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt;-&amp;gt;grandTotalAmount = &lt;SPAN class=""&gt;'100'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;purchaseTotals = &lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;// ...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;Example, go to&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://developer.cybersource.com/cybs-dev-api-ref/index.html#payments-process-a-payment" target="_blank" rel="nofollow noopener noreferrer"&gt;https://developer.cybersource.com/cybs-dev-api-ref/index.html#payments-process-a-payment&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;A href="https://omegle.club" target="_blank" rel="noopener"&gt;/ome&lt;/A&gt;&lt;A href="https://omegle.ws" target="_blank" rel="noopener"&gt;gle&lt;/A&gt;&lt;A href="https://shagle.download" target="_blank" rel="noopener"&gt;shagle&lt;/A&gt; expand the "REQUEST FIELD DESCRIPTION" underneath and go to&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 14 Sep 2022 07:25:36 GMT</pubDate>
    <dc:creator>SandraLewisFrin</dc:creator>
    <dc:date>2022-09-14T07:25:36Z</dc:date>
    <item>
      <title>CyberSource SOAP Toolkit API Token Payment?</title>
      <link>https://community.developer.cybersource.com/t5/cybersource-APIs/CyberSource-SOAP-Toolkit-API-Token-Payment/m-p/83494#M223</link>
      <description>&lt;P&gt;I would like to test a payment with already created token from the previous transaction, but can't really find a way to do that using SOAP Toolkit API.&lt;/P&gt;&lt;P&gt;I found this in their documentation:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;Requesting an On-Demand Transaction 

An on-demand transaction is a &lt;SPAN class=""&gt;real&lt;/SPAN&gt;-time transaction using the details stored in a customer profile. On-demand transactions that you can request are: 
 Credit cards—authorization, &lt;SPAN class=""&gt;sale&lt;/SPAN&gt; (an authorization &lt;SPAN class=""&gt;and&lt;/SPAN&gt; capture), &lt;SPAN class=""&gt;and&lt;/SPAN&gt; credit. 
 Electronic checks—debit &lt;SPAN class=""&gt;and&lt;/SPAN&gt; credit. 
 PINless debits—debit. 

To request an on-demand sale transaction: 
Step &lt;SPAN class=""&gt;1&lt;/SPAN&gt; Set the ccAuthService_run service field to &lt;SPAN class=""&gt;true&lt;/SPAN&gt;. 
Step &lt;SPAN class=""&gt;2&lt;/SPAN&gt; Set the ccCaptureService_run service field to &lt;SPAN class=""&gt;true&lt;/SPAN&gt;. 
Step &lt;SPAN class=""&gt;3&lt;/SPAN&gt; Include the following fields in the request: 

 merchantID 
 merchantReferenceCode 
 purchaseTotals_currency 
 purchaseTotals_grandTotalAmount 
 recurringSubscriptionInfo_subscriptionID&lt;/PRE&gt;&lt;P&gt;So I assumed that&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;recurringSubscriptionInfo_subscriptionID&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;is the token that I need to provide, and wrote this code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;    &lt;SPAN class=""&gt;$referenceCode&lt;/SPAN&gt; = &lt;SPAN class=""&gt;'my_merchant_id'&lt;/SPAN&gt;;

    &lt;SPAN class=""&gt;$client&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;CybsSoapClient&lt;/SPAN&gt;();
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt; = &lt;SPAN class=""&gt;$client&lt;/SPAN&gt;-&amp;gt;&lt;SPAN class=""&gt;createRequest&lt;/SPAN&gt;(&lt;SPAN class=""&gt;$referenceCode&lt;/SPAN&gt;);

    &lt;SPAN class=""&gt;// Build a sale request (combining an auth and capture). &lt;/SPAN&gt;
    &lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
    &lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt;-&amp;gt;run = &lt;SPAN class=""&gt;'true'&lt;/SPAN&gt;;
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;ccAuthService = &lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt;;

    &lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
    &lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt;-&amp;gt;run = &lt;SPAN class=""&gt;'true'&lt;/SPAN&gt;;
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;ccCaptureService = &lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt;;

    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;merchantID = &lt;SPAN class=""&gt;'my_merchant_id'&lt;/SPAN&gt;;
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;merchantReferenceCode = &lt;SPAN class=""&gt;uniqid&lt;/SPAN&gt;();
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;purchaseTotals_currency = &lt;SPAN class=""&gt;'USD'&lt;/SPAN&gt;;
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;purchaseTotals_grandTotalAmount = &lt;SPAN class=""&gt;'25'&lt;/SPAN&gt;;
    &lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;recurringSubscriptionInfo_subscriptionID = &lt;SPAN class=""&gt;'xxxxxxxx'&lt;/SPAN&gt;;

    &lt;SPAN class=""&gt;$reply&lt;/SPAN&gt; = &lt;SPAN class=""&gt;$client&lt;/SPAN&gt;-&amp;gt;&lt;SPAN class=""&gt;runTransaction&lt;/SPAN&gt;(&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;);&lt;/PRE&gt;&lt;P&gt;When I first run this code, the API complained that I didn't provide billing info, but I thought that's not necessary cause I provided the token for payment. After adding the billing info, it started complaining about missing credit card number, which doesn't make any sense, cause the whole point is to avoid sending those information and use payment token instead.&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jul 2022 05:17:04 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/cybersource-APIs/CyberSource-SOAP-Toolkit-API-Token-Payment/m-p/83494#M223</guid>
      <dc:creator>SnowranCruzick</dc:creator>
      <dc:date>2022-07-22T05:17:04Z</dc:date>
    </item>
    <item>
      <title>Re: CyberSource SOAP Toolkit API Token Payment?</title>
      <link>https://community.developer.cybersource.com/t5/cybersource-APIs/CyberSource-SOAP-Toolkit-API-Token-Payment/m-p/84123#M371</link>
      <description>&lt;P&gt;I believe you need to enable name-value-pairs in order to provide fields using&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;_&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;for nesting (e.g:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;recurringSubscriptionInfo_subscriptionID), when I changed your code to use XML payloads it worked:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;// ...&lt;/SPAN&gt;
&lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt;-&amp;gt;run = &lt;SPAN class=""&gt;'true'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;ccAuthService = &lt;SPAN class=""&gt;$ccAuthService&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt;-&amp;gt;run = &lt;SPAN class=""&gt;'true'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;ccCaptureService = &lt;SPAN class=""&gt;$ccCaptureService&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;merchantID = &lt;SPAN class=""&gt;'&amp;lt;my merchant id&amp;gt;'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;merchantReferenceCode = &lt;SPAN class=""&gt;uniqid&lt;/SPAN&gt;();

&lt;SPAN class=""&gt;$recurringSubscriptionInfo&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$recurringSubscriptionInfo&lt;/SPAN&gt;-&amp;gt;subscriptionID = &lt;SPAN class=""&gt;'&amp;lt;my subscription token&amp;gt;'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;recurringSubscriptionInfo = &lt;SPAN class=""&gt;$recurringSubscriptionInfo&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt; = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;stdClass&lt;/SPAN&gt;();
&lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt;-&amp;gt;currency = &lt;SPAN class=""&gt;'USD'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt;-&amp;gt;grandTotalAmount = &lt;SPAN class=""&gt;'100'&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;$request&lt;/SPAN&gt;-&amp;gt;purchaseTotals = &lt;SPAN class=""&gt;$purchaseTotals&lt;/SPAN&gt;;
&lt;SPAN class=""&gt;// ...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;Example, go to&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://developer.cybersource.com/cybs-dev-api-ref/index.html#payments-process-a-payment" target="_blank" rel="nofollow noopener noreferrer"&gt;https://developer.cybersource.com/cybs-dev-api-ref/index.html#payments-process-a-payment&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;A href="https://omegle.club" target="_blank" rel="noopener"&gt;/ome&lt;/A&gt;&lt;A href="https://omegle.ws" target="_blank" rel="noopener"&gt;gle&lt;/A&gt;&lt;A href="https://shagle.download" target="_blank" rel="noopener"&gt;shagle&lt;/A&gt; expand the "REQUEST FIELD DESCRIPTION" underneath and go to&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 14 Sep 2022 07:25:36 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/cybersource-APIs/CyberSource-SOAP-Toolkit-API-Token-Payment/m-p/84123#M371</guid>
      <dc:creator>SandraLewisFrin</dc:creator>
      <dc:date>2022-09-14T07:25:36Z</dc:date>
    </item>
  </channel>
</rss>

