Rich pins pull extra information from your website into the pin: the headline and author for articles, the price and availability for products, and ingredients and cooking time for recipes. Pinterest reads that information from metadata in your page: Open Graph meta tags and schema.org structured data. If the tags are missing or incomplete, your pins show up as ordinary pins.
This rich pin checker reads the HTML source of a page and lists every relevant tag it finds, then tells you which rich pin type the page supports and what is missing for each type. It works entirely in your browser, which is why you paste the source instead of a URL: browsers block a page from downloading another site's HTML unless that site allows it, a security rule called CORS. Pasting the source gets around that without sending anything to a server.
What each rich pin type needs
Article rich pins need a title and a description, from og:title and og:description or a schema.org Article with a headline. An author, a publish date and a site name make them more complete. Product rich pins need a product name, a price and a currency, from product:price:amount and product:price:currency tags or a schema.org Product with an offer. Availability is strongly recommended so the pin can show if an item is in stock.
Recipe rich pins come from schema.org Recipe markup, usually added by a recipe card plugin. They need at least a name and a list of ingredients, and they look better with cooking time, servings and a rating. Most SEO and shop plugins add the article and product tags for you, so check their settings before editing your theme.
Why can't I just enter a URL?
Browsers stop one website from reading the contents of another unless the other site sends a header that allows it. This is cross-origin resource sharing, or CORS. Most sites do not allow it, so a tool that runs only in your browser cannot fetch your page directly. Tools that accept a URL fetch it on their own server, which means your page request goes through a third party.
Pasting the source avoids that and also lets you test a page that is not live yet, such as a staging site or a draft template. Keep in mind that the source you see is what the server sends. If your site adds tags with JavaScript after the page loads, Pinterest may not see them either.