通过阿里云 BssOpenApi 自动查询实例账单并导出为 CSV 文件,格式与阿里云控制台手动导出一致。
- 调用
DescribeInstanceBillAPI,按计费项维度查询实例级别账单 - 支持
DAILY(按天)和MONTHLY(按月)两种查询粒度 DAILY模式自动遍历月份内每一天,无需逐日手动查询- 自动分页获取全部数据(每页最多 300 条)
- 输出 39 列 CSV 文件,与阿里云控制台导出格式完全一致
- CSV 文件采用 UTF-8 with BOM 编码,Excel 可直接打开无乱码
- 支持按产品、订阅类型、实例 ID 等多维度过滤
- Go 1.18+
- 阿里云账户及 AccessKey(需具有 BssOpenApi 读取权限)
建议为账单查询创建独立的 RAM 用户,仅授予
AliyunBSSReadOnlyAccess权限。
git clone https://github.com/Jpridee/aliyun-bill-exporter.git
cd aliyun-bill-exporter
go build -o aliyun-bill main.goLinux / macOS:
export ALIBABA_CLOUD_ACCESS_KEY_ID=<your-access-key-id>
export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<your-access-key-secret>Windows PowerShell:
$env:ALIBABA_CLOUD_ACCESS_KEY_ID="<your-access-key-id>"
$env:ALIBABA_CLOUD_ACCESS_KEY_SECRET="<your-access-key-secret>"# 导出当前月份的 DAILY 账单(默认)
./aliyun-bill
# 导出指定月份的账单
./aliyun-bill -cycle 2026-03
# 仅导出 ECS 产品的按量付费账单
./aliyun-bill -cycle 2026-03 -product ecs -sub-type PayAsYouGo
# 导出指定日期的账单
./aliyun-bill -cycle 2026-03 -billing-date 2026-03-15
# 按月粒度导出
./aliyun-bill -cycle 2026-03 -granularity MONTHLY
# 查询指定实例的账单
./aliyun-bill -instance i-xxx -cycle 2026-03
# 指定输出文件名
./aliyun-bill -cycle 2026-03 -output march_bill.csv| 参数 | 默认值 | 说明 |
|---|---|---|
-cycle |
当前月份(YYYY-MM) |
账期 |
-product |
空(全部产品) | 产品代码,如 ecs、rds、oss |
-sub-type |
空(全部) | 订阅类型:Subscription(包年包月)/ PayAsYouGo(按量付费) |
-granularity |
DAILY |
查询粒度:MONTHLY / DAILY |
-billing-date |
空 | 指定账单日期(YYYY-MM-DD),仅 DAILY 粒度时有效 |
-instance |
空 | 实例 ID,用于查询单个实例的账单 |
-output |
bill_YYYYMMDDHHmmss.csv |
输出 CSV 文件路径 |
-billing-item |
true |
是否按计费项维度查询 |
- 编码:UTF-8 with BOM(
EF BB BF),可直接用 Excel 打开无乱码 - 列数:39 列,与阿里云控制台"按计费项"导出格式一致
- 默认文件名:
bill_YYYYMMDDHHmmss.csv
包含以下维度信息:账号信息、账期日期、费用类型、产品/商品信息、实例信息(ID/名称/配置/规格/IP)、地域可用区、计费项、用量、价格(目录价/优惠/应付/代金券抵扣等)。
- 阿里云账单数据存在延迟:一般为 24 小时,部分产品可达 48 小时
- 当月账单数据仅供参考,最终以出账后数据为准
- API 存在频率限制(QPS),大量查询时注意控制请求频率,避免被限流
DAILY粒度查询当月时,会自动截止到当天日期
- 基于阿里云 BssOpenApi
DescribeInstanceBill接口 - 优惠后金额计算方式:
PretaxGrossAmount(目录总价) - InvoiceDiscount(优惠金额) - 使用 Token 分页机制(
NextToken)自动获取全部数据 - SDK 版本:
alibabacloud-go/bssopenapi-20171214/v2 v2.0.6