QIWI рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдирдпрд╛ REST рдкреНрд░реЛрдЯреЛрдХреЙрд▓

рдирдорд╕реНрддреЗред
рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд╣реИрдмрд░ рдХрд╛ рдкрд╛рдардХ рд╣реВрдВ рдФрд░ рдЕрдХреНрд╕рд░ рдпрд╣рд╛рдВ рдореЗрд░реЗ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рдорд┐рд▓рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реБрдЖ рдХрд┐ рдЬрд╡рд╛рдм рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрд╛ред рдФрд░ рдХрд╣реАрдВ рдирд╣реАрдВред
рдФрд░ рдХрд╛рд░реНрдп рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдерд╛ред QIWI рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ (REST) тАЛтАЛрдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рдореБрдЭреЗ рдкрд░реАрдХреНрд╖рдг, рддреНрд░реБрдЯрд┐, рдкреНрд░рдмрдВрдзрдХ рдФрд░ рд╕рд╣рд╛рдпрдХ рдЯреАрдо рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рджрд┐рди рдмрд┐рддрд╛рдиреЗ рдкрдбрд╝реЗ рдХрд╣реАрдВ рднреА рдХреЛрдИ рдЙрджрд╛рд╣рд░рдг рдирд╣реАрдВ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрд╛рд░реНрдп рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред
рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ, рдореИрдВ рдЙрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рдореИрдВрдиреЗ рдмрд╣реБрдд рдпрд╛рдж рдХрд┐рдПред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИред
рдореБрдЭреЗ рддреБрд░рдВрдд рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдореИрдВ рдкреЗрдВрдЯ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдЪрдмрд╛рдКрдВрдЧрд╛ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рдКрдВрдЧрд╛ред рдХреЗрд╡рд▓ рд╡рд╣реА рдореВрд▓ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рдореИрдВ рдЖрд╡рд╢реНрдпрдХ рдорд╛рдирддрд╛ рд╣реВрдВред рдлрд┐рд░ рднреА, рд╣рд░ рдХрд┐рд╕реА рдХреА рдЕрдкрдиреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдБ рдФрд░ рд▓рдХреНрд╖реНрдп рд╣реЛрддреЗ рд╣реИрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдЕрдкрдирд╛ рд╕реНрдЯреЛрд░ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ http://ishopnew.qiwi.ru/
рдХрдиреЗрдХреНрд╢рди рдореЗрдердбреНрд╕ рд╕реЗрдХреНрд╢рди рдореЗрдВ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдиреНрдпреВ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЖрдЗрдЯрдо рдорд┐рд▓реЗрдЧрд╛ред рд╡рд╣рд╛рдВ рдЖрдк рдирдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдПрдкреАрдЖрдИ рд╡рд┐рд╡рд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ cURL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред
рдпрд╣рд╛рдБ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдерд╛:
$requestType = 'POST'; //  REST    $url = 'some url'; //     $parameters = array(); //      $loginPass = $id . ':' . $password; // ID   (    ) $headers = array( "Accept: text/json", "Content-Type: application/x-www-form-urlencoded; charset=utf-8" ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($ch, CURLOPT_USERPWD, $loginPass); if ($requestType != 'GET') { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $requestType); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($parameters)); } $httpResponse = curl_exec($ch); if (!$httpResponse) { //  ,   echo curl_error($ch).'('.curl_errno($ch).')'; return false; } $httpResponseAr = json_decode($httpResponse); return $httpResponseAr->response; 

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╣реИред

рдЕрдм рдХреМрди рд╕реЗ рдСрдкрд░реЗрд╢рди рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдкреНрд░рд▓реЗрдЦрди рд╕рдм рдХреБрдЫ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рд╣реИред рдореИрдВ рд╕рд┐рд░реНрдл рдХреБрдЫ рдЪреАрдЬреЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдореЗрд░реЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд┐рдпрд╛ред

рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╕реЗ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред

1) рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрд┐рд▓рд┐рдВрдЧ
 $requestType = 'PUT'; $url = 'https://w.qiwi.com/api/v2/prv/{prv_id}/bills/{bill_id}'; // {prv_id} тАУ   ,    ID . // {bill_id} тАУ   ,          . $parameters = array( 'user' => 'tel:+79999999999', 'amount' => 0.1, 'ccy' => 'RUB', 'comment' => ' QIWI', 'pay_source' => 'qw', 'lifetime' => date('c', $timePlusHour), 'prv_name' => 'QIWI', ); 

рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде, рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИред

2) рдЕрдиреБрд░реЛрдз рдЦрд╛рддрд╛ рд╕реНрдерд┐рддрд┐
рдпрджрд┐ рдмрд┐рд▓рд┐рдВрдЧ рдХреЗ рдмрд╛рдж рдЪрд╛рд▓рд╛рди рдХрд╛ рднреБрдЧрддрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рд╣рдореЗрдВ рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╢рд╛рдпрдж рд╕рд┐рд╕реНрдЯрдо рдиреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рджреЗрд░реА рдХреА рдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдЗрд╕реЗ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рднреБрдЧрддрд╛рди рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЬрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЖрдк рдХреНрд░реЛрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
 $requestType = 'GET'; $url = 'https://w.qiwi.com/api/v2/prv/{prv_id}/bills/{bill_id}'; //   $parameters = array(); 


