Spreedly provides a Payments API that allows you to collect payment information from within your own interface and pass it seamlessly to Spreedly rather than using the Spreedly payment collection interface directly. Using the Payments API makes you responsible for ensuring PCI-DSS compliance for payment information in transit, including but not limited to implementing HTTPS and ensuring no payment information is stored insecurely within your application. Even though Spreedly handles all actual charging of cards and storage of sensitive data, using the Payments API necessitates the temporary handling of PCI protected data and that should be taken into account when deciding whether or not to use it.
There are two main calls involved in the Payments API. The first creates an open invoice that you can show to your customer, and the second pays the open invoice via a payment method. The flow will look something like this:
There is also a supplemental API that allows you to update a subscriber's payment (and other) information directly: