mozgbrasil / magento-cielo-php_56
Cielo 集成
Requires
This package is auto-updated.
Last update: 2024-09-05 16:41:04 UTC
README
Mozg\Cielo
概述
集成 Cielo 3.0
动机
满足 Magento 模块市场,提供改进和优质的客户支持
演示视频
支持/疑问
要获得适当的支持,请点击此处,尽可能详细地报告发生的原因,并附上屏幕截图以便我们理解
价格
模块功能
- [✓] 交易
- [✓] 查询
- [✓] 捕获
- [✓] 退款
- [✓] 取消
技术特性
在结账过程中进行授权流程
在收到“交易已授权”的回执后,将重定向到成功页面
在成功页面上向交易通知资源发送信息
通过 CRON 处理交易通知
在处理通知时,如果支付被确认,则应将订单的“状态/状态”更改为“processing”或“处理中”,以释放处理账单和发货的操作
捕获交易应通过访问 Magento 中的账单并单击“捕获”按钮来完成,如果通过 Cielo 系统进行捕获,则在使用 Cielo API 进行查询时,不应在 Magento 中显示“支付已确认”的状态
在发货之前,始终检查订单信息,如果显示交易状态表明支付已被确认,包括金融运营商是否已捕获交易,如果存在不一致,则必须取消订单直至问题得到纠正
当订单发货时,状态将更改为“complete”或“完成”
实现了每 5 分钟查询一次交易状态的自动化,以更新订单状态
设置 CRON
点击此处 查看MOZG的文档
请确保每分钟执行一次操作
该模块使用cronjob来处理通知
模块执行了至少5分钟前收到的所有通知
在 Heroku 上进行测试
我想展示我为 Heroku 平台提供的应用
只需单击一次,应用即可创建使用电子商务平台 Magento 的虚拟商店,并安装MOZG模块
https://github.com/mozgbrasil/heroku-magento#descrição
安装 - 更新 - 卸载 - 禁用
--
建议打印所有执行步骤的屏幕截图
如有任何困难,请将屏幕截图发送给我们
--
此模块旨在使用 Composer 安装
在终端中执行以下命令,以查看Composer的存在及其版本
composer --version
如果没有Composer在您的环境中,建议阅读以下文章 点击此处
--
服务器需要支持ionCube PHP Loader扩展。
为了查看该扩展在PHP CLI环境中的存在性,请在终端执行以下命令:
php -v
为了查看该扩展是否在您的PHP WEB环境中激活:
请确认phpinfo.php文件是否存在于您的项目根目录中:
<?php phpinfo(); ?>
如果项目根目录中没有phpinfo.php文件,请创建该文件并添加上述内容:
通过浏览器访问该文件
然后搜索“ionCube PHP Loader”这个术语
如果您的服务器不支持该扩展,请联系您的托管公司,并要求他们激活该扩展
如果您有权限并且想要激活该扩展,请点击此处
在“Loader Downloads API”部分,下载与您的服务器兼容的包
解压包,并将loader-wizard.php文件上传到您的服务器,该文件将演示激活扩展的步骤
点击此处查看执行过程
--
如果存在“ionCube PHP Loader”,请下载以下文件并将其放置在服务器根目录中,然后访问它。如果它能正常工作,这意味着“ionCube”正在读取这种加密类型
--
要使用MOZG的模块,需要接受最终用户许可协议
--
建议保持一个测试环境以进行测试,并且只有在经过适当的测试后,才在生产环境中应用适当的流程
--
建议备份Magento平台和数据库
--
在更新Magento之前,始终确保Compiler和Cache已禁用
--
请确认在您的项目根目录中存在composer.json文件,并且它的参数类似于以下JSON模式:
{
"minimum-stability": "dev",
"prefer-stable": true,
"license": [
"proprietary"
],
"repositories": [
{
"type": "composer",
"url": "https://packages.firegento.com"
}
],
"extra": {
"magento-root-dir": "./",
"magento-deploystrategy": "copy",
"magento-force": true
}
}
如果项目根目录中没有composer.json文件,请创建该文件并添加上述内容:
要安装模块,请在您的服务器终端执行以下命令:
composer require mozgbrasil/magento-cielo-php_56:dev-master
您可以通过访问后端来检查模块是否已安装
STORES -> Configuration -> ADVANCED/Advanced -> Disable Modules Output
--
要更新模块,请在您的服务器终端执行以下命令:
在执行任何涉及更新Magento的流程之前,建议保持Compiler和Cache已禁用
composer update
如果出现错误,请重命名/vendor/mozgbrasil文件夹,然后重新执行
要检查模块的日期,请执行以下命令:
grep -ri --include=*.json 'time": "' ./vendor/mozgbrasil
--
要卸载模块,请在您的服务器终端执行以下命令:
composer remove mozgbrasil/magento-cielo-php_56
--
要禁用模块:
-
在执行涉及更新Magento的任何流程之前,需要保持Compiler和Cache已禁用
-
如果您想禁用MOZG模块,请重命名以下文件夹app/code/local/Mozg
模块的禁用可以用来检测特定问题是否与模块有关
如何配置支付方式
要配置支付方式,请访问后端
STORES -> Configuration -> Sales/Payment Methods -> Cielo (powered by MOZG)
您将看到以下字段:
Cielo API 3.0 - 默认配置
所需配置
• 测试或生产模式
应指定相应环境
• 测试环境的Merchant ID
在以下环境中进行注册以获取集成数据,例如:MerchantId和MerchantKey
https://cadastrosandbox.cieloecommerce.cielo.com.br/
• 测试环境的Merchant Key
在以下环境中进行注册以获取集成数据,例如:MerchantId和MerchantKey
https://cadastrosandbox.cieloecommerce.cielo.com.br/
• 生产环境的Merchant ID
该信息应由Cielo提供
• 商户密钥生产环境
该信息应由Cielo提供
• Cielo结账商户ID
该信息应由Cielo提供
高级:Magento订单处理
• 订单状态:创建订单
新创建的订单状态,在运营商服务器通知支付结果确认之前
• 订单状态:支付授权
运营商通知授权后确认的订单状态
• 订单状态:支付确认
运营商通知授权后确认的订单状态
• 订单状态:订单取消
运营商通知取消后确认的订单状态
如果订单已开票,则不能取消
• 订单状态:支付抓取(虚拟产品)
仅选择分配给完成状态的订单状态,为使用普通产品的相同状态留空
• 订单状态:已退款
运营商通知退款后确认的订单状态
• 订单状态:部分退款
运营商通知部分退款后确认的订单状态。建议不要定义此状态,让Magento自行决定状态。
• 订单状态:待处理订单
运营商通知待处理状态后的订单状态
• 创建待处理账单(仅限手动抓取)
如果收到授权通知,则创建待处理账单。
注意:一旦创建账单,这将使Magento将所有订单推送到“处理”状态,忽略所有其他设置。
• 抓取类型
需要使用此自动化时,应选择“自动”选项,该自动化应在通过CRON执行的通知处理中执行
需要手动抓取交易时,应选择“手动”选项,此操作通过访问订单账单并点击“抓取”按钮完成
• 发货时抓取
如果您启用此功能,在发货时将向运营商发送抓取请求
• 启用取消订单
如果订单因某些原因被取消,但收到支付已授权的通知,则会自动取消订单
• 订单取消时的自动退款/部分退款
启用/禁用取消订单时的自动退款
• 账单电子邮件
启用/禁用电子邮件更新
• 发送订单状态通知电子邮件
启用/禁用订单状态变更的电子邮件更新以供客户查看
• 启用调试日志
应在var/log/中存储模块的过程
文件
DATE_mozg.log
这是模块的日志,是一个更详细的日志,包含所有过程,包括由模块的外部库执行的过程
文件
payment_METHOD.log
高级:Cielo通知
• 忽略退款通知
如果在运营商处进行退款,并运营商发送退款通知到Magento,则应自动创建一张信用证。如果您将此配置设置为“是”,则不会发生这种情况,因为它不会处理接收到的任何退款通知。
高级:结账体验
• 取消支付后的重定向目标
确定购买者在取消支付后如何重定向
• 支付方法渲染方法
确定是否以支付方法的标志或仅以名称显示支付方法
• 本地语言(可选)
这将替换Magento存储的默认客户语言位置。
留空以让Magento决定(例如:nl_NL)
• ISO国家代码(可选)
这将替换购买者收货地址的国家,以确定哪些支付方式将显示。
天翼信用卡
• 激活
用于“激活”或“停用”方法的使用
• 显示顺序
这是在订单关闭步骤中显示的送货方法顺序
• 标题
要显示的方法名称
• 适用于国家的支付方式
您可以定义方法是否应适用于“所有国家接受”或“指定国家”
• 特定国家的支付方式
您必须选择方法应功能的国家
• 信用卡类型
选择运营商授权的标志
• 创建发货
如果您启用此选项,则在创建发票时将自动创建一个运货单
• 可见性
确定此支付方法在Magento前端和/或后端的可见性
• 验证
定义买家是否将被重定向到发卡行进行卡验证
对于此选项,将发送ReturnUrl参数,不应在遵循Cielo规则的特殊字符域名上工作
对于后端创建的订单,不要激活此选项,因为它不应将重定向到认证URL
• 欺诈分析
仅在生产环境中工作
• 激活分期付款
定义分期的使用
• 标准分期
在“货币”列中,请输入货币代码,例如BRL
在“总额(含)”列中,请输入显示分期的金额
在“最大分期数”列中,请输入显示分期的最大分期数
在“利率(%)0.0”列中,请输入使用的利率
分期的显示规则基于价格范围
该模块已预先配置,使用以下规则
在此规则中
0.00 R$ 至 100.00 R$ 显示1期
101.00 R$ 至 200.00 R$ 显示2期
201.00 R$ 至 600.00 R$ 显示3期
601.00 R$ 至 800.00 R$ 显示4期
801.00 R$ 至 10,000.00 R$ 显示5期
10,000.00 R$ 至 100,000.00 R$ 显示6期
根据需要更改
• 总金额为零时禁用
当报价总金额为0时,在结账时禁用此支付方式
天翼借记卡
• 激活
用于“激活”或“停用”方法的使用
• 显示顺序
这是在订单关闭步骤中显示的送货方法顺序
• 标题
要显示的方法名称
• 适用于国家的支付方式
您可以定义方法是否应适用于“所有国家接受”或“指定国家”
• 特定国家的支付方式
您必须选择方法应功能的国家
• 借记卡类型
选择运营商授权的标志
• 可见性
确定此支付方法在Magento前端和/或后端的可见性
• 总金额为零时禁用
当报价总金额为0时,在结账时禁用此支付方式
天翼汇票
• 激活
用于“激活”或“停用”方法的使用
• 显示顺序
这是在订单关闭步骤中显示的送货方法顺序
• 标题
要显示的方法名称
• 适用于国家的支付方式
您可以定义方法是否应适用于“所有国家接受”或“指定国家”
• 特定国家的支付方式
您必须选择方法应功能的国家
• 汇票类型
选择运营商授权的标志
• 未付款订单状态
使用汇票可以支付少于总金额。如果适用,请在此处选择状态。如果留空,它将采用默认的订单支付授权状态
• 超额付款订单状态
使用汇票可以支付多于总金额。如果适用,请在此处选择状态。如果留空,它将采用默认的订单支付授权状态
• 可见性
确定此支付方法在Magento前端和/或后端的可见性
天翼电子转账
• 激活
用于“激活”或“停用”方法的使用
• 显示顺序
这是在订单关闭步骤中显示的送货方法顺序
• 标题
要显示的方法名称
• 适用于国家的支付方式
您可以定义方法是否应适用于“所有国家接受”或“指定国家”
• 特定国家的支付方式
您必须选择方法应功能的国家
• 电子转账类型
选择运营商授权的标志
• 未付款订单状态
使用汇票可以支付少于总金额。如果适用,请在此处选择状态。如果留空,它将采用默认的订单支付授权状态
• 超额付款订单状态
使用汇票可以支付多于总金额。如果适用,请在此处选择状态。如果留空,它将采用默认的订单支付授权状态
• 可见性
确定此支付方法在Magento前端和/或后端的可见性
天翼结账
• 激活
用于“激活”或“停用”方法的使用
• 显示顺序
这是在订单关闭步骤中显示的送货方法顺序
• 标题
要显示的方法名称
• 适用于国家的支付方式
您可以定义方法是否应适用于“所有国家接受”或“指定国家”
• 特定国家的支付方式
您必须选择方法应功能的国家
• 发票上将显示的名称
请输入发票上将显示的名称
• 激活反欺诈
定义使用
• 未付款订单状态
使用汇票可以支付少于总金额。如果适用,请在此处选择状态。如果留空,它将采用默认的订单支付授权状态
• 超额付款订单状态
使用汇票可以支付多于总金额。如果适用,请在此处选择状态。如果留空,它将采用默认的订单支付授权状态
• 可见性
确定此支付方法在Magento前端和/或后端的可见性
常见问题解答 "FAQ"
模块安装后应做什么?
::
在
https://cadastrosandbox.cieloecommerce.cielo.com.br/
您的MerchantId和MerchantKey将在何处提供
请按方法配置您的MerchantId和MerchantKey
为了测试效果,可以使用以下测试卡
http://mozg.com.br/dicas/dicas-magento1#cartões-de-crédito-para-testes
在测试环境中执行订单的最终完成,其中将进行交易处理
如果显示了最终完成页面,则表示您的交易已处理
::
请向Cielo发送电子邮件,请求对该集成进行认证,并请求用于生产环境的数据
::
请将以下电子邮件发送到 cieloecommerce@cielo.com.br
主题:"机构号:??? / 法人名称:??? / 关于: ???"
A/C Suporte Cielo
Favor iniciar processo de homologação
Fico no aguardo dos dados do ambiente de produção para prosseguirmos com processo de homologação
Conforme imagem em anexo o processo está funcional sobre esse ambiente
- URL do produto
http://phpstack-97926-416875.cloudwaysapps.com/teste.html
- Usuário e Senha (caso seja necessário)
mailer@mozg.com.br / 123456
::
Cielo将发送包含相应程序的电子邮件
请不要发送包含签名和标志的电子邮件给Cielo,因为这可能会被阻止
电子邮件正文必须是纯白色的,仅包含认证交互
发送电子邮件后30分钟,请打电话确认他们是否收到了电子邮件
在打电话确认电子邮件时,Cielo请求的数据(机构号、法人名称和CNPJ)
::
关于“国际卡”
根据
Cielo接受国际卡,但交易以实时货币“R$/BRL”处理
因此,商店的基本货币应为“R$/BRL”
以下是一个关于货币汇率的主题
http://mozg.com.br/dicas/dicas-magento1#cotação-de-moedas-magento-cambio
关于“电子邮件支付”
“电子邮件支付”的做法是在订单或类似电子邮件中包含一个链接,供用户访问并完成支付
Cielo模块中包含“Cielo结账”集成,允许此功能
如何取消订单
要使用magento取消订单,请访问预先创建的账单并单击“取消”按钮,然后访问订单并单击“取消”按钮
如何退款
访问预先创建的账单并单击“退款”按钮
注意。只有当已经进行过捕获时,才会显示“退款”按钮
在订单查看中单击“退款”按钮时,magento只会显示名为“离线退款”的按钮,单击该按钮只会执行magento的退款操作
在订单账单查看中单击“退款”按钮时,magento应显示名为“离线退款”和“退款”的按钮,单击“退款”按钮将触发“在线”操作,即触发与支付运营商相关的操作“取消”与订单相关的交易
关于信用卡验证错误“信用卡卡号与卡类型不符”
在magento中,信用卡验证是通过magento自己的原生脚本进行的
也就是说以下脚本
/js/prototype/validation.js
::
在这种情况下,我启用了magento的本地方法“Credit Card (saved)”,它也使用本地验证器,其中相关的卡号未通过验证器
这种测试是一种检测问题是否来自第三方模块或是否与magento相关的一种方式
::
我发现验证没有正常工作,因为项目使用了一个过时的magento版本,该版本存在验证问题
项目版本为1.7.0.2,而当前的magento版本是1.9.3.3
如建议的,建议始终保持项目更新,以便获得改进和修正
::
我建议临时使用magento 1.9.3.3的验证器,直到客户将项目更新到新的magento版本
https://raw.githubusercontent.com/firegento/magento/magento-1.9.3.3/js/prototype/validation.js
::
测试验证器的一种方法是以下这种方式
-
在结账时不输入任何信息,然后点击完成订单按钮,您会看到将触发验证器事件,指出未填写项
-
在相应的字段中输入信息,然后点击完成订单按钮,如果信息正确,验证器应该会处理而不显示警报
::
如果想要测试所有卡类型,请访问
https://mozg.com.br/dicas/dicas-magento1#cartoes-de-credito-para-testes
关于分期付款的存储
对于支付方式:Braspag API V2或Cielo API 3.0或Redecard Komerci Webservice
分期的选择是在Magento中完成的,并在Magento中存储
为了检索分期,我们可以使用以下模板脚本
$order = Mage::getModel('sales/order')->load('855');
$payment = $order->getPayment();
$additionaInformation = $payment->getData('additional_information');
$installment = $additionaInformation['number_of_installments'];
echo $installment;
::
对于支付方式:Checkout Cielo
分期的选择是在Cielo环境中完成的
在Magento的/checkout/中不会要求选择分期,因此我们不会在订单管理中的“支付信息”显示存储和显示分期
管理Checkout Cielo
https://cieloecommerce.cielo.com.br/Backoffice/
关于URL:对于“Checkout Cielo”方法的返回、通知和状态更改
对于URLs
- 返回URL
建议不填写任何内容
-
通知URL
http://SEU_DNS/mozg_cielo/process/notification/checkout_cielo/robo/
-
状态更改URL
http://SEU_DNS/mozg_cielo/process/notification/checkout_cielo/robo/
关于在“Checkout Cielo”环境中选择的卡品牌
Cielo发送的通知中是
如何更改方法图片
可以添加包含以下任一命名的图片
- method-boleto.png
- method-creditcard.png
- method-debitcard.png
- method-eletronictransfer.png
并将图片添加到您的模板目录中
/skin/frontend//default/images/mozg_cielo
联系方式 - Cielo
Cielo E-Commerce cieloecommerce@cielo.com.br 电话:4002-9700(大都市和都市地区)和0800-570-1700(其他地区)
以以下格式发送主题
商户编号:??? / 法人名称:??? / 关于:???
或访问
要联系Cielo
手册
https://developercielo.github.io/manual/cielo-ecommerce
https://developercielo.github.io/manual/checkout-cielo
贡献者
Mozg团队
许可证
徽章
🐈