[Feature Request] Hosted Invoice PDFs

As of today (31 Dec 2025), Dodo Payments does not provide us with any option for a hosted invoice PDF. As of now we get the contents of the PDF in the response which we can then stream to the user or save it in S3 and then provide them with a view url.

It would be great if we can obtain a InvoiceUrl in the payment details itself. That way, we could paginate over payments for a given subscription without having to worry about handling invoice processing at our end.

Else right now we hav to do something like this

// Step 1: Get all the payments details
iter := s.client.Payments.ListAutoPaging(ctx, dodopayments.PaymentListParams{
		SubscriptionID: dodopayments.F(req.SubscriptionId),
	})

	paymentInvoices := make([]*DodoPaymentsInvoiceDetails, 0)

	for iter.Next() {
		p := iter.Current()

		// FEATURE SUGGESTION => p.InvoiceUrl to be obtained here to skip all the rest of the processing given below


		pdf, err := s.client.Invoices.Payments.Get(ctx, p.PaymentID)
		if err != nil {
			goLibOtelLogger.Errorf(ctx, err, "error fetching invoice pdf for payment id %s: %v", p.PaymentID, err)
			paymentInvoice.ErrorFetching = true
			paymentInvoice.Invoice = nil
			paymentInvoices = append(paymentInvoices, paymentInvoice)
			continue
		}
		paymentInvoice.Invoice = pdf
		paymentInvoice.ErrorFetching = false
		paymentInvoices = append(paymentInvoices, paymentInvoice)
	}

	if err := iter.Err(); err != nil {
		return nil, err
	}

// Step 2: Process paymentInvoices and upload to S3

I am looking forward to this feature. Please, please help implement this as soon as possible.

Please authenticate to join the conversation.

Upvoters
Status

Completed

Board
πŸ’‘

Feature Request

Date

About 2 months ago

Author

Tanishq Vyas

Subscribe to post

Get notified by email when there are changes.