2012-03-01 7 views
0

サーバーからサーバーへのDwollaメソッドのdocsをフォローし、次のjsonデータを含む文書のURLへの投稿要求を本文内に作成しています:Dwollaサーバーとサーバーとのチェックアウト方法の無効な合計エラー

エラーは、問題が「合計」は$ 1以下であることであると私に語ったが、

{ 
    "Result":"Failure", 
    "Message":"Total cannot be less than $1." 
} 

:データは、私には有効なようですしながら、

{ 
    "Key":"Fake_Key", 
    "Secret":"Fake_Secret", 
    "PurchaseOrder":{ 
     "DestinationId":"Fake_Destination_id", 
     "Discount":0, 
     "OrderItems":[ 
     { 
      "Description":"a product", 
      "Name":"lol", 
      "Price":19.99, 
      "Quantity":20 
     } 
     ] 
    }, 
    "Shipping":0, 
    "Tax":0, 
    "Total":399.8, 
    "Test":true 
} 

は残念ながら、そのサーバがエラーメッセージで応答していますそれは非常にはっきりしていません。

- 詳細情報

は、ここで私は、要求を行うために使用しているPHPの:

$result = file_get_contents('https://www.dwolla.com/payment/request', null, stream_context_create(array(
    'http' => array(
    'method' => 'POST', 
    'header' => 'Content-Type: application/json' . "\r\n" . 
     'Content-Length: ' . strlen(json_encode($body)) . "\r\n", 
     'content' => json_encode($body), 
    ), 
))); 

私はコンテンツタイプを称賛すると、私はエラーとして「無効なアプリケーションの資格情報」を取得します。

答えて

0

server-to-server request docsからは完全にはわからないかもしれませんが、 "Shipping"、 "Tax"、 "Total"パラメータはすべて "PurchaseOrder"オブジェクトパラメータ内にネストする必要があります。したがって、仕事を依頼するには、次のようにパラメータの位置を変更する必要があります。

{ 
    "Key":"Fake_Key", 
    "Secret":"Fake_Secret", 
    "PurchaseOrder":{ 
     "DestinationId":"Fake_Destination_id", 
     "Discount":0, 
     "OrderItems":[ 
     { 
      "Description":"a product", 
      "Name":"lol", 
      "Price":19.99, 
      "Quantity":20 
     } 
     ], 
     "Shipping":0, 
     "Tax":0, 
     "Total":399.8 
    }, 
    "Test":true 
} 
関連する問題