Symptoms

An attempt to call PBA API method PlaceResourceUpgradeOrder_API fails with the following error message:

System Error
Data packet type error. Type: 12 Index: 5

Provider uses the following parameters in the XML request (header of the XML request is omitted):

<member>
 <name>Params</name>
 <value>
  <array>
   <data>
    <value><i4>1014381</i4></value>
    <value><i4>1</i4></value>
    <value><i4>0</i4></value>
    <value><string>192.168.1.1</string></value>
    <value><i4>100363</i4></value>
    <value><i4>100363</i4></value>
    <value><double>1.0</double></value>
   </data>
  </array>
 </value>
</member>

Cause

  1. The API method PlaceResourceUpgradeOrder_API is incorrectly described in the documentation. The parameter UsersID (which can be any value) is not described in the PBA API Guide.

  2. In PBA 5.4 PayTool = 0 (Check/Cash) is not accepted, the issue is fixed in PBA 5.5.

Resolution

Use syntax described below and some different payment method (not Check/Cash).

Correct syntax:

ItemResult BM::PlaceResourceUpgradeOrder_API(
  Int SubscriptionID;
  Int usePayTool;
  Int useDefaultPayTool;
  Int UserID;
  Str FromIP;
  Int ResourceID;
  Int NewResourceID;
  Double Amount.
)

Internal content

Link on internal Article