Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

missingField ics_applications #31

Open
juniormc opened this issue Feb 19, 2018 · 3 comments
Open

missingField ics_applications #31

juniormc opened this issue Feb 19, 2018 · 3 comments

Comments

@juniormc
Copy link

juniormc commented Feb 19, 2018

Hello! I'm trying use runTransactionFromXml but when but when execute return this message from desision manager:

REJECT
missingField => ics_applications

How to add field in xml string?

I run the subscription.php example and I have the same message

Thanks for your help.

@itsdarrylnorris
Copy link

Same issue

@antonioandrade
Copy link

I ran into the same issue when implementing eCheck debits using this SDK - no sample code would work as expected.
After some back and forth, I was able to get transactions through.
The key change was adding:

<ics_applications>ics_ecp_debit</ics_applications>

$client = new CybsSoapClient();
$merchantId = 'MERCHANT_ID';
$refCode = 'REF-' . time();

$xmlRequest = <<<XML
<requestMessage>
    <merchantID>{$merchantId}</merchantID>
    <merchantReferenceCode>{$refCode}</merchantReferenceCode>
    <billTo>
        <firstName>First</firstName>
        <lastName>Last</lastName>
        <street1>Address</street1>
        <city>City</city>
        <state>State</state>
        <postalCode>1234</postalCode>
        <country>Country</country>
        <phoneNumber>000-000-0000</phoneNumber>
        <email>email@example.org</email>
    </billTo>
    <purchaseTotals>
        <currency>USD</currency>
        <grandTotalAmount>10</grandTotalAmount>
    </purchaseTotals>
    <check>
        <accountNumber>111</accountNumber>
        <accountType>c</accountType>
        <bankTransitNumber>021000021</bankTransitNumber>
    </check>
    <ics_applications>ics_ecp_debit</ics_applications>
    <ecDebitService run="true"/>
</requestMessage>
XML;

$reply = $client->runTransactionFromXml($xmlRequest, $refCode);

This is clearly under-documented but you can find reference to the ics_applications field on this document (page 123 for instance):
http://apps.cybersource.com/library/documentation/dev_guides/Electronic_Checks_IG/Electronic_Checks_ENT.pdf

@rhoerr
Copy link

rhoerr commented Feb 5, 2020

For anyone else that runs into this error: ics_applications is an internal processing thing on CyberSource's side, and is not indicative of the actual input error.

In my case, it was because PHP SoapClient was converting my ccAuthService run="true" boolean into ccAuthService run="1" for the actual request. It has to be literal true or false. Getting that changed from boolean true to string true worked fine.

<ccAuthService run="true" />

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants