emagombe / mpesa-api
此包最新版本(v4.0.0)没有提供许可信息。
PHP编写的M-PESA(莫桑比克)API
v4.0.0
2024-07-13 19:52 UTC
Requires
- php: >=7.0
README
PHP编写的M-PESA(莫桑比克)API
此API(应用程序编程接口)允许使用PHP执行M-PESA交易。
安装
composer require emagombe/mpesa-api
实现
首先在https://developer.mpesa.vm.co.mz/网站上创建账户,并获取api key和public key
use emagombe\Mpesa; $api_key = ""; # Aqui introduz a api key disponibilizada no site $public_key = ""; # Aqui introduz o public key disponibilizado no site $environment = "development"; # production/development # Inicialização e criação do objecto $mpesa = Mpesa::init($api_key, $public_key, $environment);
从企业到客户的转账(从企业到客户)
从代理到客户的转账
$data = [ "value" => 10, # (Obrigatório) Valor a transferir "client_number" => "258840000000", # (Obrigatório) Número do cliente beneficiário "agent_id" => 171717, # (Obrigatório) Código do agente "transaction_reference" => 1234567 # (Obrigatório) Usado para atribuir uma referencia a transação "third_party_reference" => 33333, # (Obrigatório) Esta referencia será usada para efectuar consulta das transações ]; $response = $mpesa->b2c($data); print_r($response);
成功时的可能响应
{ "output_ResponseCode": "INS-0", "output_ResponseDesc": "Request processed successfully", "output_TransactionID": "wgzupjwc5mm9", "output_ConversationID": "ccf590fbfa1d4ff4a245b9c430a64220", "output_ThirdPartyReference": "33333" }
从客户到企业的转账(从客户到企业)
从客户到代理的转账
$data = [ "value" => 10, # (Obrigatório) Valor a transferir "client_number" => "258840000000", # (Obrigatório) Número do cliente "agent_id" => 171717, # (Obrigatório) Código do agente beneficiário "transaction_reference" => 1234567 # (Obrigatório) Usando para atribuir uma referencia a transação "third_party_reference" => 33333, # (Obrigatório) Esta referencia será usada para efectuar consulta das transações ]; $response = $mpesa->c2b($data); print_r($response);
成功时的可能响应
{ "output_ResponseCode": "INS-0", "output_ResponseDesc": "Request processed successfully", "output_TransactionID": "3cr8whltpb6m", "output_ConversationID": "25230e0e20514ba790c1273b866e98d1", "output_ThirdPartyReference": "33333" }
从企业到企业的转账(从企业到企业)
从代理到代理的转账
$data = [ "value" => 10, # (Obrigatório) Valor a transferir "agent_id" => 171717, # (Obrigatório) Código do agente "agent_receiver_id" => 979797, # (Obrigatório) Código do agente beneficiário "transaction_reference" => 1234567 # (Obrigatório) Usando para atribuir uma referencia a transação "third_party_reference" => 33333, # (Obrigatório) Esta referencia será usada para efectuar consulta das transações ]; $response = $mpesa->b2b($data); print_r($response);
成功时的可能响应
{ "output_ResponseCode": "INS-0", "output_ResponseDesc": "Request processed successfully", "output_TransactionID": "wdv2x712xjsx", "output_ConversationID": "1f427e27529e410ea433c79a253d7281", "output_ThirdPartyReference": "33333" }
交易撤销
$data = [ "value" => 10, "security_credential" => "", # (Obrigatório) "indicator_identifier" => "", # (Obrigatório) "transaction_id" => "", # (Obrigatório) Id da transação a reverter "agent_id" => 171717, # (Obrigatório) Código do agente "third_party_reference" => 33333, # (Obrigatório) Esta referencia será usada para efectuar consulta das transações ]; $response = $mpesa->reversal($data); print_r($response);
成功时的可能响应
{ "output_ResponseCode": "INS-0", "output_ResponseDesc": "Request processed successfully", "output_TransactionID": "18c9kqgagz7h", "output_ConversationID": "2af1dce322394316917307c5320add6d", "output_ThirdPartyReference": "33333" }
交易状态
$data = [ "transaction_id" => "", # (Obrigatório) Id da transação a reverter "agent_id" => 171717, # (Obrigatório) Código do agente "third_party_reference" => 33333, # (Obrigatório) Esta referencia será usada para efectuar consulta das transações ]; $response = $mpesa->status($data); print_r($response);
成功时的可能响应
{ "output_ResponseCode": "INS-0", "output_ResponseDesc": "Request processed successfully", "output_ResponseTransactionStatus": "Completed", "output_ConversationID": "7552194cb219468fa8da3356eed77feb", "output_ThirdPartyReference": "33333" }
客户名称
返回客户名称。通常用于确认输入的客户编号是否正确。
重要提示:使用测试凭据无法验证客户名称。需要获取生产凭据才能查看客户名称!
$data = [ "client_number" => "258840000000", # (Obrigatório) Número do cliente "agent_id" => 171717, # (Obrigatório) Código do agente "third_party_reference" => 33333, # (Obrigatório) Esta referencia será usada para efectuar consulta das transações ]; $response = $mpesa->customer_name($data); print_r($response);
成功时的可能响应
{ "output_ResponseCode": "INS-26", "output_ResponseDesc": "Not authorized", "output_ConversationID": "f4f9e06d93b7439eb79bd61c7de6f642", "output_ThirdPartyReference": "33333", "output_CustomerName": "N/A" }