iOS应用内购买规则

2023-09-04 1900阅读

本文所说的IAP特指苹果App Store的应用内购买。它是Apple提供的用于在App内购买虚拟商品或服务的交易系统。IAP不适用于应用内购买实体商品,也不适用于虚拟商品或不在应用内使用的服务。这意味着用户在App内购买了一项功能,并且该功能需要与实体产品结合使用。在这种情况下,允许使用IAP以外的方式解锁该功能,但前提是仍然需要IAP购买的选项。购买商品需审核通过后方可生效。用户购买后,每月会自动续订,直至用户手动取消或开发者删除IAP项目。然而,大多数联网应用程序中的应用内购买项目的价格都是从自己的服务器

1 IAP规则详解

本文所说的IAP(In-App Purchase)特指苹果App Store的应用内购买。 它是Apple提供的用于在App内购买虚拟商品或服务的交易系统。

首先,我们来讨论一下IAP的基本规则及其一些要点:

1.1 适用范围

App内需要付费的产品功能或虚拟商品/服务,例如游戏道具、电子书、音乐、视频、订阅会员、App的高级功能等。

IAP不适用于应用内购买实体商品(如淘宝买衣服),也不适用于虚拟商品(如充话费)或不在应用内使用的服务(如滴滴打车)。该应用程序。

那么问题来了,如果你在App中购买音乐专辑,不仅可以在App中收听数字专辑,还可以获得实体产品CD,是否适合IAP?

答案是适用的。 由于App中的数字专辑和实体产品CD可以分开使用,因此数字专辑属于IAP范围,您必须使用IAP购买。 否则,各种游戏中售价648的道具都声称该产品不仅包含游戏道具,而且购买后还获得50美分的实体纪念品(例如),因此他们直接绕过IAP。 苹果这不是在耍花招吗?

苹果规定适用范围内的虚拟商品或服务必须使用IAP购买和支付。 不允许支付宝、微信支付等其他支付方式(包括Apple Pay),也不允许以任何方式(包括跳出App、提示文案等)引导用户通过App外部的渠道购买。

原则上,苹果不允许使用外部兑换码来解锁应用内的虚拟商品或服务。 但事实上,对于兑换码的限制有些模糊,因为有些应用可以在应用内获取兑换码(如活动优惠券或签到奖励),很难严格界定是外部兑换码还是内部兑换码。内容兑换代码。 因此,在IAP购买中使用优惠券进行抵扣一般是允许的,但如果明显引导用户在App外购买兑换码,然后在App内兑换虚拟商品或服务,就会被苹果拒绝。

另外,App Store审核指南3.1.4中有这样一条特殊规则:

“在可选的基础上与经批准的物理产品(例如玩具)结合使用的应用程序功能可以在不使用 IAP 的情况下解锁功能,前提是 IAP 选项也可用。”

这意味着用户在App内购买了一项功能,并且该功能需要与实体产品结合使用。 在这种情况下,允许使用IAP以外的方式解锁该功能,但前提是仍然需要IAP购买的选项。 。

例如,用户在健康管理应用中购买了高级计步功能,但该计步功能需要与手环配合使用,并且必须与手环一起打包购买。 这种情况下,App可以在IAP购买选项的基础上提供其他购买方式。

但现实中似乎并没有这样的案例。 因为App完全可以把计步器变成免费功能,但脱离了手环实际上就无法工作,然后把手环当作一个可以在App之外使用的实体产品,所以和IAP无关。 谁找麻烦,把这个东西做成IAP,想给苹果分一杯羹~

还有一些跨平台同步的复杂情况,将在本文第三部分进一步介绍。

1.2 IAP类型

前面说过,IAP是一个商品交易系统,而不是一个简单的支付系统。 每个购买项目都需要在App的itunes connect后端创建一个产品并提交给Apple审核。 购买商品需审核通过后方可生效。

创建IAP产品时,主要有4种类型可供选择:

1.2.1 消耗品

该类型适合可多次购买的消耗品,如游戏道具、虚拟币等。

1.2.2 非消耗品

此类型适合一次性购买永久有效的物品,例如电子书、游戏关卡等。

