PaySDK é um SDK de pagamento integrado em PHP que integra as interfaces de pagamento do Alipay e WeChat Pay e as operações de outras interfaces relacionadas.
Sem dependências de estrutura, oferece suporte a todas as estruturas e ao ambiente de rotina Swoole.
Temos documentação técnica online completa: http://doc.yurunsoft.com/PaySDK
Documentação da API: https://apidoc.gitee.com/yurunsoft/PaySDK
Este projeto entrou em fase de manutenção e não suportará a interface do WeChat V3. Estou com preguiça de segui-los. Se precisar, procure outro lugar!
O próprio autor não fornece nenhum suporte técnico. Se necessário, você pode participar do grupo de discussão: 17916227. Não há certeza se alguém responderá.
Todos certamente se conectarão a várias plataformas de pagamento durante o desenvolvimento. Pessoalmente, tenho energia limitada. Você pode enviar um PR no Github e trabalhar em conjunto para melhorar o PaySDK para que ele possa suportar mais plataformas de pagamento e ser mais estável, confiável e fácil de usar. .
Pagamento instantâneo - pagamento por site de computador (antigo)
Pagamento instantâneo – pagamento por site móvel (antigo)
Pague pessoalmente
Pagamento de site móvel
Pagamento de site de computador
Servidor de pagamento APP
Pagamento do miniprograma
Transferência única para conta Alipay
Pagamento no exterior (site de computador, site móvel, APP, código de digitalização)
Declaração aduaneira
Outras interfaces auxiliares de transação (reembolsos, consultas, etc.)
Pague com cartão
Pagamento por conta oficial
Digitalize o código para pagar
Pagamento de APLICATIVO
Pagamento H5
Pagamento do miniprograma
Pagamentos comerciais a serem alterados
Pagamentos comerciais para cartões bancários
Pagamento no exterior (cartão magnético, conta oficial, código de digitalização, APP)
Declaração aduaneira
Outras interfaces auxiliares de transação (reembolsos, consultas, etc.)
Adicione configuração ao seu compositor.json:
PHP >= 5.5
{"require": {"yurunsoft/pay-sdk": "~3.0"} }
PHP >= 5.4
{"require": {"yurunsoft/pay-sdk": "~2.0"} }
A versão 3.x suporta PHP >= 5.5 e está em manutenção iterativa contínua.
A versão 2.x suporta PHP >= 5.4, suporta manutenção de BUG de longo prazo, garante estabilidade e disponibilidade e interrompe atualizações funcionais.
Em seguida, execute o comando composer update
.
// Instanciação do SDK, passe na configuração pública $pay = new YurunPaySDKAlipaySDK($params); // Interface de pagamento $request = new YurunPaySDKAlipayParamsPayRequest; $request->notify_url = ''; , isso é confiável) $request->return_url = ''; Ir para o endereço de retorno após o pagamento $request->businessParams->seller_id = $GLOBALS['PAY_CONFIG']['appid']; // Número de usuário Alipay do vendedor $request->businessParams->out_trade_no = 'test' . 10000000,99999999); Número do pedido do comerciante $request->businessParams->total_fee = 0.01; // Preço $request->businessParams->subject = 'Produto de teste' // Título do produto // Ir para a página de pagamento // $pay->redirectExecute( $; request);//Obtém a url de salto$pay->prepareExecute($request, $url);var_dump($url);
// Instanciação do SDK, passe na configuração pública $pay = new YurunPaySDKAlipayAppSDK($params); // Interface de pagamento $request = new YurunPaySDKAlipayAppWapParamsPayRequest; $request->notify_url = ''; , isso é confiável) $request->return_url = ''; Ir para o endereço de retorno após o pagamento $request->businessParams->out_trade_no = 'test' . // Preço $request-> businessParams ->subject = 'Xiaomi Mobile 9 Black Ceramic Exclusive Edition' // título do produto // Vá para a página de pagamento // $pay->redirectExecute($request); // Obtenha a url de salto $pay->prepareExecute($request, $url);var_dump($url);
// Instanciação do SDK, passe na configuração pública $pay = new YurunPaySDKWeixinSDK($params); // Interface de pagamento $request = new YurunPaySDKWeixinH5ParamsPayRequest; $request->body = 'test'; 'teste' .mt_rand(10000000,99999999); Número do pedido $request->total_fee = 1; // Valor total do pedido, unidade: centavos $request->spbill_create_ip = '127.0.0.1'; // IP do cliente $request->notify_url = ''; / Interface de chamada $resultado = $pay->execute($request);if($pay->checkResult()) {// Vá para o cabeçalho da interface de pagamento('Location: ' . $result['mweb_url']); }else{var_dump($pay->getErrorCode() . ':' . $pay->getError()); }saída;
Nas notificações assíncronas de pagamento e reembolso, os objetos Request
e Response
do Swoole
precisam ser atribuídos ou podem ser utilizados objetos que cumpram o padrão PSR-7.
Os objetos Request
e Response
das estruturas convencionais geralmente seguem o padrão PSR-7 e podem ser usados diretamente.
imi é uma estrutura de desenvolvimento de aplicativos de rotina de alto desempenho baseada em PHP Swoole. Ela suporta o desenvolvimento de serviços HttpApi, WebSocket, TCP e UDP.
Com o suporte do Swoole, em comparação com a capacidade de resposta a solicitações do php-fpm, os recursos de processamento de cena com uso intensivo de E/S foram substancialmente melhorados.
A estrutura imi possui componentes funcionais ricos e pode ser amplamente utilizada na Internet, comunicações móveis, software empresarial, computação em nuvem, jogos online, Internet das Coisas (IOT), Internet de Veículos, casas inteligentes e outros campos. Pode melhorar muito a eficiência das equipes corporativas de P&D de TI e focar mais no desenvolvimento de produtos inovadores.
https://www.imiphp.com/
/** * Este é um método de ação no controlador * @Action */public function test() {$payNotify = nova classe estende YurunPaySDKWeixinNotifyPay {/** * Operações de execução subsequentes * @return void */protected function __exec() { } };$context = RequestContext::getContext();//As duas linhas a seguir são críticas $payNotify->swooleRequest = $context['request'];$payNotify->swooleResponse = $context['response'];$sdk - >notify($payNotify);// Esta frase deve ser preenchida return $payNotify->swooleResponse; }
$payNotify = nova classe estende YurunPaySDKWeixinNotifyPay {/** * Operações de execução subsequentes * @return void */protected function __exec() { } }; // As duas linhas a seguir são críticas, $request, $response são obtidas da solicitação // Ou verifique como obtê-las no framework que você está usando $payNotify->swooleRequest = $request;$payNotify->swooleResponse = $ resposta;$ SDK->notificar($payNotify);
$payNotify = nova classe estende YurunPaySDKWeixinNotifyPay {/** * Operações de execução subsequentes * @return void */protected function __exec() { } }; // Atualmente, o Swoole principal basicamente suporta objetos padrão PSR-7 // para que possa ser passado diretamente. Consulte a documentação da estrutura correspondente para saber como obtê-lo. payNotify->swooleResponse = $response; $sdk->notify($payNotify);//Após a conclusão do processamento, $response precisa ser retornado do controlador ou atribuído ao contexto// As operações de diferentes estruturas são diferentes. Consulte a documentação da estrutura correspondente return $payNotify->swooleResponse;
Conteúdo do serviço:
Abertura de conta de baixo custo (somente comerciantes legais)
Solução de problemas e consulta
Pague em nome de terceiros
Outra cooperação
Se necessário, adicione QQ: 369124067
WeChat: wx_zhangrunyu
(indique o objetivo da sua visita)
O código aberto não busca lucro, é tudo uma questão de coração. A vida não é fácil, então siga o fluxo...