novalnet/omnipay

用于Omnipay支付处理库的Novanet驱动程序

1.0.0 2022-08-01 14:25 UTC

This package is not auto-updated.

Last update: 2024-09-24 23:11:04 UTC


README

Omnipay是一个PHP支付处理库。它是基于Active Merchant的思路以及为CI Merchant实现数十个网关的经验设计的。它具有清晰一致的API,经过全面单元测试,并提供一个示例应用程序帮助您开始。

优点

  • 所有支付方法的简单配置
  • 一个平台覆盖所有相关支付类型和相关服务
  • 所有支付过程的完全自动化
  • 集成了50多个欺诈预防模块,以实时预防风险
  • 轻松配置带有欺诈预防的风险管理
  • 全面的联盟系统,具有自动化的收入分成交易转换
  • 使用我们的支付模块时无需PCI DSS认证
  • 从结账到应收账款的事务流程实时监控
  • 多层次索赔管理,包括集成转交到催收和多种出口功能以供会计使用
  • 有关支付状态报告的自动电子邮件通知功能
  • 清晰的实时支付状态概览和监控
  • 自动生成XML、SOAP、CSV、MT940格式的账簿报告

支持的支付方式

  • 直接借记SEPA
  • 信用卡/借记卡
  • 账单
  • 预付款
  • 带支付保证的账单
  • 带支付保证的直接借记SEPA
  • 账单分期付款
  • 账单分期付款费率
  • 直接借记SEPA分期付款
  • 直接借记SEPA分期付款费率
  • iDEAL
  • Sofort
  • giropay
  • Barzahlen/viacash
  • Przelewy24
  • eps
  • PayPal
  • PostFinance Card
  • PostFinance E-Finance
  • Bancontact
  • Multibanco
  • 在线银行转账
  • 支付宝
  • 微信支付
  • Trustly
  • 货到付款

主要特性

  • 安全的SSL编码网关
  • 无缝快速集成支付模块
  • 在商店管理员面板中配置挂起事务
  • 对于直接借记SEPA、带支付保证的直接借记SEPA、信用卡、账单、带支付保证的账单、预付款和PayPal,提供简单的方式确认和取消挂起事务(取消 & 捕获选项)
  • 对于信用卡/借记卡、直接借记SEPA、带支付保证的直接借记SEPA、直接借记SEPA分期付款、账单、带支付保证的账单、账单分期付款、预付款、Barzahlen/viacash、Sofort、iDEAL、eps、giropay、PayPal、Przelewy24、PostFinance Card、PostFinance E-Finance、Bancontact和在线银行转账,提供退款选项
  • 响应式模板

安装

安装库的首选方式是使用composer。运行composer添加依赖项到composer.json

composer require novalnet/omnipay

直接借记SEPA(授权)

<?php
use Novalnet\Omnipay\Gateway;

require '../vendor/autoload.php';

try {
    $data['customer'] = [
                'first_name' => 'novalnet',
                'last_name' => 'tester',
                'email' => 'test@novalnet.de',
                'customer_no' => '147',
                'billing' => [
                    'street' => 'Feringastraße',
                    'house_no' => '4',
                    'city' => 'Unterföhring',
                    'zip' => '85774',
                    'country_code' => 'DE',
                ]
            ];
        $data['transaction'] = [
                'test_mode' => 1,
                'payment_type' => 'DIRECT_DEBIT_SEPA',
                'amount' => '1500',
                'currency' => 'EUR',
                'order_no' => '123456',
                'payment_data' => [
                    'account_holder' => '###ACCOUNT_HOLDER###',
                    'iban' => '###IBAN###',
                ]
            ];
        $data['custom'] = [
                'lang' => 'EN'
            ];            

    $gateway = new Gateway();
    $gateway->setPaymentAccessKey('###YOUR_PAYMENT_ACCESS_KEY###'); // Merchant need to provide the payment access key
    $gateway->setSignature('###YOUR_API_SIGNATURE###'); // Merchant need to provide the Product activation key
    $gateway->setTariff('###YOUR_TARIFF_ID###'); // Merchant need to provide the tariff id

    $response = $gateway->authorize($data)->send();
        
    if ($response->isSuccessful()) {
        print_r($response->getData());
    } elseif ($response->isRedirect()) {
        $response->redirect();
    } else {
        echo $response->getMessage();
    }
} catch (\Exception $e) {
    throw $e;
}

信用卡/借记卡(授权 & 完成授权)

加载iframe信用卡/借记卡表单

请参阅有关加载iframe信用卡/借记卡表单以及获取加密的信用卡值(pan_hash & unique_id)以处理支付的信息 开发者门户

<?php
use Novalnet\Omnipay\Gateway;

require '../vendor/autoload.php';

