Swish - шведский поставщик платежей. Вы платите, просто отправляя деньги на номер телефона. Не то же самое, что платежная служба, поэтому не путайте себя с этим. /> Если вы Pro можете помочь мне решить это, я думаю, что многие другие могут извлечь выгоду из решения в будущем.
Итак, вот мой текущий код. < Br />$payload = [
"payoutInstructionUUID" => "E4D773858AF5459B96ABCA4B9DBFF94D",
"payerPaymentReference" => "payerRef",
"payerAlias" => "1231388446",
"payeeAlias" => "46712345678",
"payeeSSN" => "xxxxxxxx",
"amount" => "100.00",
"currency" => "SEK",
"payoutType" => "PAYOUT",
"message" => "Message to the recipient.",
"instructionDate" => carbon::now(),
"signingCertificateSerialNumber" => "667A2C6E068B76988AB657351F5AF636"
];
$pkey = openssl_pkey_get_private(file_get_contents('Swish_Merchant_TestSigningCertificate_1234679304.key'), 'swish');
$payloadHash = hash('sha512', json_encode($payload));
$signature = openssl_sign($payloadHash, $signature, $pkey) ? base64_encode($signature) : null;
$request = [
"payload" => $payload,
"callbackUrl" => "https://postb.in/1634560192746-3820346647407",
"signature" => $signature
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://mss.cpc.getswish.net/swish-cpca ... v1/payouts');
curl_setopt($ch, CURLOPT_PORT, 443);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_SSLCERT, 'Swish_Merchant_TestCertificate_1234679304.p12');
curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'P12');
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, 'swish');
curl_setopt($ch, CURLOPT_SSLKEY, 'Swish_Merchant_TestCertificate_1234679304.key');
curl_setopt($ch, CURLOPT_SSLKEYPASSWD, 'swish');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_CAINFO, 'Swish_TLS_RootCA.pem');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSLVERSION, 6);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($request));
$f = tmpfile();
curl_setopt($ch, CURLOPT_STDERR, $f);
$results = curl_exec($ch);
fseek($f, 0);
echo "Verbose information:\n", fread($f, 32 * 1024), "\n";
fclose($f);
$info =curl_errno($ch)>0 ? array("curl_error_".curl_errno($ch)=>curl_error($ch)) : curl_getinfo($ch);
print_r($info);
curl_close($ch);
< /code>
Это дает мне этот ответ < /p>
* Trying 213.132.115.90:443...
* Connected to mss.cpc.getswish.net (213.132.115.90) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: Swish_TLS_RootCA.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
* ALPN, server did not agree to a protocol
* Server certificate:
* subject: C=SE; ST=Stockholms l�n; L=Stockholm; O=GetSwish AB; OU=IT; CN=mss.cpc.getswish.net
* start date: Feb 18 00:00:00 2020 GMT
* expire date: May 19 12:00:00 2022 GMT
* subjectAltName: host "mss.cpc.getswish.net" matched cert's "mss.cpc.getswish.net"
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018
* SSL certificate verify ok.
> POST /swish-cpcapi/api/v1/payouts HTTP/1.1
Host: mss.cpc.getswish.net
Accept: */*
Content-Type:application/json
Content-Length: 1172
* Mark bundle as not supporting multiuse
< HTTP/1.1 400
< Content-Type: application/json
< Transfer-Encoding: chunked
< Date: Thu, 21 Oct 2021 19:52:53 GMT
< Connection: close
<
* Closing connection 0
[
{
"errorCode":"PA01",
"errorMessage":"Parameter is not correct.",
"additionalInformation":null
}
]
< /code>
Как вы видите, ответ не очень точно скажите мне, что не так. Я попытался изменить подпись на какую -то нонс, и я все еще получил такое же сообщение об ошибке. Это заставляет меня поверить, что подпись неверна. < /P>
Для тестовой среды нет регистрации. Вы можете проверить это на своем собственном компьютере. p>
Сертификаты найдены здесь (под управлением сертификатов)>
Подробнее здесь: https://stackoverflow.com/questions/696 ... api-in-php
Swish Payout API в PHP ⇐ Php
Кемеровские программисты php общаются здесь
1738445326
Anonymous
Swish - шведский поставщик платежей. Вы платите, просто отправляя деньги на номер телефона. Не то же самое, что платежная служба, поэтому не путайте себя с этим. /> Если вы Pro можете помочь мне решить это, я думаю, что многие другие могут извлечь выгоду из решения в будущем.
Итак, вот мой текущий код. < Br />$payload = [
"payoutInstructionUUID" => "E4D773858AF5459B96ABCA4B9DBFF94D",
"payerPaymentReference" => "payerRef",
"payerAlias" => "1231388446",
"payeeAlias" => "46712345678",
"payeeSSN" => "xxxxxxxx",
"amount" => "100.00",
"currency" => "SEK",
"payoutType" => "PAYOUT",
"message" => "Message to the recipient.",
"instructionDate" => carbon::now(),
"signingCertificateSerialNumber" => "667A2C6E068B76988AB657351F5AF636"
];
$pkey = openssl_pkey_get_private(file_get_contents('Swish_Merchant_TestSigningCertificate_1234679304.key'), 'swish');
$payloadHash = hash('sha512', json_encode($payload));
$signature = openssl_sign($payloadHash, $signature, $pkey) ? base64_encode($signature) : null;
$request = [
"payload" => $payload,
"callbackUrl" => "https://postb.in/1634560192746-3820346647407",
"signature" => $signature
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://mss.cpc.getswish.net/swish-cpcapi/api/v1/payouts');
curl_setopt($ch, CURLOPT_PORT, 443);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_SSLCERT, 'Swish_Merchant_TestCertificate_1234679304.p12');
curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'P12');
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, 'swish');
curl_setopt($ch, CURLOPT_SSLKEY, 'Swish_Merchant_TestCertificate_1234679304.key');
curl_setopt($ch, CURLOPT_SSLKEYPASSWD, 'swish');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_CAINFO, 'Swish_TLS_RootCA.pem');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSLVERSION, 6);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($request));
$f = tmpfile();
curl_setopt($ch, CURLOPT_STDERR, $f);
$results = curl_exec($ch);
fseek($f, 0);
echo "Verbose information:\n", fread($f, 32 * 1024), "\n";
fclose($f);
$info =curl_errno($ch)>0 ? array("curl_error_".curl_errno($ch)=>curl_error($ch)) : curl_getinfo($ch);
print_r($info);
curl_close($ch);
< /code>
Это дает мне этот ответ < /p>
* Trying 213.132.115.90:443...
* Connected to mss.cpc.getswish.net (213.132.115.90) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: Swish_TLS_RootCA.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
* ALPN, server did not agree to a protocol
* Server certificate:
* subject: C=SE; ST=Stockholms l�n; L=Stockholm; O=GetSwish AB; OU=IT; CN=mss.cpc.getswish.net
* start date: Feb 18 00:00:00 2020 GMT
* expire date: May 19 12:00:00 2022 GMT
* subjectAltName: host "mss.cpc.getswish.net" matched cert's "mss.cpc.getswish.net"
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018
* SSL certificate verify ok.
> POST /swish-cpcapi/api/v1/payouts HTTP/1.1
Host: mss.cpc.getswish.net
Accept: */*
Content-Type:application/json
Content-Length: 1172
* Mark bundle as not supporting multiuse
< HTTP/1.1 400
< Content-Type: application/json
< Transfer-Encoding: chunked
< Date: Thu, 21 Oct 2021 19:52:53 GMT
< Connection: close
<
* Closing connection 0
[
{
"errorCode":"PA01",
"errorMessage":"Parameter is not correct.",
"additionalInformation":null
}
]
< /code>
Как вы видите, ответ не очень точно скажите мне, что не так. Я попытался изменить подпись на какую -то нонс, и я все еще получил такое же сообщение об ошибке. Это заставляет меня поверить, что подпись неверна. < /P>
Для тестовой среды нет регистрации. Вы можете проверить это на своем собственном компьютере. p>
Сертификаты найдены здесь (под управлением сертификатов)>
Подробнее здесь: [url]https://stackoverflow.com/questions/69668196/swish-payout-api-in-php[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия