Heim  >  Artikel  >  Backend-Entwicklung  >  Anmerkungen zur PHP-Studie: Alipay- und WeChat-Zahlungsintegration

Anmerkungen zur PHP-Studie: Alipay- und WeChat-Zahlungsintegration

PHPz
PHPzOriginal
2023-10-08 10:29:00745Durchsuche

Anmerkungen zur PHP-Studie: Alipay- und WeChat-Zahlungsintegration

PHP-Studiennotizen: Die Integration von Alipay und WeChat Pay erfordert spezifische Codebeispiele

Einführung:
Mit der Popularität mobiler Zahlungen und der steigenden Benutzernachfrage sind Alipay und WeChat Pay zu den gängigsten Online-Zahlungsmethoden geworden. Bei der Entwicklung von Projekten wie Online-Einkaufszentren und Online-Zahlungsplattformen ist die Integration von Alipay und WeChat Pay ein wesentlicher Bestandteil. Dieser Artikel konzentriert sich auf die Verwendung der PHP-Sprache zur Integration von Alipay und WeChat Pay und stellt spezifische Codebeispiele bereit.

1. Alipay-Zahlungsintegration
Alipay-Zahlung ist derzeit die am weitesten verbreitete Zahlungsplattform von Drittanbietern in China und bietet eine Fülle von Schnittstellen und Entwicklungsdokumenten. Im Folgenden erfahren Sie, wie Sie PHP zur Integration von Alipay-Zahlungen verwenden:

  1. Beantragen Sie ein Alipay-Entwicklerkonto
    Bevor Sie beginnen, müssen Sie zunächst ein Alipay-Entwicklerkonto beantragen. Registrieren Sie sich und beantragen Sie über die Alipay Developer Platform (https://open.alipay.com/), um ein Entwicklerkonto und den entsprechenden Anwendungsschlüssel zu erhalten.
  2. Alipay SDK herunterladen
    Alipay stellt das offizielle PHP SDK bereit, das über GitHub (https://github.com/alipay/alipay-sdk-PHP) heruntergeladen und referenziert werden kann.
  3. Führen Sie die Alipay SDK-Datei ein
    Extrahieren Sie die heruntergeladene Alipay SDK-Datei und fügen Sie sie in das Projekt ein. Stellen Sie dabei sicher, dass die folgenden Dateien vorhanden sind:
  4. AopSdk.php: die Kerndatei von Alipay SDK
  5. AopCertification.php: die Zertifikatsklasse Datei
  6. AopClient.php: Klassendatei anfordern
  7. Alipay-Instanz erstellen
    Alipay-Instanz im Code erstellen und das entsprechende Entwicklerkonto und den Anwendungsschlüssel festlegen:

require_once 'path/to/AopSdk.php';

$ appId = 'your_app_id '; // Durch die tatsächliche Anwendungs-ID ersetzen
$privateKey = 'your_private_key'; // Durch den tatsächlichen privaten Schlüssel der Anwendung ersetzen
$publicKey = 'alipay_public_key'; // Durch den tatsächlichen öffentlichen Schlüssel von Alipay ersetzen

$alipay = new AopClient();
$alipay->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
$alipay->appId = $appId;
$alipay->rsaPrivateKey = $privateKey;
$alipay->alipayrsaPublicKey = $publicKey;

  1. Eine Zahlungsanforderung initiieren
    Verwenden Sie die Methode in der Alipay-Instanz, um eine Zahlungsanforderung zu initiieren. Das Folgende ist ein einfaches Beispiel zum Erstellen einer Bestellung für Alipay PC-Webzahlung:

$bizContent = [
'subject' => 'Test order',
'out_trade_no' => 'test_order_20220101',
'total_amount ' => '0.01',
'product_code' => 'FAST_INSTANT_TRADE_PAY',
];

$request = new AlipayTradePayRequest();
$request->setNotifyUrl('your_notify_url'); asynchrone Benachrichtigungsadresse
$request->setReturnUrl('your_return_url'); // Durch die tatsächliche synchrone Sprungadresse ersetzen
$request->setBizContent(json_encode($bizContent, JSON_UNESCAPED_UNICODE));

$response = $ alipay- >pageExecute($request);
echo $response;

  1. Benachrichtigung über Zahlungsergebnisse wird verarbeitet
    Nach erfolgreicher Alipay-Zahlung wird das Zahlungsergebnis durch asynchrone Benachrichtigung an das Backend des Händlers gesendet. Code muss im Hintergrund geschrieben werden, um die asynchronen Benachrichtigungen von Alipay zu verarbeiten. Hier ist ein einfaches Codebeispiel:

$alipayPublicKey = 'alipay_public_key'; // Durch den tatsächlichen öffentlichen Alipay-Schlüssel ersetzen
$verifyResult = $alipay->rsaCheckV1($_POST, $alipayPublicKey, 'RSA2');
if ($verifyResult) {
// Überprüfung erfolgreich, Auftragslogik verarbeiten
// TODO: Auftragslogik verarbeiten
echo 'success';
} else {
// Überprüfung fehlgeschlagen, Fehlermeldung ausgeben
echo 'fail';
}

2. WeChat Pay-Integration
WeChat Pay ist eine Online-Zahlungsplattform von Tencent. Im Vergleich zur Alipay-Zahlung ist WeChat Pay bei mobilen Nutzern beliebter. Im Folgenden erfahren Sie, wie Sie PHP zur Integration von WeChat-Zahlungen verwenden:

  1. Bewerben Sie sich für ein WeChat-Entwicklerkonto
    Bevor Sie beginnen, müssen Sie zunächst über die offene WeChat-Plattform (https://open.weixin) ein WeChat-Entwicklerkonto beantragen .qq.com/) Registrieren Sie sich und beantragen Sie den Erhalt eines Entwicklerkontos und der entsprechenden Anwendungs-ID, Händlernummer und API-Schlüssel.
  2. Wir stellen vor: WeChat Pay SDK-Dateien
    WeChat Pay stellt das offizielle PHP SDK bereit, das über GitHub (https://github.com/wxpay/wechatpay-gysp-php) heruntergeladen und referenziert werden kann.
  3. Erstellen Sie eine WeChat-Zahlungsinstanz
    Erstellen Sie eine WeChat-Zahlungsinstanz im Code und legen Sie das entsprechende Entwicklerkonto und den API-Schlüssel fest:

require_once 'path/to/WxPay.Api.php';

$appId = 'your_app_id ' ; // Durch tatsächliche App-ID ersetzen
$merchantId = 'your_merchant_id'; // Durch tatsächliche Händler-ID ersetzen

$wxPayConfig = new WxPayConfig ();

$ wxPayConfig->SetAppId($appId);
$wxPayConfig->SetMerchantId($merchantId);
$wxPayConfig->SetKey($apiKey);

$wxPay = new WxPayApi($wxPayConfig) ;

  1. Initiieren Sie eine Zahlungsanforderung.
    Verwenden Sie die Methode in der WeChat-Zahlungsinstanz, um eine Zahlungsanforderung zu initiieren. Das Folgende ist ein einfaches Beispiel zum Erstellen einer Bestellung für die offizielle WeChat-Kontozahlung:

$wxPayData = new WxPayUnifiedOrder();
$wxPayData->SetBody('Test Order');
$wxPayData->SetOutTradeNo(' test_order_20220101');
$wxPayData->SetTotalFee(1);
$wxPayData->SetTradeType('JSAPI');
$wxPayData->SetOpenId('your_open_id'); // Durch tatsächliche Benutzer-OpenID ersetzen

$result = $wxPay->unifiedOrder($wxPayData);
$jsApiParameters = $wxPay->getJsApiParameters($result['prepay_id']);

  1. Benachrichtigung über das Zahlungsergebnis wird verarbeitet
    Nachdem die WeChat-Zahlung erfolgreich war, wird sie ausgeführt Die übergebene asynchrone Benachrichtigungsmethode sendet das Zahlungsergebnis an das Händler-Backend. Code muss im Hintergrund geschrieben werden, um asynchrone Benachrichtigungen für WeChat Pay zu verarbeiten. Hier ist ein einfaches Codebeispiel:

$wxPayNotify = new WxPayNotify($wxPayConfig);
$wxPayNotify->Handle(false);
$orderInfo = $wxPayNotify->GetPayOrder();

// Verifizierungszahlung result
if ($orderInfo['return_code'] === 'SUCCESS' && $orderInfo['result_code'] === 'SUCCESS') {
// Überprüfung erfolgreich, Bestelllogik verarbeitet
// TODO: Bestelllogik verarbeiten
$wxPayNotify->ReplyNotify('SUCCESS');
} else {
// Verifizierung schlägt fehl und Fehlermeldung wird ausgegeben
$wxPayNotify->ReplyNotify('FAIL');
}

Fazit:
Eine kurze Einführung zu diesem Artikel Beschreibt die Verwendung der PHP-Sprache zur Integration von Alipay und WeChat Pay und stellt spezifische Codebeispiele bereit. In der tatsächlichen Entwicklung müssen entsprechend den spezifischen Anforderungen und der Geschäftslogik entsprechende Anpassungen und Erweiterungen vorgenommen werden. Ich hoffe, dieser Artikel hat Ihnen bei der Integration von Alipay und WeChat Pay geholfen. Wenn Sie Fragen haben, hinterlassen Sie bitte eine Nachricht zur Diskussion.

Das obige ist der detaillierte Inhalt vonAnmerkungen zur PHP-Studie: Alipay- und WeChat-Zahlungsintegration. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn