Esta página se aplica a Apigee y Apigee Hybrid.
Consulta la documentación de
Apigee Edge.
En esta página se describe cómo puedes gestionar tus cuentas de facturación prepago.
Puedes usar las APIs de Apigee para gestionar las cuentas de facturación prepago de tus desarrolladores. Si usas las APIs, puedes hacer lo siguiente:
- Ver la configuración de monetización
- Actualizar la configuración de monetización
- Ver el saldo del desarrollador
- Abonar saldo de desarrollador
- Ajustar el saldo de desarrollador
Ver la configuración de monetización
Para ver la configuración de monetización de un desarrollador, envía una solicitud GET
a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Con esta API, puede ver el tipo de facturación del desarrollador. Para obtener más información sobre la API, consulta getMonetizationConfig.
En el siguiente ejemplo se muestra cómo ver la configuración de monetización de un desarrollador mediante el comando curl
:
curl -H "Authorization: Bearer $TOKEN" \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Cuando ejecutes el comando, verás una respuesta similar a la siguiente:
{ "billingType": "PREPAID", }
Actualizar la configuración de monetización
Para actualizar la configuración de monetización de un desarrollador, envía una solicitud PUT
a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Con esta API, puedes actualizar el tipo de facturación del desarrollador. Para obtener más información sobre la API, consulta updateMonetizationConfig.
En el siguiente ejemplo se muestra cómo actualizar la configuración de monetización de un desarrollador mediante el comando curl
:
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -X PUT \ -d '{ "billingType": "POSTPAID", }' \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Cuando ejecutes el comando, verás una respuesta similar a la siguiente:
{ "billingType": "POSTPAID", }
Cambio de tipo de facturación
Tus desarrolladores pueden cambiar su facturación de prepago a pospago y viceversa. En esta sección se describen los cambios que se producen en Apigee cuando los desarrolladores cambian su tipo de facturación.
De pospago a prepago
Si un desarrollador cambia de pospago a prepago, Apigee asigna inmediatamente el valor billingType
a PREPAID
en la configuración del desarrollador. El desarrollador puede empezar a usar las APIs hasta el importe de la recarga prepago. Según tus informes de monetización personalizados, tú (proveedor de la API) debes facturar por separado cualquier uso que se haya hecho en la cuenta pospago del desarrollador.
De prepago a pospago
Si un desarrollador cambia de prepago a pospago, Apigee asigna inmediatamente el valor billingType
a POSTPAID
en la configuración del desarrollador. En los informes de monetización personalizada se muestra el saldo (en todas las monedas) de la cuenta prepago del desarrollador como una transacción de crédito. Al calcular el importe que debe pagar un desarrollador después del ciclo de facturación, tú (proveedor de la API) debes tener en cuenta el saldo de crédito de la cuenta del desarrollador.
Ver el saldo de desarrollador
Para ver el saldo de una cuenta prepago de desarrollador, envía una solicitud GET
a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance
Para obtener más información sobre la API, consulta getBalance.
En el siguiente ejemplo se muestra cómo ver el saldo de una cuenta prepago de desarrollador:
curl -H "Authorization: Bearer $TOKEN" \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance
Cuando ejecutes el comando, verás una respuesta similar a la siguiente:
{ "wallets": [ { "balance": { "currencyCode": "USD", "units": "150", "nanos": 500000000 }, "lastCreditTime": 1234567890 }, { "balance": { "currencyCode": "INR", "units": "10000", "nanos": 600000000 }, "lastCreditTime": 9876543210 } ] }
En la respuesta de ejemplo, el desarrollador tiene dos saldos de prepago, uno por cada moneda.
Puedes consultar el importe del saldo en los campos units
y nanos
. El campo lastCreditTime
está en formato de hora de época y denota la hora a la que se abonó por última vez el saldo del desarrollador.
Saldo negativo del desarrollador
Si un desarrollador hace varias llamadas a la API en un breve periodo, es posible que se le permita hacer llamadas a la API en exceso, lo que provoca que el saldo de la cartera del desarrollador sea negativo.
Este caso se da cuando varios procesadores de mensajes gestionan las llamadas a la API del mismo desarrollador. Cada procesador de mensajes tendrá una copia del saldo del desarrollador en función de la cual permitirá las llamadas a la API. Todos los procesadores de mensajes sincronizan periódicamente sus saldos con el saldo principal de la base de datos de Cassandra. Debido a los pequeños retrasos en la sincronización, el saldo de la cartera de un desarrollador en un procesador de mensajes puede no estar sincronizado con el saldo principal. Por ejemplo, en un momento dado, si el saldo de la cartera del desarrollador en un procesador de mensajes es de 2 USD, el saldo principal podría ser de 0 USD. Por lo tanto, el procesador de mensajes permite las llamadas a la API del desarrollador, ya que cree que la cartera del desarrollador sigue teniendo 2 USD.
Apigee sincroniza el saldo de la cartera de un procesador de mensajes casi en tiempo real con pequeños retrasos, y no puedes controlar ni configurar este comportamiento de Apigee. Sin embargo, se tienen en cuenta todas las llamadas a la API que haga un desarrollador. Una vez procesadas todas las llamadas a la API de un desarrollador, el importe final de la cartera del desarrollador refleja el cargo, incluso en el caso de las llamadas a la API que excedan el límite. Por lo tanto, la próxima vez que el desarrollador recargue la cuenta, para tener un saldo de Wallet positivo, primero deberá pagar el importe del saldo negativo en Wallet.
Saldo de crédito para desarrolladores
Para ingresar saldo en la cuenta de prepago de un desarrollador, envía una solicitud POST
a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:credit
Para obtener más información sobre la API, consulta creditBalance.
Para abonar el saldo de un desarrollador, debes seguir estos pasos en orden:
- Un desarrollador recarga la cuenta de desarrollador desde el portal para desarrolladores mediante una pasarela de pagos.
- El portal para desarrolladores genera un ID de transacción único para la recarga.
- El portal para desarrolladores actualiza el saldo del desarrollador mediante la API
organizations/{org}/developers/{developer}/balance:credit
.
En el siguiente ejemplo se muestra la llamada a la API del paso 3 y se añade al saldo del desarrollador 150,21 USD.
El valor de transactionId
es el del ID de transacción de la transacción de recarga (paso 3).
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -X POST \ -d '{ "transactionAmount": { "currencyCode": "USD", "units": "150", "nanos": 210000000 }, "transactionId": "ab31b63e-f8e8-11eb-9a03-0242ac130003" }' \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:credit
Cuando ejecutes el comando, verás una respuesta similar a la siguiente:
{ "wallets": [ { "balance": { "currencyCode": "USD", "units": "300", "nanos": 710000000 }, "lastCreditTime": "9876543210" }, { "balance": { "currencyCode": "INR", "units": "10000", "nanos": 600000000 }, "lastCreditTime": "1234567890" } ] }
Ajustar el saldo de desarrollador
Si has cobrado de menos o de más a la cuenta de un desarrollador, puedes usar la API adjustBalance
para reducir o aumentar el saldo de la cuenta.
Para ajustar el saldo de una cuenta prepago de desarrollador, envía una solicitud POST
a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:adjust
Para obtener más información sobre la API, consulta adjustBalance.
Si quieres reducir el saldo de un desarrollador al que se le ha cobrado de menos, asigna un valor positivo al campo units
de la solicitud.
En el siguiente ejemplo, se reduce el saldo de la cuenta prepago de un desarrollador en 50
USD:
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -X POST \ -d '{ "adjustment": { "units": "50", "currencyCode": "USD" } }' \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:adjust
Cuando ejecutes el comando, verás una respuesta similar a la siguiente:
{ "wallets": [ { "balance": { "currencyCode": "USD", "units": "150" }, "lastCreditTime": "1635489199530" } ] }
Si quieres aumentar el saldo de un desarrollador al que se le ha cobrado de más, asigna un valor negativo al campo units
de la solicitud.
En el siguiente ejemplo, se aumenta el saldo de la cuenta de prepago de un desarrollador en 50.1
USD:
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -X POST \ -d '{ "adjustment": { "units": "-50", "nanos": "100000000", "currencyCode": "USD" } }' \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:adjust
Cuando ejecutes el comando, verás una respuesta similar a la siguiente:
{ "wallets": [ { "balance": { "currencyCode": "USD", "units": "200", "nanos": 100000000 }, "lastCreditTime": "1635489199530" } ] }