Search code examples
apinode.jspayment-gatewaypayment-processingpaymill

Paymill API: How do I update a subscription's credit card?


I can create subscriptions, but I can't figure out how to update a subscription so that it uses a new credit card.

This is what I've tried: (assuming there is already an existing client, payment and subscription)

  1. create token in ui
  2. create a payment object in server
  3. update client like this:

    paymill.clients.update(clientId, { payment: payment.id }, callback);

I get this error:

Error: Identifier,payment
Exception: Api_Exception_InvalidParameter

Which calls do I need to make to achieve this?


Solution

  • Paymill has updated the api and you can now make this request which can be used to update cc details on a subscription.

    First create a payment and then update the subscription with the new payment id.

    curl -X PUT https://api.paymill.com/v2/subscriptions/<SubscriptionId> -u <ApiKey>: -d payment=<PaymentId>