try {
    $data['customer'] = [
                'first_name' => 'novalnet',
                'last_name' => 'tester',
                'email' => 'test@novalnet.de',
                'customer_no' => '147',
                'billing' => [
                    'street' => 'Feringastraße',
                    'house_no' => '4',
                    'city' => 'Unterföhring',
                    'zip' => '85774',
                    'country_code' => 'DE',
                ]
            ];
        $data['transaction'] = [
                'test_mode' => 1,
                'payment_type' => 'CREDITCARD',
                'amount' => '1500',
                'currency' => 'EUR',
                'order_no' => '123456',
		'return_url' => 'https://omnipay.novalnet.de/samples/payment/purchase.php',  // Adapt your own return url (only for 3D secure)
                'payment_data' => [
                    'pan_hash'  => '###PAN_HASH###', // To store Novalnet's unique identifier for the given payment data
		    'unique_id' => '###UNIQUE_ID###' // To store the random id which belongs to a particular pan_hash
                ]
            ];
        $data['custom'] = [
                'lang' => 'EN'
            ];            

    $gateway = new Gateway();
    $gateway->setPaymentAccessKey('###YOUR_PAYMENT_ACCESS_KEY###'); // Merchant need to provide the payment access key
    $gateway->setSignature('###YOUR_API_SIGNATURE###'); // Merchant need to provide the Product activation key
    $gateway->setTariff('###YOUR_TARIFF_ID###'); // Merchant need to provide the tariff id

    $response = empty($_REQUEST['tid'])
        ? $gateway->authorize($data)->send()
        : $gateway->completeAuthorize($_REQUEST)->send();
		
    if ($response->isSuccessful()) {
        print_r($response->getData());
    } elseif ($response->isRedirect()) {
        $response->redirect();
    } else {
        echo $response->getMessage();
    }
} catch (\Exception $e) {
    throw $e;
}

在线银行转账(购买 & 完成购买)

<?php
use Novalnet\Omnipay\Gateway;

require '../vendor/autoload.php';

try {
    $data['customer'] = [
                'first_name' => 'novalnet',
                'last_name' => 'tester',
                'email' => 'test@novalnet.de',
                'customer_no' => '147',
                'billing' => [
                    'street' => 'Feringastraße',
                    'house_no' => '4',
                    'city' => 'Unterföhring',
                    'zip' => '85774',
                    'country_code' => 'DE',
                ]
            ];
        $data['transaction'] = [
                'test_mode' => 1,
                'payment_type' => 'ONLINE_BANK_TRANSFER',
                'amount' => '1500',
                'currency' => 'EUR',
                'order_no' => '123456',
                'return_url' => 'https://omnipay.novalnet.de/samples/payment/purchase.php',  // Adapt your own return url
            ];
        $data['custom'] = [
                'lang' => 'EN'
            ];            

    $gateway = new Gateway();
    $gateway->setPaymentAccessKey('###YOUR_PAYMENT_ACCESS_KEY###'); // Merchant need to provide the payment access key
    $gateway->setSignature('###YOUR_API_SIGNATURE###'); // Merchant need to provide the Product activation key
    $gateway->setTariff('###YOUR_TARIFF_ID###'); // Merchant need to provide the tariff id

    $response = empty($_REQUEST['tid'])
        ? $gateway->purchase($data)->send()
        : $gateway->completePurchase($_REQUEST)->send();

    if ($response->isSuccessful()) {
        print_r($response->getData());
    } elseif ($response->isRedirect()) {
        $response->redirect();
    } else {
        echo $response->getMessage();
    }
} catch (\Exception $e) {
    throw $e;
}

退款

<?php

use Novalnet\Omnipay\Gateway;

require '../vendor/autoload.php';

try {
    $data['transaction'] = [
            'tid' => '14597800007520313',
            'amount' => '100',
            'reason' => ''
        ];

    $data['custom'] = [
            'lang' => 'EN'
        ];

    $gateway = new Gateway();
    $gateway->setPaymentAccessKey('###YOUR_PAYMENT_ACCESS_KEY###'); // Merchant need to provide the payment access key

    $response = $gateway->refund($data)->send();

    if ($response->isSuccessful()) {
        print_r($response->getData());
    } else {
        echo $response->getMessage();
    }

} catch (\Exception $e) {
    throw $e;
}

通知Webhook

<?php

use Novalnet\Omnipay\Gateway;

require '../vendor/autoload.php';

try {
    $gateway = new Gateway();
    $gateway->setPaymentAccessKey('###YOUR_PAYMENT_ACCESS_KEY###'); // Merchant need to provide the payment access key
    $gateway->setTestMode(false);
    $gateway->handleWebhookNotification();
} catch (\Exception $e) {
    throw $e;
}
 For Webhook synchronization, add the above code in your webhook handler file

有关支付集成的更多信息,请参阅开发者门户。您可以在那里找到有关支付集成的相关文档。

许可证

请参阅我们的许可证协议:https://www.novalnet.com/payment-plugins-free-license/

文档与支持

有关Novalnet的omni支付集成的更多信息,请联系我们:sales@novalnet.de或+49 89 9230683-20

Novalnet AG
支付机构(ZAG)
古腾堡街7号
D-85748 加尔兴
德国
电子邮件: sales@novalnet.de
电话:+49 89 9230683-20
网站: www.novalnet.de

谁是Novalnet?

Novalnet AG是一家领先的金融服务机构,提供处理在线支付的支付网关。作为全支付服务提供商,Novalnet AG在市场上为在线商家提供用户友好的支付集成,支持所有主要商店系统和自行编程的网站。

通过一个平台接受、管理和监控支付,只需一个合同!

我们的SaaS引擎已获得PCI DSS认证,旨在实现实时风险管理、通过保证金账户进行安全的支付、高效的应收账款管理、动态成员和订阅管理、为各种商业模式(例如市场、联盟计划等)提供定制支付解决方案等。