航天,百旺组件开票调用说明
调用方法一:(SHKJKP.dll)
32位
functionSHKP(parameter:pansichar):pansichar;stdcall; external SHKJKP.dll';
64位平台
functionSHKP(parameter:pansichar):pansichar;stdcall; external SHKJKPx64.dll';
说明:不同的parameter功能传不同的值,下面为各功能的值。
相应文件可以在http://sh-gz.cn/下载
航天初始化:
'{"LX":"Of_Uninit"}'
'{"LX":"Of_init","QYSH":"企业税号","CERT":"12345678","FJH":"0"}'
JSON说明:企业税号,证书密码,分机号
百旺初始化
'{"LX":"of_bw_init","URL":"https://skfp.tax.sh.gov.cn/acceptFramework/UniAcceptService","JSPPASSWORD":"","ZSPASSWORD":"12345678"}'
JSON说明:税务局URL(参考百旺的参数设置),金税盘口令,证书口令
初始化调用示例1: 传入参数:{"LX":"of_bw_init","JSPPASSWORD":"66666666","ZSPASSWORD":"12345678"}
初始化返回值: 成功 {"Result":"1","Message":""}
失败 {"Result":"0","Message":"失败说明"}
获取发票信息
'{"LX":"GetInfo","KPJLX":"0","FPZL":"41"}'
JSON说明:
开票机类型(0航天1百旺)、发票种类(0 专票,2 普票,51 电票,41卷式发票 12 机动车发票)
调用示例1: 查询参数:{"LX":"GetInfo","KPJLX":"1","FPZL":"0"}
返回{"Result":"1","FPDM":"4400173130","FPHM":"4094639","COUNT":"79","Message":""}
开票
'{"LX":"KP","KPJLX":"0","FPZL":"41","TEST":"1","XML":"XML并且经过base64编码"}'
JSON说明:
开票机类型(0航天1百旺)、发票种类 (0 专票,2 普票,51 电票,41卷式发票 12 机动车发票),TEST 是否检验数据1不开票仅做数据检查、0直接开票,KP的xml数据
开票调用示例1: 传入参数:
{"LX":"KP","KPJLX":"1","FPZL":"0","XML":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iR0IyMzEyIj8+DQo8Q29uZmlnPg0KICA8SW52b2ljZUxpc3Q+DQogICAgICAgIDxJbnZIZWFkIEludm9pY2VOdW1iZXI9IjQ5ODQwMzEwNTIwNjEzMTIiIEN1c3RvbWVyTmFtZT0iyc+6o760zamyzdL7udzA7dPQz965q8u+IiBDdXN0b21lclRheENvZGU9IjkxMzEwMjMwTUExSlk0TFE5UCIgQWRkcmVzc0FuZFBob25lPSKz58P3x/izx8fF1fLQ48m9wrc4usUztLHSu8f4MDIxLTgwMzkyNDE3IiBCYW5rQW5kQWNjb3VudD0i1tC5+sWp0rXS+NDQu8a2ydan0NAwMzgzMDEwMDA0MDA0ODM2MyIgSkdDUz0iMSIgU2VsbGVyQmFua05hbWU9ItXQyczS+NDQucm33dPQz965q8u+xP6yqL2tsbHWp9DQNTc0OTA2MjUzNjEwMjAxIiBLSFNKPSIxMzY4MTIzNDU2NzgiIEtIWUo9IjMyOTEwNDQ4NDZAcXEuY29tIiBTZWxsZXJBZHJyUGhvbmU9IrnjtqvKobnj1t3K0MzsutPH+NbQyb2087XAMTAzNbrF06+4u8nMzvG088/DN8KlMDIwMTIzNDU2NzgiIFNlbGxlclRheENvZGU9IjkxNDQwMTAxTUE1OUxDSzE3MCIgRlBaTD0iMCIgSW52b2ljZU1lbW89IrG416IxMjMiIEtQUj0iwLXQocflIiBTS1I9Ire2zsC9+iIgRkhSPSK3ts7AvfoiIEZQSE09IiIgQ0hGUEg9IiIgQW1vdW50PSIxMDAiIFRheEFtb3VudD0iNiIgSW5UYXhBbW91bnQ9IjEwNiIgVGF4UmF0ZT0iNiIgSXNMaXN0aW5nPSIwIiBKRUZTPSIwIiBSb3dDb3VudD0iMCIvPg0KICAgICAgICA8SW52RGV0YWlsPg0KICAgICAgICAgICAgPERldGFpbEVudHJ5IFByb2R1Y3RDb2RlPSIzMDQwMjAxMDMiIEVudHJ5TnVtYmVyPSIxIiBQcm9kdWN0TmFtZT0ivLzK9bf+zvG30SIgUHJvZHVjdE1vZGVsPSLV+8zXIiBQcm9kdWN0VW5pdD0izNciIFRheFJhdGU9IjYiIFF1YW50aXR5PSIxIiBQcmljZT0iMTAwIiBIU0RKPSIxMDYiIEFtb3VudD0iMTAwIiBUYXhBbW91bnQ9IjYiIFJvd0F0dHJpYj0iMCIgUHJvZHVjdFR5cGVzPSI0MDAxIiBGbGJtPSIzMDQwMjAxMDMwMDAwMDAwMDAwIiBYc3loPSIwIiBMc2x2YnM9IiIgWWhzbT0iIi8+DQogICAgICAgIDwvSW52RGV0YWlsPg0KICA8L0ludm9pY2VMaXN0ID4NCjwvQ29uZmlnPg0K"}
开票返回值:
{"Result":"1","XML":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iR0IyMzEyIj8+DQo8Q29uZmlnPg0KCTxJbnZvaWNlTGlzdD4NCgkJPEludkhlYWQgSW52b2ljZU51bWJlcj0iNDk4NDAzMTA1MjA2MTMxMiIgQ3VzdG9tZXJOYW1lPSLJz7qjvrTNqbLN0vu53MDt09DP3rmry74iIEN1c3RvbWVyVGF4Q29kZT0iOTEzMTAyMzBNQTFKWTRMUTlQIiBBZGRyZXNzQW5kUGhvbmU9IrPnw/fH+LPHx8XV8tDjyb3Ctzi6xTO0sdK7x/gwMjEtODAzOTI0MTciIEJhbmtBbmRBY2NvdW50PSLW0Ln6xanStdL40NC7xrbJ1qfQ0DAzODMwMTAwMDQwMDQ4MzYzIiBKR0NTPSIxIiBTZWxsZXJCYW5rTmFtZT0i1dDJzNL40NC5ybfd09DP3rmry77E/rKova2xsdan0NA1NzQ5MDYyNTM2MTAyMDEiIEtIU0o9IjEzNjgxMjM0NTY3OCIgS0hZSj0iMzI5MTA0NDg0NkBxcS5jb20iIFNlbGxlckFkcnJQaG9uZT0iueO2q8qhuePW3crQzOy608f41tDJvbTztcAxMDM1usXTr7i7yczO8bTzz8M3wqUwMjAxMjM0NTY3OCIgU2VsbGVyVGF4Q29kZT0iOTE0NDAxMDFNQTU5TENLMTcwIiBGUFpMPSIwIiBJbnZvaWNlTWVtbz0isbjXojEyMyIgS1BSPSLAtdChx+UiIFNLUj0it7bOwL36IiBGSFI9Ire2zsC9+iIgRlBITT0iIiBDSEZQSD0iIiBBbW91bnQ9IjEwMCIgVGF4QW1vdW50PSI2IiBJblRheEFtb3VudD0iMTA2IiBUYXhSYXRlPSI2IiBJc0xpc3Rpbmc9IjAiIEpFRlM9IjAiIFJvd0NvdW50PSIwIiBSRVRDT0RFPSIwMDAwMDAzMiIgUkVUTVNHPSLLsL/YyeixuNC0t6LGscP3z7jKsdLss6MgIERpc2tFcnI6MDlkMTFmIi8+DQoJCTxJbnZEZXRhaWw+DQoJCQk8RGV0YWlsRW50cnkgUHJvZHVjdENvZGU9IjMwNDAyMDEwMyIgRW50cnlOdW1iZXI9IjEiIFByb2R1Y3ROYW1lPSK8vMr1t/7O8bfRIiBQcm9kdWN0TW9kZWw9ItX7zNciIFByb2R1Y3RVbml0PSLM1yIgVGF4UmF0ZT0iNiIgUXVhbnRpdHk9IjEiIFByaWNlPSIxMDAiIEhTREo9IjEwNiIgQW1vdW50PSIxMDAiIFRheEFtb3VudD0iNiIgUm93QXR0cmliPSIwIiBQcm9kdWN0VHlwZXM9IjQwMDEiIEZsYm09IjMwNDAyMDEwMzAwMDAwMDAwMDAiIFhzeWg9IjAiIExzbHZicz0iIiBZaHNtPSIiLz4NCgkJPC9JbnZEZXRhaWw+DQoJPC9JbnZvaWNlTGlzdD4NCjwvQ29uZmlnPg0K"}
作废
'{"LX":"ZF","KPJLX":"0","FPZL":"41","FPDM":"","FPHM":""}'
JSON说明:
开票机类型(0航天1百旺)、发票种类 (0 专票,2 普票,51 电票,41卷式发票 12 机动车发票)、发票代码,发票号码
作废调用 示例1:
传入参数{"LX":"ZF","KPJLX":"1","FPZL":"0","FPDM":"4400173130","FPHM":"04138547"}
返回值 {"Result":"0","Message":"FPZF-ZF-不能作废发票或开具红字发票,原发票已开作废发票"}
打印发票
'{"LX":"PrintFP","KPJLX":"0","FPZL":"41","FPDM":"","FPHM":"","QDBZ":"","ISVISIBLE":""}'
JSON说明:
开票机类型(0航天1百旺)、发票种类(0 专票,2 普票,51 电票,41卷式发票 12 机动车发票),发票代码,发票号码,打印类型(0打印发票 1打印清单),是否显示打印设置窗口(0不显示 1显示)
打印调用示例1:
传入参数:
{"LX":"PrintFP","KPJLX":"1","FPZL":"0","FPDM":"4400173130","FPHM":"04138532","QDBZ":"0","ISVISIBLE":"0"}
返回值 :{"Result":"1","Message":""}
调用方法二:采用OCX调用
COM名称:KPOCXDLL.KP
functionSHKP(const Param1: WideString): WideString; safecall;
调用方法三:在 B/S架构中,JS写法
myCst.CallFun('SHKJKP.dll','SHKP','{"LX":"Of_init","QYSH":"税号","CERT":"12345678","FJH":"0"}');
myCst.CallFun('SHKJKP.dll','SHKP',''{"LX":"Of_Uninit"}');
myCst.CallFun('SHKJKP.dll','SHKP',''{"LX":"of_bw_init","JSPPASSWORD":"","ZSPASSWORD":"12345678"}'
);
alert(myCst.CallFun('SHKJKP.dll','SHKP','{"LX":"GetInfo","KPJLX":"0","FPZL":"41"}'));
alert(myCst.CallFun('SHKJKP.dll','SHKP','{"LX":"KP","KPJLX":"0","FPZL":"41","XML":"XML并且经过base64编码"}'));
alert(myCst.CallFun('SHKJKP.dll','SHKP','{"LX":"ZF","KPJLX":"0","FPZL":"41","FPDM":"","FPHM":""}'));
alert(myCst.CallFun('SHKJKP.dll','SHKP','{"LX":"PrintFP","KPJLX":"0","FPZL":"41","FPDM":"","FPHM":"","QDBZ":"0","ISVISIBLE":"1"}'));
xml:说明:
<?xmlversion="1.0" encoding="GB2312"?>
<Config>
<InvoiceList>
<InvHead InvoiceNumber="单据号" CustomerName="客户名称" CustomerTaxCode="税号" AddressAndPhone="地址" BankAndAccount="客户银行账号" JGCS=”1”SellerBankName="销方银行账号" KHSJ=”客户手机”KHYJ=”客户邮件” SellerAdrrPhone="销方地址和电话" SellerTaxCode=”销方税号”FPZL=”发票种类” InvoiceMemo="备注" KPR="开票人" SKR="收款人" FHR="复核人" FPHM=”红冲发票原发票号” CHFPH="信息表编号" Amount=”整张发票不含税金额” TaxAmount=”整张发票税额” InTaxAmount=”整张发票价税合计” TaxRate=”税率” IsListing=”是否开具清单0不强制开清单 1强制开清单”JEFS=”正常票0 红冲票1” RowCount=”0”/>
<InvDetail>
<DetailEntry ProductCode="产品代码" EntryNumber=”行号,从1开始算起”ProductName="产品名称" ProductModel="产品型号" ProductUnit="产品单位" TaxRate="税率" Quantity="数量" Price=”不含税价” HSDJ=”含税价” Amount="不含税金额" TaxAmount="税额" RowAttrib=”行性质0正常行 3被折扣行 4折扣行” ProductTypes="4001" Flbm="分类编码" Xsyh="税率优惠 0无优惠1有优惠" Lslvbs="零税率标志" Yhsm="优惠说明"/>
</InvDetail>
</InvoiceList >
</Config>
如果是多张发票:那么就多个 InvoiceList节点,如果一张发票,多行明细,那么就多个 DetailEntry节点
名称
说明
是否可以为空
备注
默认值
InvoiceNumber
单据号
否
CustomerName
客户名称
否
CustomerTaxCode
客户税号
是
按税务规定,开具给企业的发票必需有税号
AddressAndPhone
客户地址电话
是
BankAndAccount
客户银行账号
是
KHSJ
客户手机
是
KHYJ
客户邮件
是
SellerBankName
销方银行账号
否
SellerAdrrPhone
销方地址和电话
否
SellerTaxCode
销方税号
否
FPZL
发票种类
否
InvoiceMemo
备注
是
KPR
开票人
否
SKR
收款人
是
FHR
复核人
是
FPHM
红冲发票原发票号
是
当发票种类是普票、电票、卷票、运输发票并且JEFS=1时,必需传原发票号过来
CHFPH
红字信息表编码
是
当发票种类是专票并且JEFS=1时,必需传红字信息表编号
Amount
整张发票不含税金额
否
等于 明细行的 Amount 之和
TaxAmount
整张发票税额
否
等于 明细行的 TaxAmount 之和
InTaxAmount
整张发票价税合计
否
等于 Amount+ TaxAmount
TaxRate
税率
是
可以是17,也可以是0.17,当明细行有多种税率时,必需是空
IsListing
是否强制开具清单
否
0 不进行强制,由系统自动处理,当超过8行明细时,系统自动出具清单。
1 进行强制转换成清单,强制转换后,没超过8行明细也会出具清单
0
JEFS
开具类型
否
0 正常发票 1 红字发票
0
RowCount
明细汇总行数
否
用固定值 0
0
明细字段说明
ProductCode
产品代码
是
EntryNumber
行号
否
从1开始算起
ProductName
产品名称
否
ProductModel
产品型号
是
ProductUnit
产品单位
是
TaxRate
税率
否
可以是17,也可以是0.17
Quantity
数量
是
当不需要打印数量时,传空
Price
不含税价
是
当不需要打印单价时,传空
HSDJ
含税价
是
当不需要打印单价时,传空
Amount
不含税金额
否
TaxAmount
税额
否
RowAttrib
行性质
否
正常行 :0 被折扣行 3 折扣行 4
ProductTypes
商品税目
是
4001代表是 商品销售
4001
Flbm
分类编码
否
Xsyh
税收优惠
否
无税收优惠0 有税收优惠1
Lslvbs
零税率标志
是
当税收优惠=1时 免税 1出口零税 0不征税 2 其它3,当税收优惠是0时,空
Yhsm
优惠说明
是
注意:如果红字 带清单的,只需要传一行明细, 产品名称必需是 详见对应正数发票及清单
---------------------
作者:f805122102
来源:CSDN
原文:https://blog.csdn.net/f805122102/article/details/80108194
版权声明:本文为博主原创文章,转载请附上博文链接!
航天,百旺组件开票调用说明相关推荐
- 百旺智能编码_【百旺】票字版开票软件操作指南已为您备好,请查阅!
为确保小规模纳税人继续享受税收优惠政策,请广大用户及时对开票软件进行升级~ 按照国家税务总局要求,从增值税发票税控开票软件五月补丁开始,将停止对增值税发票税控开票软件(税控盘版)"税&quo ...
- 百旺智能编码_开票选码有神器,“智能赋码”教您一键匹配!
为了帮助纳税人提高开票编码选择准确性,提高开票效率,进一步规范发票开具行为,陕西百旺金赋科技有限公司在陕西省国家税务局各级领导的指导下组织研发并推出了"智能赋码"助手,供全省纳税人 ...
- 百旺税控盘清卡时候服务器返回为空,百旺税控盘会自动清卡吗
等线百旺税控盘会自动清卡吗 目前的百旺税控盘登录就会自动清卡,如果没有自动清,那么手动清卡即可. 百旺黑色税盘怎么清盘 一.百旺黑色税盘清盘/清卡步骤如下: 登录-[报税处理]-[网上抄报]-根据企业 ...
- 【Android 安全】DEX 加密 ( Application 替换 | 分析 ContentProvider 组件中调用 getApplication() 获取的 Application 二 )
文章目录 一. ActivityThread 中的 installProvider 方法 ( 创建 ContentProvider 内容提供者 ) 二. installProvider 方法的第三分支 ...
- 【Android 安全】DEX 加密 ( Application 替换 | 分析 ContentProvider 组件中调用 getApplication() 获取的 Application )
文章目录 一. ContentProvider 创建过程分析 二. ActivityThread 中的 H 处理 BIND_APPLICATION 消息 三. ActivityThread 中的 ha ...
- Angular中怎样创建service服务来实现组件之间调用公共方法
场景 Angular介绍.安装Angular Cli.创建Angular项目入门教程: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detail ...
- React学习:ref调用、组件封装调用-学习笔记
文章目录 React学习:ref调用.组件封装调用-学习笔记 ref调用-string形式 ref调用-回调形式(官方推荐) ref调用-父调子 组件封装调用demo(全选) demo1(单组件) d ...
- javapanel根据内部组件_[译]避免在unmounted组件上调用setState
[译]避免在unmounted组件上调用setState 原文 : https://www.robinwieruch.de/react-warning-cant-call-setstate-on-an ...
- vuex 在非组件中调用 mutations 方法
版权声明:本文首发 http://asing1elife.com ,转载请注明出处. https://blog.csdn.net/asing1elife/article/details/8265566 ...
最新文章
- bcache状态和配置文件详细介绍(翻译自官网)
- mysql 三阶多项式拟合_2014年9月份考试机械CAD_CAM第二次作业
- JS开发中常用的小技巧
- 【新概念第一册】Lesson_29 Come in,Amy.
- Git 技术篇-GitHub免费私有库设置方法实例演示,GitHub私有库时代来临
- 用数字告诉你2014年Google的野心在哪里
- c++ vector拷贝构造_vector------stl学习笔记一
- linux vim 高亮查找,vim技巧:用列表形式显示所有搜索到的内容,去掉搜索内容的高亮...
- 卓有成效的管理者--总结
- sp_xml_preparedocument 处理xml文档
- java基础—计算: 2012-3-17到2012-4-6中间有多少天?
- Oracle中是用case...when语句进行判断
- AI 大规模分布式SGD:瞬间训练完基于ImageNet的ResNet50
- cudaMallocHost(void **,size_t)”: 无法将参数 1 从“float **”转换为“void **”
- 微信小程序 图片上传+php后台源码
- plsql手动修改数据
- echarts 默认显示图例_Echarts 饼状图显示信息,内容,值,百分比都显示的代码 更改图例等问题汇总...
- px像素和dp像素密度区别
- 机器人酷跑电脑版下载地址_机器人酷跑游戏
- ERP、APS与MES系统是什么?
热门文章
- 谢钦个人资料简介,,正是百收集团的主要创办人之一
- 【C/C++笔记】之TerminateThread函数结束线程的危险性
- Apple Developer 注册,闭坑或潘多拉魔盒?
- Python爬虫从入门到精通:(43)JS逆向:完美世界RAS逆向_Python涛哥
- 网站服务器加固方案,网站服务器的基础安全加固设置办法
- html下拉刷新原理,下拉刷新的基本原理
- BF算法与KMP算法详解
- Paint.net源码编译
- 利用Word的邮件合并功能,自动发送工资表邮件(亲自实践)
- 服务器压力测试工具ab