{"_id":"59bc55d72b480b0010010c9d","category":{"_id":"59bc55d72b480b0010010c93","version":"59bc55d72b480b0010010c92","project":"57336fd5a6a9c40e00e13a0b","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-10-01T16:04:11.135Z","from_sync":false,"order":0,"slug":"welcome","title":"Quickstart"},"project":"57336fd5a6a9c40e00e13a0b","user":"560d5913af97231900938124","parentDoc":null,"version":{"_id":"59bc55d72b480b0010010c92","project":"57336fd5a6a9c40e00e13a0b","__v":1,"createdAt":"2017-09-15T22:36:07.078Z","releaseDate":"2017-09-15T22:36:07.078Z","categories":["59bc55d72b480b0010010c93","59bc55d72b480b0010010c94","59bc55d72b480b0010010c95","59bc55d72b480b0010010c96","59bc55d72b480b0010010c97","59bc55d72b480b0010010c98","59bc55d72b480b0010010c99"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"3.22.2 Release","version_clean":"8976.0.0-Basics","version":"8976-Basics"},"__v":0,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-05-12T13:04:24.797Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":true,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":3,"body":"This tutorial will walk you through the essentials of using the Extended Payment API to process payments, including:\n  * [Setting up products & contracts (SKUs)](#section-step-1-setting-up-products-contracts-skus-)\n  * [Make a credit card charge using Hosted Payment Fields](#section-step-2-make-a-credit-card-charge-using-hosted-payment-fields)\n  * [Additional powerful features you may want to use](#section-step-3-power-tools-digital-wallets-paypal-and-subscriptions)\n  * [Tips for testing](#section-step-4-testing-tips)\n\n**Note:** This tutorial assumes that you are using BlueSnap's [Hosted Payment Fields](/v4.0/docs/hosted-payment-fields) to collect shopper credit card information. If you don't yet have an app or form where you collect shopper payment details, [go to this tutorial](doc:build-a-form), where we'll walk you through setting up a simple checkout form.\n[block:callout]\n{\n  \"type\": \"success\",\n  \"body\": \"**BlueSnap account**\\nYou will need a BlueSnap account in order to get your API credentials and start sending requests from your server. If you don't have an account yet, you can [sign up for one here](http://home.bluesnap.com/get-started/).\\n\\n**Request format**\\nTo work with the BlueSnap API, you will send requests to the API from your server, using your own server-side language like Java, Ruby, Python, or another. The examples in this tutorial provide just the XML content of the request, which you will need to send as specified by your server-side language.\\n\\n**XSD files**\\nYou'll likely want BlueSnap's .xsd (schema) files once you start building your requests. You can download them here:\\n[https://github.com/bluesnap/api-resources](https://github.com/bluesnap/api-resources)\",\n  \"title\": \"Tips for getting started\"\n}\n[/block]\n##Step 1: Setting up products & contracts (SKUs)\nBecause the Extended Payment API works based on the product catalog you have set up in BlueSnap, the first step is to create your products and contracts. There are two ways to do this: either directly in the BlueSnap Merchant Console, or via the Extended Payment API.\n\nFor instructions on setting up products and contracts in the Merchant Console, see:\n  * [Creating a product](http://support.bluesnap.com/docs/creating-a-product)\n  * [Creating a contract](http://support.bluesnap.com/docs/creating-a-contract)\n\nIf you prefer to set up your products and contracts (SKUs) via the API, use these web services:\n  * [Create Product](/v3.0/docs/create-product) \n  * [Create SKU](/v3.0/docs/create-sku) \n\n\n<br>\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n##Step 2: Make a credit card charge using Hosted Payment Fields\nNow that you have a product catalog, you are ready to start processing payments.\n\n**In this tutorial, we are assuming that you need to process a one-time payment for a new shopper who has entered their credit card information in [Hosted Payment Fields](/v4.0/docs/hosted-payment-fields)**.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Information about other use cases\",\n  \"body\": \"If you would like to learn more about subscription payments, see the [Subscriptions Guide](/v3.0/docs/subscriptions-guide).\\n\\nAnd if you would like to learn how to use Hosted Payment Fields with existing shoppers, [go here](/v4.0/docs/hosted-payment-fields#section-existing-shopper).\"\n}\n[/block]\nTo process the transaction for this shopper, we will use the [Create Order and New Shopper](/v3.0/docs/create-shopper-and-order) service. This enables you to process the payment and set up a new shopper account at the same time. The credit card information from the Hosted Payment Fields will be stored in the new shopper account in BlueSnap. The created shopper can be used later for recurring payments or future orders.\n\n###Request and response examples\n\nBelow is an example of a Create Order and New Shopper request with a Hosted Payment Fields token in the `pf-token` field. This request should be sent to: `services/2/batch/order-placement`\n\nAfter you send the request, if all goes well, you will receive a 201 Created response with content similar the the example response shown in the second tab.\n\nThe response includes:\n  * `order-id` = a unique ID that BlueSnap assigns to this order\n  * `credit-card` = details about the credit card info that the shopper entered into the Hosted Payment Fields\n\nIf an issue occurs, whether a validation error with the information you sent, an error from the processor, or another type of issue, you will instead receive an HTTP 400 or 500 response with a BlueSnap error code and description. For more information, see [Error Handling Overview](/v3.0/docs/error-handling-overview).\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"<batch-order xmlns=\\\"http://ws.plimus.com\\\">\\n  <shopper>\\n    <web-info>\\n      <ip>62.219.121.253</ip>\\n    </web-info>\\n    <shopper-info>\\n      <shopper-currency>USD</shopper-currency>\\n      <store-id>4677</store-id>\\n      <locale>en</locale>\\n      <shopper-contact-info>\\n        <title>Mr.</title>\\n        <first-name>John</first-name>\\n        <last-name>Doe</last-name>\\n        <email>jdoe:::at:::johndoeandsons.com</email>\\n        <company-name>JohnDoeAndSons</company-name>\\n        <address1>138 Market St</address1>\\n        <city>San Francisco</city>\\n        <zip>75654</zip>\\n        <state>CA</state>\\n        <country>US</country>\\n        <phone>14135556789</phone>\\n        <fax>14135556788</fax>\\n      </shopper-contact-info>\\n      <payment-info>\\n        <credit-cards-info>\\n          <credit-card-info>\\n            <billing-contact-info>\\n              <first-name>John</first-name>\\n              <last-name>Doe</last-name>\\n              <address1>138 Market st</address1>\\n              <city>San Francisco</city>\\n              <zip>75654</zip>\\n              <state>CA</state>\\n              <country>US</country>\\n            </billing-contact-info>\\n            <pf-token>c7c69ff853ab784ef35a0c78ffec08e78cf1d1b5b4bb9e2644c2bcc73f3f818f_1</pf-token>\\n          </credit-card-info>\\n        </credit-cards-info>\\n      </payment-info>\\n    </shopper-info>\\n  </shopper>\\n  <order>\\n    <ordering-shopper>\\n      <web-info>\\n        <ip>62.219.121.253</ip>\\n        <remote-host>www.merchant.com</remote-host>\\n        <user-agent>Mozilla/5.0 (Linux; X11)</user-agent>\\n      </web-info>\\n    </ordering-shopper>\\n    <cart>\\n      <cart-item>\\n        <sku>\\n          <sku-id>2152762</sku-id>\\n        </sku>\\n        <quantity>1</quantity>\\n      </cart-item>\\n    </cart>\\n    <expected-total-price>\\n      <amount>15.00</amount>\\n      <currency>USD</currency>\\n    </expected-total-price>\\n  </order>\\n</batch-order>\",\n      \"language\": \"xml\",\n      \"name\": \"Request: Create Order and New Shopper with Hosted Payment Fields token\"\n    },\n    {\n      \"code\": \"HTTP/ 1.1 201 Created\\n\\n<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"yes\\\" ?>\\n<batch-order xmlns=\\\"http://ws.plimus.com\\\">\\n  <shopper>\\n    <shopper-info>\\n      <username>141380680568216041830051511054973</username>\\n      <password>U1jB187</password>\\n      <shopper-contact-info>\\n        <title>Mr.</title>\\n        <first-name>John</first-name>\\n        <last-name>Doe</last-name>\\n        <email>jdoe@johndoeandsons.com</email>\\n        <company-name>JohnDoeAndSons</company-name>\\n        <address1>138 Market St</address1>\\n        <city>San Francisco</city>\\n        <state>CA</state>\\n        <zip>75654</zip>\\n        <country>us</country>\\n        <phone>14135556789</phone>\\n        <fax>14135556788</fax>\\n      </shopper-contact-info>\\n      <shipping-contact-info/>\\n      <invoice-contacts-info>\\n        <invoice-contact-info>\\n          <default>true</default>\\n          <title>Mr.</title>\\n          <first-name>John</first-name>\\n          <last-name>Doe</last-name>\\n          <email>jdoe@johndoeandsons.com</email>\\n          <company-name>JohnDoeAndSons</company-name>\\n          <address1>138 Market St</address1>\\n          <city>San Francisco</city>\\n          <state>CA</state>\\n          <zip>75654</zip>\\n          <country>us</country>\\n          <phone>14135556789</phone>\\n          <fax>14135556788</fax>\\n        </invoice-contact-info>\\n      </invoice-contacts-info>\\n      <payment-info>\\n        <credit-cards-info>\\n          <credit-card-info>\\n            <billing-contact-info>\\n              <first-name>John</first-name>\\n              <last-name>Doe</last-name>\\n              <address1>138 Market St</address1>\\n              <city>San Francisco</city>\\n              <state>CA</state>\\n              <zip>75654</zip>\\n              <country>us</country>\\n            </billing-contact-info>\\n            <credit-card>\\n              <card-last-four-digits>1111</card-last-four-digits>\\n              <card-type>VISA</card-type>\\n            </credit-card>\\n          </credit-card-info>\\n        </credit-cards-info>\\n        <ecps-info/>\\n        <balance/>\\n      </payment-info>\\n      <store-id>4677</store-id>\\n      <shopper-currency>USD</shopper-currency>\\n      <locale>en</locale>\\n    </shopper-info>\\n  </shopper>\\n  <order>\\n    <order-id>3950741</order-id>\\n    <ordering-shopper>\\n      <shopper-id>19576518</shopper-id>\\n    </ordering-shopper>\\n    <cart>\\n      <charged-currency>USD</charged-currency>\\n      <cart-item>\\n        <sku>\\n          <sku-id>2152762</sku-id>\\n          <sku-name>Example Product Example SKU</sku-name>\\n        </sku>\\n        <quantity>1</quantity>\\n        <item-sub-total>15.00</item-sub-total>\\n      </cart-item>\\n      <tax>0.00</tax>\\n      <tax-rate>0</tax-rate>\\n      <total-cart-cost>15.00</total-cart-cost>\\n    </cart>\\n    <post-sale-info>\\n      <invoices>\\n        <invoice>\\n          <invoice-id>1008856052</invoice-id>\\n          <url>https://sandbox.bluesnap.com/jsp/show_invoice.jsp?ref=AFD7311386AA2F3E284B0AA5582813B6</url>\\n          <financial-transactions>\\n            <financial-transaction>\\n              <status>Approved</status>\\n              <date-due>20-Oct-18</date-due>\\n              <date-created>20-Oct-18</date-created>\\n              <amount>15.00</amount>\\n              <currency>USD</currency>\\n              <soft-descriptor>BLS*JohnDoe</soft-descriptor>\\n              <payment-method>Credit Card</payment-method>\\n              <target-balance>PLIMUS_ACCOUNT</target-balance>\\n              <credit-card>\\n                <card-last-four-digits>1111</card-last-four-digits>\\n                <card-type>Visa</card-type>\\n                <expiration-month>9</expiration-month>\\n                <expiration-year>2019</expiration-year>\\n              </credit-card>\\n              <paypal-transaction-data/>\\n              <invoice-contact-info>\\n                <title>Mr.</title>\\n                <first-name>John</first-name>\\n                <last-name>Doe</last-name>\\n                <email>jdoe@johndoeandsons.com</email>\\n                <company-name>JohnDoeAndSons</company-name>\\n                <address1>138 Market St</address1>\\n                <city>San Francisco</city>\\n                <state>CA</state>\\n                <zip>75654</zip>\\n                <country>us</country>\\n                <phone>14135556789</phone>\\n                <fax>14135556788</fax>\\n              </invoice-contact-info>\\n              <skus>\\n                <sku>\\n                  <sku-id>2152762</sku-id>\\n                </sku>\\n              </skus>\\n            </financial-transaction>\\n          </financial-transactions>\\n        </invoice>\\n      </invoices>\\n    </post-sale-info>\\n    <fulfillment>\\n      <license-keys/>\\n      <download-links>\\n        <sku-download-link>\\n          <sku-id>2152762</sku-id>\\n          <sku-name>Example Product Example SKU</sku-name>\\n          <download-link>https://sandbox.bluesnap.com/jsp/dlapp.jsp?ref=1008856052C2152762C12563186</download-link>\\n        </sku-download-link>\\n      </download-links>\\n    </fulfillment>\\n  </order>\\n</batch-order>\",\n      \"language\": \"xml\",\n      \"name\": \"Response: Create Order and New Shopper - 201 Created\"\n    }\n  ]\n}\n[/block]\n<br>\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n##Step 3: Power tools: digital wallets, PayPal, and subscriptions\nNow that you know how to send a basic transaction, there are some more options you'll want to take advantage of in order to optimize payment processing according to your business needs. Here are a few key ones:\n\n###Digital wallets\nBlueSnap supports digital wallets, like MasterPass and Visa Checkout, that enable your shoppers to make fast and easy payments across all their devices. These wallets securely store the shopper's payment and shipping details and support all major credit and debit card types, including MasterCard, Visa, American Express, Discover, and more.\nFor more information, see:\n  * [MasterPass Guide](/v1.0/docs/masterpass)\n  * [Visa Checkout Guide](/v1.0/docs/visa-checkout)\n\n###PayPal\nMany merchants wish to offer shoppers the ability to pay seamlessly via PayPal, one of the most common payment methods. BlueSnap makes it easy to accept PayPal by simply connecting your PayPal and BlueSnap accounts and then using our dedicated API calls for PayPal transactions. See [PayPal](doc:paypal).\n\n###Subscriptions\nBlueSnap's APIs support end-to end subscription management, with support for multiple payment methods. You can take advantage of our award-winning Subscription Billing Engine to automate and optimize your subscription management, or retain full control with our merchant-managed subscription support.\nFor information about working with subscriptions in the Extended Payment API, see the [Subscriptions Guide](/v3.0/docs/subscriptions-guide).\n\n###More tutorials\nSee these tutorials for more tips about getting the most out of the Extended Payment API:\n  * [Enabling and Disabling Cards](https://support.bluesnap.com/docs/payment-method-setup#section-enable-disable-specific-cards)\n  * [Reporting API](doc:reporting-api) \n\n<br>\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n##Step 4: Testing tips\n\n###Test credit card numbers\nWhen you are creating test requests, it is recommended to the use the test credit card numbers we provide, which are designed to generate specific success or failure responses. See [Test credit card numbers](doc:test-credit-cards).\n\n###Locating transactions in the Merchant Console\nOnce you have sent a transaction and received a response, you can also go into the Merchant Console to verify that the order has appeared there.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"The order record will be found only if you sent the transaction request from the same account that you used in order to log in to the Merchant Console.\"\n}\n[/block]\n1. In the Merchant Console, go to **Transactions > Find a Transaction**.\n2. In the field next to **Reference Number**, enter the value from the `order-id` field in the response you received from the API. \n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/c9cb84d-FindTransaction.png\",\n        \"FindTransaction.png\",\n        838,\n        302,\n        \"#f1f1f1\"\n      ],\n      \"sizing\": \"full\"\n    }\n  ]\n}\n[/block]\n3. Click **Locate**, and then the order record will appear. It includes details such as the price, quantity, shopper information, options to resend the receipt or Instant Payment Notification, and more.\n\n<br>\n<a class=\"btn btn-primary\" href=\"/docs/prepare-for-launch\" role=\"button\">You're ready to Launch & Get Paid!</a>","excerpt":"Once you have securely collected your shopper's payment information using Hosted Payment Fields, you can use BlueSnap's API and your server-side code to start processing payments.","slug":"make-a-payment-extended-api","type":"basic","title":"Charge a Card (Extended Payment API)"}

Charge a Card (Extended Payment API)

Once you have securely collected your shopper's payment information using Hosted Payment Fields, you can use BlueSnap's API and your server-side code to start processing payments.

This tutorial will walk you through the essentials of using the Extended Payment API to process payments, including:

Note: This tutorial assumes that you are using BlueSnap's Hosted Payment Fields to collect shopper credit card information. If you don't yet have an app or form where you collect shopper payment details, go to this tutorial, where we'll walk you through setting up a simple checkout form.

Tips for getting started

BlueSnap account
You will need a BlueSnap account in order to get your API credentials and start sending requests from your server. If you don't have an account yet, you can sign up for one here.

Request format
To work with the BlueSnap API, you will send requests to the API from your server, using your own server-side language like Java, Ruby, Python, or another. The examples in this tutorial provide just the XML content of the request, which you will need to send as specified by your server-side language.

XSD files
You'll likely want BlueSnap's .xsd (schema) files once you start building your requests. You can download them here:
https://github.com/bluesnap/api-resources

Step 1: Setting up products & contracts (SKUs)

Because the Extended Payment API works based on the product catalog you have set up in BlueSnap, the first step is to create your products and contracts. There are two ways to do this: either directly in the BlueSnap Merchant Console, or via the Extended Payment API.

For instructions on setting up products and contracts in the Merchant Console, see:

If you prefer to set up your products and contracts (SKUs) via the API, use these web services:



Back to Top

Step 2: Make a credit card charge using Hosted Payment Fields

Now that you have a product catalog, you are ready to start processing payments.

In this tutorial, we are assuming that you need to process a one-time payment for a new shopper who has entered their credit card information in Hosted Payment Fields.

Information about other use cases

If you would like to learn more about subscription payments, see the Subscriptions Guide.

And if you would like to learn how to use Hosted Payment Fields with existing shoppers, go here.

To process the transaction for this shopper, we will use the Create Order and New Shopper service. This enables you to process the payment and set up a new shopper account at the same time. The credit card information from the Hosted Payment Fields will be stored in the new shopper account in BlueSnap. The created shopper can be used later for recurring payments or future orders.

Request and response examples

Below is an example of a Create Order and New Shopper request with a Hosted Payment Fields token in the pf-token field. This request should be sent to: services/2/batch/order-placement

After you send the request, if all goes well, you will receive a 201 Created response with content similar the the example response shown in the second tab.

The response includes:

  • order-id = a unique ID that BlueSnap assigns to this order
  • credit-card = details about the credit card info that the shopper entered into the Hosted Payment Fields

If an issue occurs, whether a validation error with the information you sent, an error from the processor, or another type of issue, you will instead receive an HTTP 400 or 500 response with a BlueSnap error code and description. For more information, see Error Handling Overview.

<batch-order xmlns="http://ws.plimus.com">
  <shopper>
    <web-info>
      <ip>62.219.121.253</ip>
    </web-info>
    <shopper-info>
      <shopper-currency>USD</shopper-currency>
      <store-id>4677</store-id>
      <locale>en</locale>
      <shopper-contact-info>
        <title>Mr.</title>
        <first-name>John</first-name>
        <last-name>Doe</last-name>
        <email>jdoe@johndoeandsons.com</email>
        <company-name>JohnDoeAndSons</company-name>
        <address1>138 Market St</address1>
        <city>San Francisco</city>
        <zip>75654</zip>
        <state>CA</state>
        <country>US</country>
        <phone>14135556789</phone>
        <fax>14135556788</fax>
      </shopper-contact-info>
      <payment-info>
        <credit-cards-info>
          <credit-card-info>
            <billing-contact-info>
              <first-name>John</first-name>
              <last-name>Doe</last-name>
              <address1>138 Market st</address1>
              <city>San Francisco</city>
              <zip>75654</zip>
              <state>CA</state>
              <country>US</country>
            </billing-contact-info>
            <pf-token>c7c69ff853ab784ef35a0c78ffec08e78cf1d1b5b4bb9e2644c2bcc73f3f818f_1</pf-token>
          </credit-card-info>
        </credit-cards-info>
      </payment-info>
    </shopper-info>
  </shopper>
  <order>
    <ordering-shopper>
      <web-info>
        <ip>62.219.121.253</ip>
        <remote-host>www.merchant.com</remote-host>
        <user-agent>Mozilla/5.0 (Linux; X11)</user-agent>
      </web-info>
    </ordering-shopper>
    <cart>
      <cart-item>
        <sku>
          <sku-id>2152762</sku-id>
        </sku>
        <quantity>1</quantity>
      </cart-item>
    </cart>
    <expected-total-price>
      <amount>15.00</amount>
      <currency>USD</currency>
    </expected-total-price>
  </order>
</batch-order>
HTTP/ 1.1 201 Created

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<batch-order xmlns="http://ws.plimus.com">
  <shopper>
    <shopper-info>
      <username>141380680568216041830051511054973</username>
      <password>U1jB187</password>
      <shopper-contact-info>
        <title>Mr.</title>
        <first-name>John</first-name>
        <last-name>Doe</last-name>
        <email>jdoe@johndoeandsons.com</email>
        <company-name>JohnDoeAndSons</company-name>
        <address1>138 Market St</address1>
        <city>San Francisco</city>
        <state>CA</state>
        <zip>75654</zip>
        <country>us</country>
        <phone>14135556789</phone>
        <fax>14135556788</fax>
      </shopper-contact-info>
      <shipping-contact-info/>
      <invoice-contacts-info>
        <invoice-contact-info>
          <default>true</default>
          <title>Mr.</title>
          <first-name>John</first-name>
          <last-name>Doe</last-name>
          <email>jdoe@johndoeandsons.com</email>
          <company-name>JohnDoeAndSons</company-name>
          <address1>138 Market St</address1>
          <city>San Francisco</city>
          <state>CA</state>
          <zip>75654</zip>
          <country>us</country>
          <phone>14135556789</phone>
          <fax>14135556788</fax>
        </invoice-contact-info>
      </invoice-contacts-info>
      <payment-info>
        <credit-cards-info>
          <credit-card-info>
            <billing-contact-info>
              <first-name>John</first-name>
              <last-name>Doe</last-name>
              <address1>138 Market St</address1>
              <city>San Francisco</city>
              <state>CA</state>
              <zip>75654</zip>
              <country>us</country>
            </billing-contact-info>
            <credit-card>
              <card-last-four-digits>1111</card-last-four-digits>
              <card-type>VISA</card-type>
            </credit-card>
          </credit-card-info>
        </credit-cards-info>
        <ecps-info/>
        <balance/>
      </payment-info>
      <store-id>4677</store-id>
      <shopper-currency>USD</shopper-currency>
      <locale>en</locale>
    </shopper-info>
  </shopper>
  <order>
    <order-id>3950741</order-id>
    <ordering-shopper>
      <shopper-id>19576518</shopper-id>
    </ordering-shopper>
    <cart>
      <charged-currency>USD</charged-currency>
      <cart-item>
        <sku>
          <sku-id>2152762</sku-id>
          <sku-name>Example Product Example SKU</sku-name>
        </sku>
        <quantity>1</quantity>
        <item-sub-total>15.00</item-sub-total>
      </cart-item>
      <tax>0.00</tax>
      <tax-rate>0</tax-rate>
      <total-cart-cost>15.00</total-cart-cost>
    </cart>
    <post-sale-info>
      <invoices>
        <invoice>
          <invoice-id>1008856052</invoice-id>
          <url>https://sandbox.bluesnap.com/jsp/show_invoice.jsp?ref=AFD7311386AA2F3E284B0AA5582813B6</url>
          <financial-transactions>
            <financial-transaction>
              <status>Approved</status>
              <date-due>20-Oct-18</date-due>
              <date-created>20-Oct-18</date-created>
              <amount>15.00</amount>
              <currency>USD</currency>
              <soft-descriptor>BLS*JohnDoe</soft-descriptor>
              <payment-method>Credit Card</payment-method>
              <target-balance>PLIMUS_ACCOUNT</target-balance>
              <credit-card>
                <card-last-four-digits>1111</card-last-four-digits>
                <card-type>Visa</card-type>
                <expiration-month>9</expiration-month>
                <expiration-year>2019</expiration-year>
              </credit-card>
              <paypal-transaction-data/>
              <invoice-contact-info>
                <title>Mr.</title>
                <first-name>John</first-name>
                <last-name>Doe</last-name>
                <email>jdoe@johndoeandsons.com</email>
                <company-name>JohnDoeAndSons</company-name>
                <address1>138 Market St</address1>
                <city>San Francisco</city>
                <state>CA</state>
                <zip>75654</zip>
                <country>us</country>
                <phone>14135556789</phone>
                <fax>14135556788</fax>
              </invoice-contact-info>
              <skus>
                <sku>
                  <sku-id>2152762</sku-id>
                </sku>
              </skus>
            </financial-transaction>
          </financial-transactions>
        </invoice>
      </invoices>
    </post-sale-info>
    <fulfillment>
      <license-keys/>
      <download-links>
        <sku-download-link>
          <sku-id>2152762</sku-id>
          <sku-name>Example Product Example SKU</sku-name>
          <download-link>https://sandbox.bluesnap.com/jsp/dlapp.jsp?ref=1008856052C2152762C12563186</download-link>
        </sku-download-link>
      </download-links>
    </fulfillment>
  </order>
</batch-order>



Back to Top

Step 3: Power tools: digital wallets, PayPal, and subscriptions

Now that you know how to send a basic transaction, there are some more options you'll want to take advantage of in order to optimize payment processing according to your business needs. Here are a few key ones:

Digital wallets

BlueSnap supports digital wallets, like MasterPass and Visa Checkout, that enable your shoppers to make fast and easy payments across all their devices. These wallets securely store the shopper's payment and shipping details and support all major credit and debit card types, including MasterCard, Visa, American Express, Discover, and more.
For more information, see:

PayPal

Many merchants wish to offer shoppers the ability to pay seamlessly via PayPal, one of the most common payment methods. BlueSnap makes it easy to accept PayPal by simply connecting your PayPal and BlueSnap accounts and then using our dedicated API calls for PayPal transactions. See PayPal.

Subscriptions

BlueSnap's APIs support end-to end subscription management, with support for multiple payment methods. You can take advantage of our award-winning Subscription Billing Engine to automate and optimize your subscription management, or retain full control with our merchant-managed subscription support.
For information about working with subscriptions in the Extended Payment API, see the Subscriptions Guide.

More tutorials

See these tutorials for more tips about getting the most out of the Extended Payment API:



Back to Top

Step 4: Testing tips

Test credit card numbers

When you are creating test requests, it is recommended to the use the test credit card numbers we provide, which are designed to generate specific success or failure responses. See Test credit card numbers.

Locating transactions in the Merchant Console

Once you have sent a transaction and received a response, you can also go into the Merchant Console to verify that the order has appeared there.

The order record will be found only if you sent the transaction request from the same account that you used in order to log in to the Merchant Console.

  1. In the Merchant Console, go to Transactions > Find a Transaction.
  2. In the field next to Reference Number, enter the value from the order-id field in the response you received from the API.
  1. Click Locate, and then the order record will appear. It includes details such as the price, quantity, shopper information, options to resend the receipt or Instant Payment Notification, and more.



You're ready to Launch & Get Paid!