该类型项目支持跨设备同步和本地恢复。 例如,用户在某个App中购买一本书,则可以在同一Apple ID设备上的所有App中免费获取该书,而不需要该App本身的帐户。 系统,即使该书从App中删除,也可以免费找回。

1.2.3 自动续订订阅

该类型适合自动续订的订阅项目,例如Apple Music的包月订阅。 用户购买后,每月会自动续订,直至用户手动取消或开发者删除IAP项目。

与非消耗型产品一样,该类型也支持跨设备同步和本地恢复机制。

此前,此类型仅支持报亭类别(报纸和杂志)的应用程序。 自2016年6月起,所有类型的应用程序均已得到支持。 不过,除了报刊亭类别之外,国内应用很少使用这种类型的应用内购买。

1.2.4 不可续订订阅

该类型适用于固定有效期的非自动续费项目,例如云音乐会员、部分视频应用的会员。 没有跨设备同步和本地恢复机制,用户可以多次购买。

1.2.5 免费订阅

该类型是自动续费订阅的特例,适用于免费订阅项目,仅支持报亭类应用,同时支持跨设备同步和本地恢复机制。

应用内购买编程指南详细介绍了每种类型的范围和特征:

其中,特别要注意的是:

1 对于非消耗品IAP项目,苹果会要求App提供“恢复购买”功能,支持跨设备同步和本地恢复。 同时,如果App本身有用户账户体系,那么用户只要支付一次,就可以通过恢复机制将IAP物品无限复制到多个用户账户中。

因此,对于电子书这样一经购买就永久有效的商品,如果您想使用App本身的用户账户体系,并避免跨设备同步和本地恢复机制,可以考虑选择不可续订订阅类型。 同时,考虑到不可续订的订阅一般都有固定的有效期,可以添加无限的有效期(如9999天)来应对苹果的审核。

2 消耗品和不可续订订阅都是可以重复购买的 IAP 商品。 前者更多的是消费品,后者更多的是订阅。 另一个区别是,对于非续订订阅的IAP项目,如果用户之前已经购买过一次,在过期后或切换App账号后再次购买,支付过程中会出现系统弹窗提示提醒用户之前已经购买过。 是否再次购买该商品,如果用户不小心点击取消,支付流程将被终止。

苹果设计这个弹窗的初衷是为了根据Apple ID识别用户,防止用户重复购买相同的商品。 但对于有用户账户系统的应用来说,这个提示就有点多余了,虽然影响不大。 因此,如果IAP项目同时适用于Consumable产品和Non-renewable订阅,建议选择Consumable产品。

1.3 定价

创建IAP项目时,您需要设置价格。 该价格只能从Apple预设的价格水平中选择。 例如,1级对应1美元、6元,2级对应2美元、12元……最高87级对应999.99美元、6498元人民币。 另外,可能是为了照顾某些币区的开发者和用户,还有一些特殊级别,比如储备金级别A对应1美元和1元,储备金级别B对应1美元和3元。 另外,IAP项目不能设定不符合任何级别的9.9元价格。 详细的价格等级列表请参见Apple官方文档:

app内购买花的是什么钱_app内购买是花钱吗_app内购买是什么意思花钱吗

苹果的价格等级表通常不会调整,但不排除在某些货币的汇率发生巨大变化的情况下,该货币的定价会进行调整。 调整前,苹果会发送邮件通知开发者。

另外,物价水平表中不同货币的汇率关系与实际汇率存在差异。 淘宝上一些低价的iOS游戏内购代理利用某些币种的汇率差来做生意。

对于开发者来说,如果App在中国境外发布,可能需要注意汇率问题。 在部分地区,以人民币结算的应用内购收入会低于相应价位的人民币收入,因此在某些需要严格计算实际收入的情况下(如金融统计收入、或应用内购买收入)购买收入需要与平台CP方进一步协商)共享),可能需要根据实际支付币种和内购金额以及对应的汇率来计算收入,或者可以通过一些方法来限制某些地区的应用内购买(如本文第 2.2 节所述)。

作为补充,IAP项目的价格可以在产品发布后在itunes connect后台修改,也可以设置限时折扣价格。 然而,大多数联网应用程序中的应用内购买项目的价格都是从自己的服务器获取的。 如果要修改价格或者设置限时折扣,需要双方一起处理,相当麻烦。

