bubbstore/clearsale

ClearSale 集成

v1.9.0 2017-06-09 10:03 UTC

This package is not auto-updated.

Last update: 2024-09-18 21:04:46 UTC


README

要阅读英文文档,请访问 README.eng.md 文件。

Build Status Latest Stable Version Total Downloads Latest Unstable Version License

与 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 目录中找到一些现成的示例。