lucasmro / clearsale
ClearSale 集成
v1.9.0
2017-06-09 10:03 UTC
Requires
- php: >=5.3.0
Requires (Dev)
- phpunit/phpunit: @stable
README
要阅读此文档的英文版本,请访问README.eng.md文件。
与ClearSale集成的API。
什么是ClearSale?
Clearsale是一家巴西公司,专注于欺诈风险的管理,在实体和虚拟世界中运营,提供电子商务、信贷、收款和销售恢复的解决方案。
要求
PHP 5.3+
安装
安装此库的最简单方法是使用Composer。
{ "require": { "lucasmro/clearsale": "dev-master" } }
集成流程
此流程负责展示客户与ClearSale之间的集成。
Loja ClearSale
| |
|----- (A) solicitação de análise de risco (sendOrders) --------------->|
| | (B) realiza processamento
|<---- (C) envia resposta ----------------------------------------------|
| |
|----- (D) realiza a cobrança / cancela a compra / tenta novamente ---->|
- (A) 店铺进行风险分析请求,提供购买和购买者的数据。
- (B) ClearSale处理请求。
- (C) ClearSale回应请求。
- (D) 如果(C)的回应是批准的,店铺应执行收款。
- (D) 如果(C)的回应被拒绝,店铺不应执行收款。
- (D) 如果(C)的回应是待批准,店铺应在ClearSale平台上进行新的查询,直到分析状态变为批准或拒绝。
使用
为了能够在测试和生产环境中进行请求,您需要拥有ClearSale提供的EntityCode。
以下代码片段是一个如何进行风险分析请求的基本示例
try { $order = new \ClearSale\Order(); $order->setFingerPrint($fingerPrint) ->setId($orderId) ->setDate($date) ->setEmail($email) ->setTotalItems($totalItems) ->setTotalOrder($orderTotal) ->setQuantityInstallments($quantityInstallments); ->setIp($ip); ->setOrigin($origin); ->setBillingData($customer) ->setShippingData($customer) ->setItems($items) ->setPayments($payments); // Definir ambiente $environment = new \ClearSale\Environment\Sandbox('<CLEARSALE_ENTITY_CODE>'); // Solicitação de análise $clearSale = new \ClearSale\ClearSaleAnalysis($environment); $response = $clearSale->analysis($order); // Resultado da análise switch ($response) { case \ClearSale\ClearSaleAnalysis::APROVADO: // Análise aprovou a cobrança, realizar o pagamento break; case \ClearSale\ClearSaleAnalysis::REPROVADO: // Análise não aprovou a cobrança break; case \ClearSale\ClearSaleAnalysis::AGUARDANDO_APROVACAO: // Análise pendente de aprovação manual break; } } catch (\Exception $e) { // Erro genérico da análise }
在执行收款请求后,应向ClearSale报告付款处理的状况。
- 如果收款被授权
$clearSale->updateOrderStatusId($orderId, \ClearSale\ClearSaleAnalysis::APROVADO);
- 如果收款未被授权
$clearSale->updateOrderStatusId($orderId, \ClearSale\ClearSaleAnalysis::REPROVADO);
文档
您可以在docs目录中找到ClearSale集成文档。
示例
您可以在examples目录中找到一些现成的示例。