1.4 划分

很多人都知道,对于App Store上的付费应用和应用内购买,苹果和开发者默认是3/7的分成。

但事实上,在某些领域,苹果需要扣除交易税后才与开发者分享,而开发者的实际分成不一定是70%。 自2015年10月起,苹果公司对在中国的App Store购买商品扣除2%的交易税。 对于中国地区账户购买的IAP,开发者的实际份额在68%至69%之间。 此外,中国以外不同地区的交易税标准也存在差异。 如1.3所述,如果需要严格计算实际收入,可能需要考虑这部分。

对于不同地区的应用内购买,应用内购买价格和对应的实际开发者收入详见苹果的价格等级表(1.3中的链接)。

此外,根据苹果2016年6月的新规则,对于自动续订订阅类型的IAP,如果用户购买订阅超过一年,开发者从第二年开始可以获得85%的分成。 详细信息可参见:

1.5 结算

对于IAP交易收入,苹果一般以5周(每年1月/4月/7月/10月)或4周(其余月份)作为结算周期,并在每个结算周期结束后的第33天向开发者付款。

2 IAP设计与开发要点 2.1 创建并提交IAP项目

在开发IAP之前,您需要在itunes connect后端创建IAP产品,并按照规范填写产品id、产品名称、价格、截图等信息。

如果当前版本的App支持新的IAP项目,您可以直接提交IAP审核,无需发布版本。 如果您需要应用程序支持新功能,则需要将其与应用程序版本一起提交。

《iTunes Connect应用内购买配置指南》详细介绍了IAP的创建和提交流程:

其中,特别要注意的是:

2.1.1 尽量不要删除已创建的IAP

创建的IAP除商品id外的所有信息均可修改。 如果删除某个 IAP,您将无法创建具有相同产品 ID 的另一个 IAP,这意味着该产品 ID 将永久无效。 产品ID一般都有特定的命名规则,用于标记App中的购买商品。 如果命名规则下的某个产品ID永久失效,可能会导致整个产品ID命名规则被修改而陷入陷阱~

2.1.2 注意区分引用名和显示名

参考名称是给开发者看的,显示名称会在IAP支付流程的购买确认弹窗中显示给用户,不能随意修改(修改需要重新提交IAP审核),所以要明确命名时。

2.1.3 App审核被拒绝时

如果IAP与App版本一起提交审核,则所有新提交的IAP项目和App版本如果存在问题将同时被拒绝。 再次提交App送审时,一定要记得重新提交所有IAP项目(每个IAP都要手动编辑重新提交,真的很麻烦),否则苹果将无法继续审核。 别傻傻地等了半个月,发现苹果根本没有任何回应哦~

2.2 IAP支付流程

这部分内容属于功能实现的逻辑,在《内购编程指南》中也有详细解释:

我个人觉得,了解产品规划或者交互中的业务逻辑是非常有必要的,这样我们才能和开发一起设计出用户体验更好的功能解决方案。

具体来说,IAP支付模式分为客户端验证和服务器验证两种模式。 客户端验证方式安全性较低,容易伪造支付凭证。 一般来说,只有非常简单的独立应用程序才会使用它。 大多数应用程序都会使用服务器端验证模式。

另外,不同类型的IAP的支付流程也会有一些细微的差别(主要是恢复机制)。 我们以最常用的Consumable products和Non-renewable subscription类型为例,讲解一下IAP的支付流程:

以上是一个标准的IAP支付流程。 看似符合逻辑,但实际上却存在很多陷阱。 我们来重点讨论一下需要注意的问题。

2.3 不可忽视的陷阱 2.3.1 支付结果返回延迟

上述流程第6步中,由于网络问题等各种原因,即使用户支付成功,客户端也可能会暂时收不到Apple API的支付成功通知,无法主动请求查看支付状态来自苹果API。 只能被动等待通知。

因此,在某些情况下,客户端会延迟收到支付成功的通知(可能是几分钟后,或者下次打开应用程序时)。 在这种情况下,需要做两件事:

