2017-05-08 102 views
0

我使用react-native-stripe-id從反應本機應用程序連接到Stripe。我創建了一張卡片,然後是客戶的令牌,然後爲他們訂閱:使用react-native-stripe-api取消訂閱

... 
.then(card => { 
    return stripeClient.createToken(card.cardNumber, card.expiryMonth, card.expiryYear, card.cvv); 
}) 
.then(token => { 
    return stripeClient.createCustomer(token.id, user.email, user.uid, user.firstName, user.lastName); 
}) 
.then(customer => { 
    return stripeClient.createSubscription(customer.id, "MyPlan"); 
}) 
.then(subscription => { 
    ... 
}); 

這似乎很好地工作。

從這裏,通過客戶和訂閱,我如何更改或取消訂閱?

簡單地創建一個新的訂閱新計劃訂閱客戶的計劃和雙重收費。

我可以通過retrieveSubscription找回客戶的訂閱,但不知道我可以用這個做什麼。

回答

2

我建議不要從您的React Native應用程序調用createCustomer,createSubscription等,因爲它們只能使用您的密鑰進行創建。如果您將祕密密鑰放入您的應用程序中,任何擁有應用程序副本的人都可以提取密鑰並使用它來惡意地針對您的帳戶進行API調用,例如退款,刪除您的數據等。

通常的做法是創建iOS應用程序進行API調用的後端應用程序。您的後端應用程序安全地存儲您的密鑰並與Stripe API進行通信。除了安全性之外,另一個優勢是您將獲得更簡單,更輕量級的前端應用程序。

假設你正在使用條紋的節點庫,你想使這個電話: https://stripe.com/docs/api/node#cancel_subscription

我會檢討條紋的標準集成指南,瞭解如何設計你的後端應用: https://stripe.com/docs/mobile/ios/standard#prepare-your-api