3) рдмрд┐рд▓ рдХрд╛ рднреБрдЧрддрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдирд╛
рд╕рдлрд▓ рдмрд┐рд▓рд┐рдВрдЧ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рднреБрдЧрддрд╛рди рдкреГрд╖реНрда рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣рд╛рдБ cURL рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╕ рдПрдХ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
 $url = 'https://w.qiwi.com/order/external/main.action?shop={prv_id }&transaction={bill_id}'; $url .= '&successUrl=' . $successUrl; $url .= '&failUrl=' . $failUrl; // {prv_id}  {bill_id}     . // $successUrl  $failUrl         . 


4) рдЕрд╡реИрддрдирд┐рдХ рдЪрд╛рд▓рд╛рди рд░рджреНрдж рдХрд░реЗрдВ
рдЪрд╛рд▓рд╛рди рд░рджреНрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЪрд╛рд▓рд╛рди рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рднреБрдЧрддрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рд╕реНрдЯреЛрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрддреЗ рдкрд░ рднреЗрдЬ рджреЗрдЧрд╛, рдЦрд╛рддреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдкреБрд╖реНрдЯрд┐ рдХреЗ рд▓рд┐рдП POST рдЕрдиреБрд░реЛрдзред рдпрджрд┐ рдЖрдк рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЕрдВрдд рдореЗрдВ рд╕реНрдЯреЛрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдИрдореЗрд▓ рдкрд░ рдПрдХ рдкрддреНрд░ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ред
 $requestType = 'PATCH'; $url = 'https://w.qiwi.com/api/v2/prv/{prv_id}/bills/{bill_id}'; //   $parameters = array( 'status' => 'rejected' ); 


5) рднреБрдЧрддрд╛рди рдХрд┐рдП рдЧрдП рдЦрд╛рддреЗ рдХрд╛ рд░рд┐рдлрдВрдб
рдЖрдк рдзрдирд╡рд╛рдкрд╕реА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
 $requestType = 'PUT'; $url = 'https://w.qiwi.com/api/v2/prv/{prv_id}/bills/{bill_id}/refund/{refund_id}'; //  ,  {refund_id}    $parameters = array( 'amount' => $amount ); 


6) рд░рд┐рдЯрд░реНрди рд╕реНрдЯреЗрдЯрд╕ рдЪреЗрдХ рдХрд░реЗрдВ
рдЖрдкрдХреЛ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рд░рд┐рдЯрд░реНрди рдХреА рд╕реНрдерд┐рддрд┐ рднреА рдЬрд╛рдВрдЪрдиреА рд╣реЛрдЧреАред
 $requestType = 'GET'; $url = 'https://w.qiwi.com/api/v2/prv/{prv_id}/bills/{bill_id}/refund/{refund_id}'; //  ,  {refund_id}         $parameters = array(); 


рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЖрдкрдХреЛ рджреЛ POST рдЕрдиреБрд░реЛрдз рд╣реИрдВрдбрд▓рд░ рднреА рдмрдирд╛рдиреЗ рд╣реЛрдВрдЧреЗ, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВрдиреЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл 4 рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛ред рдЕрдиреБрд░реЛрдз рдХрдИ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рднреЗрдЬреЗрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
  1. рдмрд┐рд▓_рд┐рдж = рдмрд┐рд▓ -рез
  2. рджрд░реНрдЬрд╛ = рдЕрджрд╛
  3. рддреНрд░реБрдЯрд┐ = реж
  4. рд░рд╛рд╢рд┐ = 1.00
  5. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ = tel% 3A% 2B79031811737
  6. prv_name = рдкрд░реАрдХреНрд╖рдг
  7. рд╕рд┐рд╕реА = рдЖрд░рдпреВрдмреА
  8. рдЯрд┐рдкреНрдкрдгреА = рдкрд░реАрдХреНрд╖рдг
  9. рдХрдорд╛рдВрдб = рдмрд┐рд▓

рдЕрдиреБрд░реЛрдз рдХрд┐рд╕ рдкрддреЗ рдкрд░ рдЖрдпрд╛ рдерд╛, рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЖрдкрдХреЛ рдЬрд╛рдВрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрд╣ рддрдп рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рднреБрдЧрддрд╛рди рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред рдпрд╛ рддреЛ рдкреИрд╕реЗ рдХреЛ рдХреНрд░реЗрдбрд┐рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрджрд┐ рднреБрдЧрддрд╛рди рдкрд╛рд░рд┐рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЕрдиреБрд░реЛрдз рд╕рдлрд▓ рд╣реИред рд╢реЗрд╖ рд░рд╛рд╢рд┐ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдкреИрд╕рд╛ рдЬрдорд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рднреБрдЧрддрд╛рди рдЕрд╕рдлрд▓ рд░рд╣рд╛ред

рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдореИрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдЖрдХреНрд░реЛрд╢ рд╡реНрдпрдХреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдХреНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВрдЖрдИ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдореЛрдб рдпрд╛ рдкрд░реАрдХреНрд╖рдг рд╕рд╛рдЗрдЯ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╡реЙрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рднреБрдЧрддрд╛рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 10 kopecksред

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдВрджреЗрд╢ рдиреЗ рдореБрдЭреЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреА рдереЛрдбрд╝реА рдорджрдж рдХреА рдЬреЛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдЖрдЦрд┐рд░рдХрд╛рд░, рд╡рд╣ рдЙрди рд╕рднреА рджреЗрд╢реЛрдВ рд╕реЗ рднреБрдЧрддрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдЕрд╡рд╕рд░ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ QIWI рд╣реИред

Source: https://habr.com/ru/post/In198668/


All Articles