1 客户端本地保存所有未确认支付结果的交易信息,并建立监听流程。 收到支付成功信息后,继续处理交易的后续流程。在极端情况下,如果用户在未确认交易结果的情况下删除App,则App本地数据库中保存的交易信息也会丢失。 因此,更好的解决方案是将交易信息存储在iOS系统的钥匙串中。

2、当本地有交易信息未确认支付结果时,交互提示用户可能需要等待支付结果,避免重复支付。

2.3.2 服务端验证延迟

在上述步骤6至步骤8的支付凭证验证过程中,由于网络问题等各种原因,客户端可能无法及时收到服务器发送的验证成功通知。 同样,这种情况需要:

1 客户端将支付凭证保存在本地,并持续轮询服务器验证结果,直到返回明确的验证成功或验证无效的结果。支付凭证最好存储在钥匙串中。

2、当客户端向服务器轮询结果时,为了防止用户在支付结果页面等待太久,可以在交互层面(经过一定的超时时间)结束支付流程,并提示用户等待付款结果,避免重复付款。

2.3.3 非官方渠道套餐支付失败问题

上述流程第1步中,如果用户安装的App不是官方App Store渠道包(从第三方应用商店如PP助手、同步推送等下载),Apple API会直接返回该产品 ID 不存在并结束支付流程。 交互层面如上表现表明,用户点击购买后直接提示支付失败。 这个问题困扰了我们很长时间,在网上也找不到类似问题的信息。 经过用尽日志埋点、用户研究等一系列方法,我们终于定位到了。

同样,在越狱设备上安装某些内购破解插件后,将无法进行内购(返回产品id不存在)。 不过现在iOS设备越狱的比例很低,基本可以忽略不计。

iOS应用内购买规则

因此,解决这个问题的方法是:当返回的产品id不存在时,提示用户安装非官方渠道包,并引导用户到App Store下载官方渠道包。

2.3.4 货币验证

如本文1.3节所述,如果该应用是在中国境外发布的,但由于某种原因您想限制某些地区账户的应用内购买,您可以在第4步验证用户支付的货币单位以上流程并禁止某些货币购买。 同时,在交互方面也应该给用户相应的提示,比如弹窗提示不支持特殊地区账号购买等。

2.3.5 不绑定App Store支付方式的用户支付流程

这是一个巨大的坑!

如果用户在进行内购前未绑定App Store的支付方式,则在上述流程的第5步中,在系统弹窗中点击确认购买后(首次),会自动跳转至App Store绑定支付方式界面。 然后,如果支付方式绑定成功,会自动跳转回App,并再次(第二次)出现系统弹窗让用户确认购买。

然而,当用户点击系统弹窗(第一次)确认购买时,Apple API会立即返回给客户端支付失败...支付失败...失败...一般情况下,客户端收到支付失败时,应认为支付已被取消,本地交易信息将被丢弃。 但万万没想到,绑定支付方式完成后,用户还会继续确认购买。 这简直就是苹果IAP系统设计上的一个大bug!

如果知道这个坑,解决办法也很简单,就是当Apple API返回支付失败时,按照类似2.3.1的方式处理,保持交易信息待确认,继续监听返回付款结果。

3 更多IAP实践经验总结 3.1 匿名购买

很多应用在第一次提交IAP时会因为不支持匿名购买而被拒绝。 原因是应用商店审查指南要求应用程序在非必要时不允许用户注册/登录以使用某些功能。

一般情况下,对于没有IAP的应用,强制用户注册/登录使用都不会被拒绝(除非遇到非常苛刻的审核者),但对于IAP,一般要求支持匿名购买。 当然,你也可以尝试编出一堆需要强制用户注册/登录的理由(例如提供的商品或服务需要获取用户的手机号码或电子邮件地址),但并不能保证说服审稿人。

为了支持匿名购买,通常需要在用户未登录App账户时临时保存用户的购买记录,并在用户登录后合并到App账户数据中。

3.2 跨平台同步

虽然原则上苹果不允许解锁App中需要通过外部渠道付费的功能或虚拟商品,比如在网络上购买课程并在App中观看,但事实上,跨平台是可以做到的特定条件下同步 用户购买的内容:

1 在iOS App中也提供相应产品IAP购买的前提下,用户在不同平台购买的内容通过App账号进行同步。 当应用于大多数游戏时,此规则可能很苛刻,但一般内容应用程序是可以接受的。

