Java 将移动货币(如Mpesa和AirtelMoney)与Android应用程序集成

Java 将移动货币(如Mpesa和AirtelMoney)与Android应用程序集成,java,android,mobile,mpesa,airtelmoney,Java,Android,Mobile,Mpesa,Airtelmoney,在肯尼亚,现在已经蔓延到非洲和世界其他地区,我们有了一种通过手机发送和接收金钱的神奇方式——手机创造了金钱。两家领先的服务提供商Safaricom和Airtel分别拥有各自的移动货币平台,即Mpesa和AirtelMoney 由于谷歌商家服务在肯尼亚不可用,而且使用它们也会避开潜在的消费者,我一直在考虑使用Mpesa和AirtelMoney向用户销售我的应用程序。现在,无论何时发生交易,移动货币服务都会向发送方和接收方发送确认短信 现在,我将如何在我的应用程序上使用这些服务,因为我一直未能成功地

在肯尼亚,现在已经蔓延到非洲和世界其他地区,我们有了一种通过手机发送和接收金钱的神奇方式——手机创造了金钱。两家领先的服务提供商Safaricom和Airtel分别拥有各自的移动货币平台,即Mpesa和AirtelMoney

由于谷歌商家服务在肯尼亚不可用,而且使用它们也会避开潜在的消费者,我一直在考虑使用Mpesa和AirtelMoney向用户销售我的应用程序。现在,无论何时发生交易,移动货币服务都会向发送方和接收方发送确认短信

现在,我将如何在我的应用程序上使用这些服务,因为我一直未能成功地使用使用web平台和其他技术的可用API。并非所有我的用户每天都使用互联网,因为我的应用程序是教会成员使用的。但可以肯定的是,他们每天都在使用移动货币。我将感谢为此所作的任何努力


我希望当用户通过Mpesa向我付费时,我的应用程序能够从试用版变为高级版,因为与web API相比,使用sms似乎更容易些。我也遇到过类似的问题,决定使用sms来实现这一目标。首先,我使用了允许我这样做的权限:

    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.READ_SMS" />
<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <receiver
            android:name="com.example.myapp.IncomingMessage"
            android:enabled="true"
            android:exported="true"
            android:permission="android.permission.BROADCAST_SMS" >
            <intent-filter android:priority="2147483647" >
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </receiver>

我希望这有帮助。代码很简单,也许你会修改它以满足你的需要

我也遇到了类似的问题,决定使用短信来实现这个目标。首先,我使用了允许我这样做的权限:

    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.READ_SMS" />
<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <receiver
            android:name="com.example.myapp.IncomingMessage"
            android:enabled="true"
            android:exported="true"
            android:permission="android.permission.BROADCAST_SMS" >
            <intent-filter android:priority="2147483647" >
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </receiver>

我希望这有帮助。代码很简单,也许您会修改它以满足您的需要

Safaricom已经发布了M-Pesa API,作为RESTful API,可通过其应用程序访问


Safaricom github有一个使用API的示例。此API代表应用程序用户启动M-Pesa事务,用户只需输入其M-Pesa PIN即可完成事务。

Safaricom已将M-Pesa API作为RESTful API发布,可通过其应用程序访问


Safaricom github有一个使用API的示例。此API代表应用程序用户启动M-Pesa事务,用户只需输入其M-Pesa PIN即可完成事务。

使用您选择的后端语言(Java、php等),解决MPESA集成的最佳方法是将MPESA付款存储在数据库表中,然后从中扩展业务逻辑

一旦确认文件中有付款确认,您还可以要求/包括您的业务逻辑文件,并从中执行您的业务逻辑。这适用于C2B mpesa API。查看此以了解更多信息

另一方面,B2C mpesa集成最好也在后端完成。只要在完成业务逻辑脚本后立即需要B2C支付请求文件即可


阅读此处了解更多详细信息。

使用您选择的后端语言(Java、php等),解决MPESA集成的最佳方法是将MPESA付款存储在数据库表中,然后在此基础上扩展您的业务逻辑

一旦确认文件中有付款确认,您还可以要求/包括您的业务逻辑文件,并从中执行您的业务逻辑。这适用于C2B mpesa API。查看此以了解更多信息

另一方面,B2C mpesa集成最好也在后端完成。只要在完成业务逻辑脚本后立即需要B2C支付请求文件即可


请阅读此处了解更多详细信息。

这非常令人鼓舞,我将很快尝试分享这一点。这非常令人鼓舞,我将很快尝试分享这一点