如何使用 sumup-ecom-php-sdk 从 SumUp 获取付款链接?

问题描述 投票:0回答:0

我将使用 sumup-ecom-php-sdk 获取我们发票的付款链接。 我怎样才能实现我的想法?

$sumup = new \SumUp\SumUp([
    'app_id' => '...',
    'app_secret' => '...',
    'grant_type' => 'client_credentials',
]);

$checkoutService = $sumup->getCheckoutService();
$amount =$invoice->amount;
$currency = $invoice->currency;
$checkoutRef = $invoice->number;
$payToEmail = $invoice->recipient;
$description = $invoice->description;

$checkoutResponse = $checkoutService->create($amount, $currency, $checkoutRef, $payToEmail, $description);
$checkoutId = $checkoutResponse->getBody()->id;

如何使用 $checkoutService 获取付款链接? $checkoutResponse->getBody(); 的响应中没有支付链接

所以我使用 $checkoutId 自己创建了支付链接,如下所示。

$redirectUrl = 'http://127.0.0.1:8000/sumup/checkout?ref='.$checkoutRef.'&token='.$checkoutId

web.php

Route::get('/sumup/checkout', [SumupPayController::class, 'index']);

SumUpController.php

public function index(Request $request)
{
    $invoiceNumber = urldecode($request->query('ref'));
    $checkoutId = urldecode($request->query('token'));
    return view('sumup_checkout', compact('invoiceNumber','checkoutId'));
}

sumup_checkout.blade.php

<script src="https://gateway.sumup.com/gateway/ecom/card/v2/sdk.js"></script>
@extends('layout.app_layout_client')
@section('body')
    <div id="sumup-card"></div>
@endsection
@push('post-body-script')
    <script>
        const checkoutId = @json($checkoutId);
        const invoiceNumber = @json($invoiceNumber);
        console.log(checkoutId, invoiceNumber);

        var sumupCard = SumUpCard.mount({
            checkoutId: checkoutId,
            showFooter: true,
            currency: "EUR",
            locale: "de-DE",
            onResponse: function (type, body) {
                switch(type) {
                    case "sent":
                        break;
                    case "invalid":
                        break;
                    case "auth-screen":
                        break;
                    case "error":
                        break;
                    case "success":
                        break;
                    default:
                        break;
                }
            },
        });
    </script>
@endpush

如你所见,我使用sumup-card-sdk开发了前端页面。 但是当我点击 sumup-card 的提交按钮时,我不知道包括我输入的卡信息在内的请求被发送到哪里。 所以我无法连接到后端。

如何使用SumUp提供的sumup-ecom-php-sdk和支付插件获取支付链接?

php laravel api integration sumup-payments
© www.soinside.com 2019 - 2024. All rights reserved.