2 对于电子书、音乐、视频等项目,App仅提供简单的内容阅读/观看功能,不提供任何发现和订阅内容的功能(如Kindle iOS版),可以支持用户从外部渠道购买内容后,可以在App内购买内容。 (详情请参阅App Store审核指南3.1.3)。 但事实上,是否允许也可能取决于审稿人的判断。 例如,云课堂曾提交过一个无法购买付费课程的版本,但允许用户在网页上购买付费课程并在iOS端观看,但被拒绝了。 理由 属于付费课程,不属于上述条件内容范围。

3.3 虚拟货币

由于IAP的价格水平机制,无法支持灵活的产品定价(如9.9元)和营销功能(如优惠券抵扣等),很多应用会引入虚拟货币,先充值特定的虚拟货币通过IAP内购获取价格(如6、12、18、648等),然后使用虚拟货币购买特定商品。

与IAP跨平台同步问题类似,在iOS平台充值的虚拟货币不允许与其他平台(Android、Web)流通,在外部平台充值的虚拟货币无法在iOS平台使用,并且在iOS平台充值的虚拟货币不能在外部平台使用。 。

但在实践中我们会发现一些App,比如喜马拉雅、Get等,支持用户在微信公众号中充值虚拟币(虽然微信充值也区分iOS平台和其他平台),然后在App中使用,并且在App的充值界面中隐约提醒用户,如果充值遇到问题,可以关注微信公众号获取客服帮助(实际上是引导用户使用微信进行充值)。 严格来说,这种做法并不合规,但如果苹果审核不严格的话,还是可以通过的。 它被认为是边球。 我想这招的效果还不错~

3.4 退款问题

根据苹果的政策,用户在购买IAP后90天内可以以各种理由申请退款(扣款后购买失败、买错、不喜欢等),但退款能否成功由苹果最终决定。

如果用户申请退款成功,苹果在与开发者结算时会记录退款单(当然也会包括原来成功的购买订单),而且钱是不会给的,苹果也不会告诉你是哪位用户已退款。 钱,用户买的东西还在,简直就是霸王条件啊~

订单数据可以在iTunes Connect后台的“支付及财务报告”中查看,但没有详细的时间信息和用户信息,很难定位到对应的平台订单。

对于游戏或者一些自营平台来说,收入可能会少一些。 对于需要一一分享给平台CP方的产品,可能会赔钱。 为了解决这个问题,我们尝试设计一套复杂的退款订单分配规则。 根据IAP订单的时间段和金额,结合平台订单的一些信息,将IAP退款订单分配给平台订单。 平台与CP方共同退款。 但由于开发进度的原因,这个计划已经发布一年多了,还没有实施……退款由平台承担→_→

从历史数据来看,一般在没有遇到大量恶意退款的情况下,IAP退款率可能在1%到3%之间(取决于App内容的质量、用户的心情、苹果的心情)。 对于IAP收入较大的应用,可能需要考虑退款问题。

3.5 支付成功率

云课堂曾经对比过iPhone上支付宝/微信支付的支付数据(注:绕过IAP使用第三方支付属于违规行为,可能导致应用下架或开发者被封禁,请勿模仿) !)和IAP支付数据,发现三方支付用户的支付成功率大约是IAP的2到3倍,体现在收入上是2倍以上。

不难理解,国内App Store用户的支付习惯肯定不如第三方支付成熟。 经过进一步的用户问卷调查发现,影响IAP支付成功率的因素有很多:

1 用户安装的应用来自第三方应用商店或使用越狱设备,无法使用IAP支付(约5%用户)

2 用户未绑定App Store支付方式(约75%的用户,数据惊人)

3 用户在IAP支付过程中遇到绑定支付方式问题而放弃(约50%用户)

以上数据仅代表云课堂iPhone端的用户基数。 从某种意义上来说,也说明云课堂的用户相对新手(产品本身的目标用户很大一部分是新手),从未接触过IAP等支付方式。 不同产品的目标用户群体,App Store内购的使用习惯肯定存在差异。

但随着App Store内购的流行(一方面是游戏内购带动,另一方面也受益于苹果的促销,比如频繁的一元购活动)对于应用程序,并自 2016 年 11 月起支持绑定)。 支付宝),用户的应用内购买习惯也在不断发展。 从数据中我们还可以看到IAP支付成功率呈上升趋势,这对于接入IAP的产品来说是利好。

3.6 作弊

考虑到IAP的份额、退款、支付成功率等一系列问题,虽然我们有很多方法可以偷偷绕过IAP,使用第三方支付,比如:

1.通过后台开关控制定时开启第三方支付

2、根据用户信息和行为识别出明显不是苹果评测者的用户(尤其是一些客单价较高的用户),并启用第三方支付

ETC……

不过,根据公司企业发展部、市场部、法务部的要求,不要在IAP问题上闹事! 遵循苹果之父的规矩,做出好产品,争取App Store推荐是一件严肃的事情!

Windows已经成为国产电脑领域市场占有率最大的操作系统,市场占有率超过90%,远高于苹果Mac系统。

自Windows第一个桌面版本Win95问世以来,微软已经发布了多个版本的Windows系统,其中以WinXP、Win7和Win10最为经典。

iOS应用内购买规则

如果比较WinXP、Win7、Win10这三个操作系统,哪一个最好呢?

WinXP已被淘汰

Winxp是微软公司于2001年10月25日推出的基于X86和X64架构的计算机操作系统,是一个比较经典的版本。 服役了近13年之后,Windows XP系统于2014年4月8日正式“退休”。目前微软也彻底停止了对WinXP系统的任何支持。

因此,WinXP系统已经被一代桌面操作系统彻底淘汰。

iOS应用内购买规则

iOS应用内购买规则

虽然没有得到微软的官方支持,但在一些特殊领域仍然可以看到WinXP的身影,比如ATM机、医疗设备等。但对于个人电脑来说,已经不再建议继续使用WinXP了。 毕竟现在很多软件已经不再支持这个版本的系统了。

Win7生命力依然旺盛

Windows 7是微软吸收Windows Vista精髓后发布的一款革命性的桌面操作系统。 与WinXP相比,它在易用性和功能方面都有了很大的提高,因此一经发布很快就赢得了广大用户的认可。 从兼容性和稳定性上来说,它是公认的非常经典的Windows版本。

iOS应用内购买规则

尽管微软从今年1月份开始就停止了对Win7系统的技术支持,但很多人仍然不愿意放弃使用这个版本。 一方面,多年的使用习惯已经适应了这个版本的操作。 另一方面,电脑硬件配置低也让很多人放弃了Win7系统。 因此,迄今为止Win7系统的市场占有率也是非常高的。

Win10系统已成主流

微软于2015年1月正式发布Windows 10桌面操作系统,与之前的Windows版本相比,WIn10不仅在易用性和安全性方面有了大幅提升,还集成了云服务、智能移动设备、自然人机交互等新技术。相互作用。 通过Win10系统,可以更好的发挥硬件的性能。

xp系统用什么好_xp系统好用吗_怎样用u盘装xp系统

iOS应用内购买规则

由于Windows 7系统的形象在用户心中根深蒂固,Windows 10的推广过程并不顺利,以至于在发布5年后停止对Win 7系统的支持才取得了现在的成绩。

目前大部分最新的主板已经不再支持Win10以下的桌面操作系统,所以新电脑都预装了Win10系统。

总结

总体而言,Win10系统已经是Windows桌面操作系统的主流版本。 如果您的电脑硬件配置较高,能够流畅运行Win10系统,建议使用最新版本的Win10系统。 如果是几年前的老电脑,如果硬件配置不高,就只能使用Win7系统。 至于WinXP系统,相信现在用的人并不多。 毕竟只能运行WinXP系统的电脑硬件已经很低了。

短视频运营、抖音代理运营、快手代理运营、如何写剧本、如何拍摄视频、黄金三秒法、企业账号认证、短视频剪辑、抖音破玩、公众号运营、微信代理运营、代理运营、代理运营、代理运营报价、代理运营方案、阅读量推广、公众号粉丝软文推广 品牌营销 微博代理运营 小红书运营 全托管运营 一站式运营

iOS应用内购买规则

iOS应用内购买规则

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]