diff --git a/.travis.yml b/.travis.yml index 1a294c20e9..03b5955c7e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,6 +5,7 @@ install: make env node_modules before_script: - echo "DATABASE_URL=dbname=gittip" | tee -a tests/local.env local.env - psql -U postgres -c 'CREATE DATABASE "gittip";' + - rm -rf tests/fixtures script: make test notifications: email: false diff --git a/Gruntfile.js b/Gruntfile.js index 45990dfec0..294281d818 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -100,7 +100,9 @@ module.exports = function(grunt) { if (!started && /Greetings, program! Welcome to port 8537\./.test(data)) { started = true; grunt.log.writeln('started.'); - done(); + setTimeout(done, 1000); + } else if (started && /Is something already running on port 8537/.test(data)) { + started = false; } else stdout.push(data); }); diff --git a/gittip/billing/__init__.py b/gittip/billing/__init__.py index 9f71296b51..acd22e71c0 100644 --- a/gittip/billing/__init__.py +++ b/gittip/billing/__init__.py @@ -32,18 +32,10 @@ def get_balanced_account(db, username, balanced_account_uri): , balanced_account_uri, (unicode, None) ) - # XXX Balanced requires an email address - # https://github.com/balanced/balanced-api/issues/20 - # quote to work around https://github.com/gittip/www.gittip.com/issues/781 - email_address = '{}@gittip.com'.format(quote(username)) - - if balanced_account_uri is None: - try: - account = \ - balanced.Account.query.filter(email_address=email_address).one() - except balanced.exc.NoResultFound: - account = balanced.Account(email_address=email_address).save() + customer = balanced.Customer(meta={ + 'username': username, + }).save() BALANCED_ACCOUNT = """\ UPDATE participants @@ -51,12 +43,10 @@ def get_balanced_account(db, username, balanced_account_uri): WHERE username=%s """ - db.run(BALANCED_ACCOUNT, (account.uri, username)) - account.meta['username'] = username - account.save() # HTTP call under here + db.run(BALANCED_ACCOUNT, (customer.href, username)) else: - account = balanced.Account.find(balanced_account_uri) - return account + customer = balanced.Customer.fetch(balanced_account_uri) + return customer def associate(db, thing, username, balanced_account_uri, balanced_thing_uri): @@ -71,33 +61,35 @@ def associate(db, thing, username, balanced_account_uri, balanced_thing_uri): """ typecheck( username, unicode - , balanced_account_uri, (unicode, None, balanced.Account) - , balanced_thing_uri, unicode - , thing, unicode + , balanced_account_uri, (unicode, None, balanced.Customer) + , balanced_thing_uri, unicode + , thing, unicode ) - if isinstance(balanced_account_uri, balanced.Account): + if isinstance(balanced_account_uri, balanced.Customer): balanced_account = balanced_account_uri else: balanced_account = get_balanced_account( db , username , balanced_account_uri ) - invalidate_on_balanced(thing, balanced_account.uri) + invalidate_on_balanced(thing, balanced_account.href) SQL = "UPDATE participants SET last_%s_result=%%s WHERE username=%%s" + try: + if thing == "credit card": + SQL %= "bill" + obj = balanced.Card.fetch(balanced_thing_uri) + #add = balanced_account.add_card - if thing == "credit card": - add = balanced_account.add_card - SQL %= "bill" - else: - assert thing == "bank account", thing # sanity check - add = balanced_account.add_bank_account - SQL %= "ach" + else: + assert thing == "bank account", thing # sanity check + SQL %= "ach" + obj = balanced.BankAccount.fetch(balanced_thing_uri) + #add = balanced_account.add_bank_account - try: - add(balanced_thing_uri) + obj.associate_to_customer(balanced_account) except balanced.exc.HTTPError as err: - error = err.message.decode('UTF-8') # XXX UTF-8? + error = err.message.message.decode('UTF-8') # XXX UTF-8? else: error = '' typecheck(error, unicode) @@ -116,21 +108,19 @@ def invalidate_on_balanced(thing, balanced_account_uri): """ assert thing in ("credit card", "bank account") - typecheck(balanced_account_uri, unicode) + typecheck(balanced_account_uri, (str, unicode)) - account = balanced.Account.find(balanced_account_uri) - things = account.cards if thing == "credit card" else account.bank_accounts + customer = balanced.Customer.fetch(balanced_account_uri) + things = customer.cards if thing == "credit card" else customer.bank_accounts for _thing in things: - if _thing.is_valid: - _thing.is_valid = False - _thing.save() + _thing.unstore() def clear(db, thing, username, balanced_account_uri): typecheck( thing, unicode , username, unicode - , balanced_account_uri, unicode + , balanced_account_uri, (unicode, str) ) assert thing in ("credit card", "bank account"), thing invalidate_on_balanced(thing, balanced_account_uri) @@ -209,9 +199,25 @@ class BalancedThing(object): thing_type = None - _account = None # underlying balanced.Account object + _customer = None # underlying balanced.Customer object _thing = None # underlying balanced.{BankAccount,Card} object + def _get(self, name, default=""): + """Given a name, return a unicode. + """ + out = None + if self._customer is not None and self._thing is not None: + out = self._thing + for val in name.split('.'): + if type(out) is dict: + out = out.get(val) + else: + out = getattr(out, val) + if out is None: + break + if out is None: + out = default + return out def __init__(self, balanced_account_uri): """Given a Balanced account_uri, load data from Balanced. @@ -222,10 +228,10 @@ def __init__(self, balanced_account_uri): # XXX Indexing is borken. See: # https://github.com/balanced/balanced-python/issues/10 - self._account = balanced.Account.find(balanced_account_uri) + self._customer = balanced.Customer.fetch(balanced_account_uri) - things = getattr(self._account, self.thing_type+'s').all() - things = [thing for thing in things if thing.is_valid] + things = getattr(self._customer, self.thing_type+'s')\ + .filter(is_valid=True).all() nvalid = len(things) if nvalid == 0: @@ -237,6 +243,10 @@ def __init__(self, balanced_account_uri): msg %= (balanced_account_uri, len(things), self.thing_type) raise RuntimeError(msg) + @property + def is_setup(self): + return self._thing is not None + class BalancedCard(BalancedThing): """This is a dict-like wrapper around a Balanced Account. @@ -244,49 +254,27 @@ class BalancedCard(BalancedThing): thing_type = 'card' - def _get(self, name, default=""): - """Given a name, return a unicode. - """ - out = None - if self._account is not None: - try: - out = getattr(self._thing, name, None) - except IndexError: # no cards associated - pass - if out is None: - out = default - return out - def __getitem__(self, name): """Given a name, return a string. """ + if name == 'id': - out = self._account.uri if self._account is not None else None - elif name == 'last4': - out = self._get('last_four') - if out: - out = "************" + unicode(out) - elif name == 'address_2': - out = self._get('meta', {}).get('address_2', '') - - elif name == 'country': - out = self._get('meta', {}).get('country', '') - - elif name == 'city_town': - out = self._get('meta', {}).get('city_town', '') - - elif name == 'state': - out = self._get('region') - if not out: - # There's a bug in balanced where the region does get persisted - # but doesn't make it back out. This is a workaround until such - # time as that's fixed. - out = self._get('meta', {}).get('region', '') + out = self._customer.href if self._customer is not None else None else: - name = { 'address_1': 'street_address' - , 'zip': 'postal_code' - }.get(name, name) + name = { + 'address_1': 'address.line1', + 'address_2': 'meta.address_2', + 'country': 'meta.country', + 'city_town': 'meta.city_town', + 'zip': 'address.postal_code', + # gittip is saving the state in the meta field + # for compatibility with legacy customers + 'state': 'meta.region', + 'last4': 'number', + 'last_four': 'number', + }.get(name, name) out = self._get(name) + return out @@ -298,8 +286,8 @@ class BalancedBankAccount(BalancedThing): def __getitem__(self, item): mapper = { - 'id': 'uri', - 'account_uri': 'account.uri', + 'id': 'href', + 'customer_href': 'customer.href', 'bank_name': 'bank_name', 'last_four': 'last_four', } @@ -308,20 +296,4 @@ def __getitem__(self, item): if not self._thing: return None - - # Do goofiness to support 'account.uri' in mapper. - # ================================================ - # An account.uri access unrolls to: - # _item = getattr(self._thing, 'account') - # _item = getattr(_item, 'uri') - - _item = self._thing - for val in mapper[item].split('.'): - _item = getattr(_item, val) - - - return _item - - @property - def is_setup(self): - return self._thing is not None + return self._get(mapper[item]) diff --git a/gittip/billing/payday.py b/gittip/billing/payday.py index 92c6e6fb29..4025b5e3d7 100644 --- a/gittip/billing/payday.py +++ b/gittip/billing/payday.py @@ -580,7 +580,6 @@ def ach_credit(self, ts_start, participant, tips, total): assert balance is not None, balance # sanity check amount = balance - total - # Do some last-minute checks. # =========================== @@ -619,19 +618,20 @@ def ach_credit(self, ts_start, participant, tips, total): # =========================== try: - - balanced_account_uri = participant.balanced_account_uri - if balanced_account_uri is None: - log("%s has no balanced_account_uri." + balanced_customer_href = participant.balanced_account_uri + if balanced_customer_href is None: + log("%s has no balanced_customer_href." % participant.username) return # not in Balanced - account = balanced.Account.find(balanced_account_uri) - if 'merchant' not in account.roles: + customer = balanced.Customer.fetch(balanced_customer_href) + if customer.merchant_status == 'underwritten': log("%s is not a merchant." % participant.username) return # not a merchant - account.credit(cents) + customer.bank_accounts.one()\ + .credit(amount=cents, + description=participant.username) error = "" log(msg + "succeeded.") @@ -642,11 +642,11 @@ def ach_credit(self, ts_start, participant, tips, total): self.record_credit(credit_amount, fee, error, participant.username) - def charge_on_balanced(self, username, balanced_account_uri, amount): + def charge_on_balanced(self, username, balanced_customer_href, amount): """We have a purported balanced_account_uri. Try to use it. """ typecheck( username, unicode - , balanced_account_uri, unicode + , balanced_customer_href, unicode , amount, Decimal ) @@ -654,12 +654,12 @@ def charge_on_balanced(self, username, balanced_account_uri, amount): msg = msg % (username, "Balanced") try: - customer = balanced.Account.find(balanced_account_uri) - customer.debit(cents, description=username) + customer = balanced.Customer.fetch(balanced_customer_href) + customer.cards.one().debit(amount=cents, description=username) log(msg + "succeeded.") error = "" except balanced.exc.HTTPError as err: - error = err.message + error = err.message.message log(msg + "failed: %s" % error) return charge_amount, fee, error diff --git a/js/gittip/payments.js b/js/gittip/payments.js index e88585c5ab..3ba8c4332c 100644 --- a/js/gittip/payments.js +++ b/js/gittip/payments.js @@ -56,9 +56,8 @@ Gittip.payments.ba.init = function(balanced_uri, participantId) { $('#payout').submit(Gittip.payments.ba.submit); // Lazily depend on Balanced. - var balanced_js = "https://js.balancedpayments.com/v1/balanced.js"; + var balanced_js = "https://js.balancedpayments.com/1.1/balanced.min.js"; jQuery.getScript(balanced_js, function() { - balanced.init(balanced_uri); Gittip.havePayouts = true; $('input[type!="hidden"]').eq(0).focus(); }); @@ -73,22 +72,18 @@ Gittip.payments.ba.submit = function (e) { var bankAccount = { name: $('#account_name').val(), account_number: $('#account_number').val(), - bank_code: $('#routing_number').val() + routing_number: $('#routing_number').val() }; - var dobs = [ - $('#dob-year').val(), - $('#dob-month').val(), - $('#dob-day').val() - ]; - Gittip.payments.ba.merchantData = { - type: 'person', // Oooh, may need to vary this some day? + //type: 'person', // Oooh, may need to vary this some day? street_address: $('#address_1').val(), postal_code: $('#zip').val(), phone_number: $('#phone_number').val(), region: $('#state').val(), - dob: dobs.join('-'), + dob_month: $('#dob-month').val(), + dob_year: $('#dob-year').val(), + dob_day: $('#dob-day').val(), name: $('#name').val() }; var errors = []; @@ -124,25 +119,12 @@ Gittip.payments.ba.submit = function (e) { } - // Validate date of birth. - // ======================= - // This might not be on the page if they've already verified their - // identity. - - if (dobs[0] !== undefined) { - var d = new Date(dobs[0], dobs[1] - 1, dobs[2]); - // (1900, 2, 31) gives 3 march :P - if (d.getMonth() !== dobs[1] - 1) - errors.push('Invalid date of birth.'); - } - - // Validate routing number. // ======================== var $rn = $('#routing_number'); - if (bankAccount.bank_code) { - if (!balanced.bankAccount.validateRoutingNumber(bankAccount.bank_code)) { + if (bankAccount.routing_number) { + if (!balanced.bankAccount.validateRoutingNumber(bankAccount.routing_number)) { $rn.closest('div').addClass('error'); errors.push("That routing number is invalid."); } else { @@ -163,7 +145,7 @@ Gittip.payments.ba.submit = function (e) { Gittip.payments.ba.handleResponse = function (response) { console.log('bank account response', response); - if (response.status != 201) { + if (response.status_code !== 201) { $('button#save').text('Save'); var msg = response.status.toString() + " " + response.error.description; jQuery.ajax( @@ -201,15 +183,8 @@ Gittip.payments.ba.handleResponse = function (response) { $('#delete').show(); var messages = [data.error]; if (data.problem == 'More Info Needed') { - var redirect_uri = data.redirect_uri; - for (var key in Gittip.payments.ba.merchantData) { - redirect_uri += 'merchant[' + encodeURIComponent(key) + ']' - + '=' + encodeURIComponent((Gittip.payments.ba.merchantData[key])) + '&'; - } messages = [ "Sorry, we couldn't verify your identity. Please " - + "check, correct, and resubmit your details, or " - + "step through our payment processor's escalation process." + + "check, correct, and resubmit your details." ]; } Gittip.forms.showFeedback(data.problem, messages); @@ -217,7 +192,7 @@ Gittip.payments.ba.handleResponse = function (response) { } var detailsToSubmit = Gittip.payments.ba.merchantData; - detailsToSubmit.bank_account_uri = response.data.uri; + detailsToSubmit.bank_account_uri = response.bank_accounts[0].href; Gittip.forms.submit( "/bank-account.json" , detailsToSubmit @@ -238,9 +213,8 @@ Gittip.payments.cc.init = function(balanced_uri, participantId) { $('form#payment').submit(Gittip.payments.cc.submit); // Lazily depend on Balanced. - var balanced_js = "https://js.balancedpayments.com/v1/balanced.js"; + var balanced_js = "https://js.balancedpayments.com/1.1/balanced.min.js"; jQuery.getScript(balanced_js, function() { - balanced.init(balanced_uri); Gittip.havePayments = true; $('input[type!="hidden"]').eq(0).focus(); }); @@ -273,13 +247,11 @@ Gittip.payments.cc.submit = function(e) { var credit_card = {}; // holds CC info - credit_card.card_number = val('card_number'); - if (credit_card.card_number.search('[*]') !== -1) - credit_card.card_number = ''; // don't send if it's the **** version - credit_card.security_code = val('cvv'); + credit_card.number = val('card_number'); + if (credit_card.number.search('[*]') !== -1) + credit_card.number = ''; // don't send if it's the **** version + credit_card.cvv = val('cvv'); credit_card.name = val('name'); - credit_card.street_address = val('address_1'); - credit_card.region = val('state'); country = $('select[id="country"]').val(); credit_card.meta = { 'address_2': val('address_2') , 'region': credit_card.region // workaround @@ -287,12 +259,15 @@ Gittip.payments.cc.submit = function(e) { , 'country': country }; - credit_card.postal_code = val('zip'); + credit_card.address = { 'postal_code': val('zip') + , 'line1': val('address_1') + , 'state': val('state') + }; credit_card.expiration_month = val('expiration_month'); credit_card.expiration_year = val('expiration_year'); - if (!balanced.card.isCardNumberValid(credit_card.card_number)) { + if (!balanced.card.isCardNumberValid(credit_card.number)) { $('button#save').text('Save'); Gittip.forms.showFeedback(null, ["Your card number is bad."]); } else if (!balanced.card.isExpiryValid( credit_card.expiration_month @@ -300,8 +275,8 @@ Gittip.payments.cc.submit = function(e) { )) { $('button#save').text('Save'); Gittip.forms.showFeedback(null, ["Your expiration date is bad."]); - } else if (!balanced.card.isSecurityCodeValid( credit_card.card_number - , credit_card.security_code + } else if (!balanced.card.isSecurityCodeValid( credit_card.number + , credit_card.cvv )) { $('button#save').text('Save'); Gittip.forms.showFeedback(null, ["Your CVV is bad."]); @@ -329,7 +304,7 @@ Gittip.payments.cc.handleResponse = function(response) { * */ - if (response.status !== 201) { // The request to create the token failed. Store the failure message in + if (response.status_code !== 201) { // The request to create the token failed. Store the failure message in // our db. $('button#save').text('Save'); var msg = response.status.toString() + " " + response.error.description; @@ -374,7 +349,7 @@ Gittip.payments.cc.handleResponse = function(response) { } Gittip.forms.submit( "/credit-card.json" - , {card_uri: response.data.uri} + , {card_uri: response.cards[0].href} , success , detailedFeedback ); diff --git a/requirements.txt b/requirements.txt index 233ab08acb..b0810a3deb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -28,7 +28,7 @@ ./vendor/iso8601-0.1.4.tar.gz ./vendor/mock-0.8.0.tar.gz -./vendor/balanced-0.11.5.tar.gz +./vendor/balanced-1.0.1beta2.tar.gz ./vendor/python-bitcoinaddress-0.2.2.tar.gz ./vendor/pytz-2012j.tar.gz @@ -37,3 +37,5 @@ ./vendor/libsass-0.2.4.tar.gz ./vendor/honcho-0.5.0.tar.gz + +./vendor/vcrpy-0.6.0.tar.gz diff --git a/tests/fixtures/TestBalancedBankAccount.yml b/tests/fixtures/TestBalancedBankAccount.yml new file mode 100644 index 0000000000..dcdaf81938 --- /dev/null +++ b/tests/fixtures/TestBalancedBankAccount.yml @@ -0,0 +1,533 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:47:39.105011Z\",\n \"secret\": + \"ak-test-MEH6lv8UtGecQVmqF8Ees7xcFPunV7zA\",\n \"href\": \"/api_keys/AK72UkKnSuRQW1Jksh3nwQjw\",\n + \ \"meta\": {},\n \"id\": \"AK72UkKnSuRQW1Jksh3nwQjw\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:39 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMe78251e898dd11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBZClVQBgZZVloOCgJXWVAPHRdUSBEUV1dXBwNRUw8EAA4GAQoGCkMdQVUDCEVSPA==\r\n", + "Content-Length: 289\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlNxsrzs2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4Ck+wRnoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:39 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe7cae63898dd11e386b3026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:40.012394Z\",\n \"created_at\": \"2014-02-18T20:47:39.764675Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU73EifUas51XDzEWdhaLDy8\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU73EifUas51XDzEWdhaLDy8\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:40 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMe7e9594298dd11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VBVpdBwNRVVIBCwJQU1MOHRdUSBEUVVoABVBUAA8ECQ8NBQNTWkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:41.110814Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:41.110817Z\",\n \"id\": \"CC759PaA8zlH4Yw5dLrdazlC\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC759PaA8zlH4Yw5dLrdazlC\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:41 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe859173298dd11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVILWABYAlJSAg9SUlYBBwdIQVEACRtGRlNTBgAHVgRWVQtWXAtVUABHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:41.985185Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:41.985187Z\",\n \"href\": \"/bank_accounts/BA768WYHTZJgJOcK0kSJdCe2\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA768WYHTZJgJOcK0kSJdCe2\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:42 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe8f212a298dd11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAQdUVVMMAgRRWVMFCA9eVx0WAlpeT0ISUAoDXgpRAAEAWFJQA1FUVhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + host: api.balancedpayments.com + method: GET + path: /bank_accounts/BA768WYHTZJgJOcK0kSJdCe2 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTTW+jMBS891cgzm3ADp+5pavdrdKqlbaVqu1qhYxtWivERMasEkX899ourIGk + Unrx4c0wzHvz3uHCcdwc8XWGMK4aLmt34fxRRcc5mFfBomok468ZbzY5FQp3AQR+AJMEupc9yWhw + tKEaf/5+d/fo/Fj++vngXC/vb537pWV2P8rkfmvI+I3itdK3jF7mptpQ4azQ3kIl42ttsTen7OGm + lpqoqrwpy97RpK/sHxWsYBhJVvGO2nlv/zeBEc+woIRJxZCioRYRFElKMqQRF/oguPLhFUieoL8I + 4kUAZmkSgiR8sVYL1RMVW8G4+YYgHIUgICkhcwQwiRFOYUjCOEipP/cTDBVeIBjj0I8QLXIfpzkE + EQBFkaZRaoWbLTnHSzzw8iZooU14o6i962UcJc+/b55eVq+rB3zrrx9X5BsdxLqhEulx2xn18dlt + 2O12cD5Hg4QJEbSexsTk/jgilaf63VFyugyOy7VUjR+Xt5UCygxX5ARotlrsh+jJ3AnNTewFKmub + OyN6bJ/OySi16v2rN8Udb+f4rmYfi6WnMo3hMEplxkjr9eSPBZwoDemjvT5TfHgKdRfb1Kw9Ktfr + L6z2Jk57oD0tYkZ6pqeO+7V+zSxH3Uwdfjqq1lWBtRftOyvFApQBBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:42 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe992cecc98dd11e3a977026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 498\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "bank_name": "WELLS FARGO BANK NA", "account_type": + "checking", "name": "Homer Jay", "links": {"customer": "/customers/CU73EifUas51XDzEWdhaLDy8"}, + "can_credit": true, "created_at": "2014-02-18T20:47:41.985185Z", "address": + {"city": null, "line2": null, "line1": null, "state": null, "postal_code": null, + "country_code": null}, "updated_at": "2014-02-18T20:47:41.985187Z", "meta": + {}, "account_number": "xxx233a", "fingerprint": "dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969", + "can_debit": false, "id": "BA768WYHTZJgJOcK0kSJdCe2"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 581] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /bank_accounts/BA768WYHTZJgJOcK0kSJdCe2 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTW2+bMBh9769APLcBm3ve0jZblUattLbK1mpCxjaNFQKRMVNoxH+fTaBcmk7d + ix98Pg7n8vlwpml6hNJNiDDOilTk+lR7kZeadqhPCfOsECx9DdNiG1EucR1AYNrQ96F+3g7VHCna + UoWv5svlg/Zt9uP7vXY5u7vV7mbdZPOjUJS7ehivKd5I/m6ipbnJtpRrC1R2UMLSjZLYipPycJEL + Nai4rp48a87iJ5Q74Of123xF1mh5XfrvBCO34R/KWcwwEixLJUFaJEnjqHq3hlEaYk4JE3JC8IJ2 + CKdIUBIihejQBPaFCS+A/wjNqe1NbTAJfAf4znNnIJZOKd9xltbfEIRdB9gkIMRCABMP4QA6xPHs + gJqW6WMo8RhBDzumi2gcmTiIIHABiOMgcIOOuNiRf2qBk8A1Pc/taVlzGisRxmABjMuZ5/qrXzeP + z4vXxT2+NTcPC3JFe2VvqUCqhC6jttRuR/b7PbQs1OudEE7zcXlMlE3ubaqyItmy/N2xjtE1+Hid + C2n84/Uuk0AS4oycAOtd52UfPdk7oVFde4ySvOudERXbpznVTJU8fyvxyk1vZ4evbXJcLJXKuIbD + oJUJI5XRDh8zGTH1xwd7/UXy/lPIm9rGYntPzWjfXW6MlLZAdZqkjvSLmprZ//NbZzlwM1b4aVSV + Lgurzqq/2/cLiBcFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:43 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe9d7ac2c98dd11e3b00f026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 527\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + host: api.balancedpayments.com + method: GET + path: /customers/CU73EifUas51XDzEWdhaLDy8 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy26DMBC85ysQ5yY8QvO6tr312KpVqwptbEdYBTuyTaU04t+7ToE4QMKFw+7s + 2Dsz+DjxPJ+U2siCKe1vvE8seN7x9MWWgIJhVZR5ftfUci6+LbQBIUzLUpEuEOuUacMFGC5FzVKT + VC1buadgGE3BIMKPwyiZhvE0Wr3E4SZZbpJwFkbxfJ18+O0IUezWyHw9Wy6SxfLeGaFymxZSmKy7 + DKf22IfX5fyJ715B30fvj79PbzSD58fD6nzmPpOiu6CfKbaz40GrYDDOhEKTDIRJtQFTWiF9IacF + GJKdjyuYASvxWSe7wYGB6i4AlCqmO34Qbg4dILqBxrF4uBz1y/Z63Y2RZC+xkadE0oEmkaUw6uB2 + e4ZvS4330DodypbWIs1Bm6S7JiuA570iv4hVhWd92ZTYTZ2IngM+a4PqB6jaKbU6OLb21f2qNsIZ + JKBomsmcngxzDHeGOa0CB/efV4djC+I7BXISaYTmEtpjomzLxyhqzMCs+09e0cH5ca+IMbKA1UH3 + ZTQKhAZiH4QRggtkbwn88Uox5kUDGpj+wdcO8pErKNbAegxS0f/38kYUakxvFp8vOupeA8I0V5Pq + D9XE7k6nBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:43 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMea4fea3e98dd11e3b90b026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 465\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + host: api.balancedpayments.com + method: GET + path: /customers/CU73EifUas51XDzEWdhaLDy8/bank_accounts?is_valid=True&limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA7VUTW/iMBC991dEOfS0BTvkEwmtaMtuRVErbanY7WoVGdspFiFBjoNgEf99bZOQ + j5ZVL71EYt545s17w+wvDMOco2QZIozTPBGZ2Td+y6Bh7PVXwjzNBUtewyRfzSmXuAktCGzL9y3z + S5mkayRoRRU+G00mT8a34Y/vj8b18OHeeBhWmUWjUOzWOhkvKF7K+lVGWeYuXVFujNGugmKWLBXF + kpykh/NMqERV6+bZ641Y9IwyB/68/TuakQWa3O78U4HWtOGGchYxjARLE1kgyeO4mOhwGg2jJMSc + EiZkhuA5rRBOkaAkRAoxLQDtK2BdQX9qgb7t9W3YCXwH+s5LNUAkJ6V8zVmi3xCEXQfaJCCkhyAm + HsKB5RDHswMKesDHlsQjZHnYAS6i0RzgYG5BF8IoCgI3qArna/JfLlYncIHnuTUuC04jRaLbWIDu + 9dBz/dmvu+nL+HX8iO/B8mlMbmjN7BUVSJlQaVSaWu3Idru1ej1U850QTrO2eUzsCt1LVaVF0mXZ + 7mhHKwzfhjMhB38bXqcSiEOckndAvet8V0ff9Z3QubY9QnFW+c6Iku2sTrrSQX7/KPJmqZYOmzHK + tPPdcm+z7rmtbfrylWXhBsWMDKZyBy9jtmJiAMFlGkUZFQNQKG0mdKsaqFU+ameefP6slpqL7AlB + 0fHISUbKwJrTDUtz5X6NmEilQ+pd8Sxi/LPEkeLrbVW7VbsgzdvX0XYrku3/xL7xF+kwcugWuQX1 + Jl7/1bgxH6xdP0tZaWyzRf3s1XapRbTMOpwpos/aB0kdb+AZOmcn1mI25um2OJ59ejCVaxeHf3xT + 5JSlBgAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:44 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMea800d9098dd11e3a846026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 633\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + host: api.balancedpayments.com + method: GET + path: /customers/CU73EifUas51XDzEWdhaLDy8/bank_accounts?is_valid=True&limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA7VUTW/iMBC991dEOfS0BTvkEwmtaMtuRVErbanY7WoVGdspFiFBjoNgEf99bZOQ + j5ZVL71EYt545s17w+wvDMOco2QZIozTPBGZ2Td+y6Bh7PVXwjzNBUtewyRfzSmXuAktCGzL9y3z + S5mkayRoRRU+G00mT8a34Y/vj8b18OHeeBhWmUWjUOzWOhkvKF7K+lVGWeYuXVFujNGugmKWLBXF + kpykh/NMqERV6+bZ641Y9IwyB/68/TuakQWa3O78U4HWtOGGchYxjARLE1kgyeO4mOhwGg2jJMSc + EiZkhuA5rRBOkaAkRAoxLQDtK2BdQX9qgb7t9W3YCXwH+s5LNUAkJ6V8zVmi3xCEXQfaJCCkhyAm + HsKB5RDHswMKesDHlsQjZHnYAS6i0RzgYG5BF8IoCgI3qArna/JfLlYncIHnuTUuC04jRaLbWIDu + 9dBz/dmvu+nL+HX8iO/B8mlMbmjN7BUVSJlQaVSaWu3Idru1ej1U850QTrO2eUzsCt1LVaVF0mXZ + 7mhHKwzfhjMhB38bXqcSiEOckndAvet8V0ff9Z3QubY9QnFW+c6Iku2sTrrSQX7/KPJmqZYOmzHK + tPPdcm+z7rmtbfrylWXhBsWMDKZyBy9jtmJiAMFlGkUZFQNQKG0mdKsaqFU+ameefP6slpqL7AlB + 0fHISUbKwJrTDUtz5X6NmEilQ+pd8Sxi/LPEkeLrbVW7VbsgzdvX0XYrku3/xL7xF+kwcugWuQX1 + Jl7/1bgxH6xdP0tZaWyzRf3s1XapRbTMOpwpos/aB0kdb+AZOmcn1mI25um2OJ59ejCVaxeHf3xT + 5JSlBgAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:44 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMeaa75b3e98dd11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 633\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + host: api.balancedpayments.com + method: GET + path: /customers/CU73EifUas51XDzEWdhaLDy8 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy26DMBC85ysQ5yY8QvO6tr312KpVqwptbEdYBTuyTaU04t+7ToE4QMKFw+7s + 2Dsz+DjxPJ+U2siCKe1vvE8seN7x9MWWgIJhVZR5ftfUci6+LbQBIUzLUpEuEOuUacMFGC5FzVKT + VC1buadgGE3BIMKPwyiZhvE0Wr3E4SZZbpJwFkbxfJ18+O0IUezWyHw9Wy6SxfLeGaFymxZSmKy7 + DKf22IfX5fyJ715B30fvj79PbzSD58fD6nzmPpOiu6CfKbaz40GrYDDOhEKTDIRJtQFTWiF9IacF + GJKdjyuYASvxWSe7wYGB6i4AlCqmO34Qbg4dILqBxrF4uBz1y/Z63Y2RZC+xkadE0oEmkaUw6uB2 + e4ZvS4330DodypbWIs1Bm6S7JiuA570iv4hVhWd92ZTYTZ2IngM+a4PqB6jaKbU6OLb21f2qNsIZ + JKBomsmcngxzDHeGOa0CB/efV4djC+I7BXISaYTmEtpjomzLxyhqzMCs+09e0cH5ca+IMbKA1UH3 + ZTQKhAZiH4QRggtkbwn88Uox5kUDGpj+wdcO8pErKNbAegxS0f/38kYUakxvFp8vOupeA8I0V5Pq + D9XE7k6nBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:44 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMeacc60f098dd11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 465\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:45.026115Z\",\n \"created_at\": \"2014-02-18T20:47:44.850924Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU79nahYjTqcUbv6ZRCI7ufK\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU79nahYjTqcUbv6ZRCI7ufK\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:45 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMeaef261c98dd11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAFpQAgZYX1IAAwZUUlIEHRdUSBEUBVEAVQEHUAwADQ0HClJSWEMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:46.194045Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:46.194048Z\",\n \"id\": \"CC7aSmy9VryeXNL2mCTyvHP2\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7aSmy9VryeXNL2mCTyvHP2\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:46 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMeb5f03f698dd11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHV0LUAhQClBUBA9RUlYOBgRIQVEACRtGRlcOVgMCU1UABw8ADllVCgFHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1NRUg2bHY4VXRHZWNRVm1xRjhFZXM3eGNGUHVuVjd6QTpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:47.087795Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:47.087799Z\",\n \"href\": \"/bank_accounts/BA7bSXpKCSIxSejdHU8zuHi8\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7bSXpKCSIxSejdHU8zuHi8\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:47 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMec06f7dc98dd11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwFWU1QPAgJXV1YGCAFRXB0WAlpeT0ISUw0GXltRUwBRXQVXUwRVARQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} diff --git a/tests/fixtures/TestBalancedCard.yml b/tests/fixtures/TestBalancedCard.yml new file mode 100644 index 0000000000..c922f04dd1 --- /dev/null +++ b/tests/fixtures/TestBalancedCard.yml @@ -0,0 +1,823 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:47:27.993153Z\",\n \"secret\": + \"ak-test-1jBMk8Em97UiSA0kAs4G9RKBnUnEdP9Po\",\n \"href\": \"/api_keys/AK6QpwajOe0aIQhTozAII6ZE\",\n + \ \"meta\": {},\n \"id\": \"AK6QpwajOe0aIQhTozAII6ZE\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:28 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMe0e400ca98dd11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBSAVNSBAdYUlIJBQJVUVsDHRdUSBEUUQFWB1JRBFoDCVwHAApVWEMdQVUDCEVSPA==\r\n", + "Content-Length: 290\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlNxsrzs2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4Ck+wRnoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:28 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe129770e98dd11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:28.844181Z\",\n \"created_at\": \"2014-02-18T20:47:28.651859Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU6R9CoLPG3SeVOyi5n0gqlh\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU6R9CoLPG3SeVOyi5n0gqlh\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:28 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMe1499d7298dd11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBVFSAgBYVVQPBARSVFoFHRdUSBEUUlQFUAQCU10HXFsHBVVRDkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:29.935119Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:29.935121Z\",\n \"id\": \"CC6SzOglTENtEAda7xuIjjyG\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC6SzOglTENtEAda7xuIjjyG\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:30 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe1a46b4e98dd11e3aed402a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHV0JUAJYCltQAAVQVFQOCwZIQVEACRtGRgdQUlZWV1FVBghVXQxRBgBHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:30.663549Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:30.663552Z\",\n \"href\": \"/bank_accounts/BA6Tpvk1CV4byX8jCoVzMweO\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA6Tpvk1CV4byX8jCoVzMweO\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:30 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe248ee4498dd11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAgJQV1AACgdXU1EBAQ9SSBEHC1pKQ0AGUwFTCw8EVlJdCVYBVldURhoXBwcPS1Zt\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /cards/CC6SzOglTENtEAda7xuIjjyG + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA41UTY/bIBC9769AnLuJjRMnzm27WlU9tD3sqodWlUUMJGxtiACnSSP/9zL4MxtV + rQ+W4M1j5s0buNwhhAtqmMUb9N0vELqEP2wfj3lFXbH3kKrL8l0PlFL9hPg+EmJr63TFTRfaRTYD + RdGKvz2Gnw7SUCe1ys+cApVEJBoo9Ghz6wznbqgCn7nFQ4C0+ZEbKSRnnutMzQeoMJw6znLqPIJJ + FC/uI3Ifr19ItFmsNiSbZckyjrNv42mg1nBbl0C5krs1VEEG/FVaOhJUXW2DYHyafLH/xpj6wP6j + DhJP6pAh1eNj+vz7y658efrsnh4YXZ3qj6+v5w/j0ZPuVVo5MCkem+fVvJVRcUf93sQ0w3e++SGd + VqK2sOhbCJ5Kd86d/hUipgBlzHfK5gSA9/qECL4xfG+4AHgehmv+bz3dodcVQgkhCS01eiidnpbh + x5BDCVOzfNmwHQMpJgn6RKVCz2GKplTrvC231IP2QJkXmgGIs4jE0VVHdK2cOfcBkPhGuJBqx83B + SBVmb12sRLQgSZIuqVivi4QnaSEislqkvKDpQrBCJCljBeGxSDIfzotMJEKwaElJuhoNh/vQFdjf + SqzGhmDAhwHGrWbUdRX5CUYtGYE6xDRS2qFw0Kx1r/FSfoD90MHJ/W6fhxn4mO91GV6K3tZLcHcm + WRN87vB2hnre+DJ4Vrew847ZbzSdzo7E+Fa6vyTqMF9oc9f8AZYMPnzABAAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:31 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe2b96db898dd11e3a855026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 558\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"cvv_match": null, "created_at": "2014-02-18T20:47:29.935119Z", "name": + null, "links": {"customer": "/customers/CU6R9CoLPG3SeVOyi5n0gqlh"}, "avs_street_match": + "yes", "expiration_year": 2020, "brand": "Visa", "cvv_result": null, "number": + "xxxxxxxxxxxx1111", "updated_at": "2014-02-18T20:47:29.935121Z", "expiration_month": + 10, "cvv": null, "meta": {"region": "Confusion", "city_town": "", "address_2": + "Box 2"}, "avs_result": "Street address and postal code do not match.", "fingerprint": + "8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267", "is_verified": + true, "avs_postal_match": "no", "id": "CC6SzOglTENtEAda7xuIjjyG", "address": + {"city": "Balo Alto", "line2": null, "line1": "123 Main Street", "state": null, + "postal_code": "90210", "country_code": null}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 777] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /cards/CC6SzOglTENtEAda7xuIjjyG + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUTY/TMBC976+wcmbbxGnTprelWq2QgEV02QMIRW5st14SuzhOaajy3/E4n90K + yCFSPPNm3rw38fkGIS8lmhbeCn2zHwid3RuOj8ckJybd25Ass+xNF8iE/AH5XSbkloVROdP21Ft/ + iT7Ha/X+00O4Yc+PlZhLf/cz23stvu4LSZKz18XZ6SA0MULJpGIECmIf+z2EHIukMJox03PzKlZ4 + fYIokiPTggtGLdbokvWhVDNiGE2IAZrYD2a3Pr4Nlk/YX80WKxxP4nAeBPHXoRpooFlRZgC5EGGr + iYQO3rMoyACQZb5tZDiNnsA+Q055oP/iEQaT0HLD0YiHcK3W62jz+3GXPd1/NPd3lCxO5buXl+ph + KD1SL1fSgHXBIJ6d5vUYOTPEno2s1GxnxXftlORlAR+dhOC0MFVi1C+XMQ4QSq1SRYIh8FadEL42 + fK8Zh/DUrdz0//O0RS8ZAgXXhGQK3WVGjWnY5WRAYWyWpQ3HAYACHKIPREi0cVs0hhbG2nINPSgb + yJJUUQh6sY8D/0IRVUqjqy4BGl9tOhdyx/RBC+l2b5kuuD/DYRjNCV8u05CFUcp9vJhFLCXRjNOU + hxGlKWYBD2ObztKYh5xTf05wtBgMh/+hJdj9q54cBPEg3i+w18yMWlWR3WDUgBFMh6hCUhnkCk0a + 92o7ynewHxQc/fXNpTEBH5O9ytz90dl6du5OBK2dz2282aEON7ovpt3lUUxbZHdQt3O2IMq2wvyl + URuzROub+g9NFLAQ1gQAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:31 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe2e51abc98dd11e3b90b026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 586\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU6R9CoLPG3SeVOyi5n0gqlh + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUwU7jMBC98xVRzpQ0IWVDrxy4IIFY4LCrVTS1DbFw7GI7K1VV/p1xSVI3CfiS + w8ybZ897L96fRVFMGmNVzbSJ19FfLETR/vDFloSaYVU2Qpz3NcHlu4P2IIQZ1WgyBmKdMmO5BMuV + 7Fg6knZga7YULKMlWETE2TLNF8tskRZP2XKd/1pnxUWR52mR/omHEaJZYORqlRara2+Eqk1ZK2mr + 8TKcumNvnq8er2/U3cPt5W/2cr/jK7l8+xDV8cxtpeR4wbjS7NWNJ4OCSZgJhSYVSFsaC7ZxQsZS + LWqwxDuuZhacxEed3AY7Bnq8AFCqmRn5QbjdjYDoBhrHsvlyOi276403RpKtwoYoiaIzTaIaafXO + 704M3zQG72FMOZctY2QpwNh8vCargYtJkZ/EqsWz/rmUuE29iB4DfjEENU5QtUNqTbIf7Ov6bee7 + N0hA07JSgh4M8wz3hjltEw/3lVePYwPyvQRyEClAcwqdMFG24SGKDjMz6/+T3+jg/bjfiBFYwOlg + pjJaDdIAcQ9CgOAEOVkCf7xGhrzoQTPT//G1AxG4gmY9bMKgNP16L3+IQoeZzOLzRYPu9SBMc3vW + fgJh19J6pwUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:31 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe336b8d698dd11e39d4e026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 466\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU6R9CoLPG3SeVOyi5n0gqlh/cards?is_valid=True&limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61VXW+bMBR976+w/NCnNQGTkFApmrqoqiZt67R0fdg0IRfbiTuwM2OyZFH++3wN + BNLu46U8IOH7de6555r9GUI4o4aV+BJ9dR8I7f0bjjebtKA2WzmTqvL8VWvIpfoO/q0n+Fal1QU3 + 7hTPP8efkrl+9/EmWvD7250cq2D5I1/hJv5wTKRowZ8m59u1NNRKrdIdp5CQBCQ4htBNmZbWcG6P + 2PCOl/joIMt0w40UkjMXa03Fj6bMcGo5S6kFmCQIRxcBuQindyS4HE0uSTJIonEYJl+6bMCB4WWV + Q8gJCQ+GKqiA72VJuwBVFQ81DdveE7qn86nW7F84onAQOWwk7uGQvtR8Hi9+3S7zu+sP9vqK0cm2 + evv4uLvpUvfYK7SyMLqwI89187SNglvqznqjNHzpyPfltBJVCR8thTBpaXep1T+9R99AGXNMlSkB + wxu9ReT5wFeGCzAPveSG/++nSXqKECD4IjTX6Cq3ug/DiZMDhP6wHGw4DiEoJBF6T6VCC6+ifmhp + 3Vieh661M+RpphkYcRKQMDhhRFfKml3rAIWfKV1IteRmbaTy2ptmExGMSBTFYyqm0yziUZyJgExG + Mc9oPBIsE1HMWEZ4KKLEufMsEZEQLBhTEk+6gcM+NADbXcWqIwSD/ShgXPeMGlaRUzCqgxF0h5hG + SlvkEw3q6R1cK99g/PhEKTinpe9k2G6+m+Zf9r4e9mtYTJpLNrtzO3mey0LaWRicayFKbmcto1jx + 7emu4U40zSXzUqU8BtdEuyG4xuJOmpXBa8M3Uldw2XV6wlY7PUBcvRZYSPPSZDjC/TUJuu3dtfVV + PWD8QVoA1S7S3u/TQLLDsLE10Orz/u3cG1gT1VoPjaqaIhCarnTufw1/KNSzA9qzw29tRSRkTAYA + AA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:32 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe35da1e498dd11e38a91026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 685\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU6R9CoLPG3SeVOyi5n0gqlh/cards?is_valid=True&limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61VXW+bMBR976+w/NCnNQGTkFApmrqoqiZt67R0fdg0IRfbiTuwM2OyZFH++3wN + BNLu46U8IOH7de6555r9GUI4o4aV+BJ9dR8I7f0bjjebtKA2WzmTqvL8VWvIpfoO/q0n+Fal1QU3 + 7hTPP8efkrl+9/EmWvD7250cq2D5I1/hJv5wTKRowZ8m59u1NNRKrdIdp5CQBCQ4htBNmZbWcG6P + 2PCOl/joIMt0w40UkjMXa03Fj6bMcGo5S6kFmCQIRxcBuQindyS4HE0uSTJIonEYJl+6bMCB4WWV + Q8gJCQ+GKqiA72VJuwBVFQ81DdveE7qn86nW7F84onAQOWwk7uGQvtR8Hi9+3S7zu+sP9vqK0cm2 + evv4uLvpUvfYK7SyMLqwI89187SNglvqznqjNHzpyPfltBJVCR8thTBpaXep1T+9R99AGXNMlSkB + wxu9ReT5wFeGCzAPveSG/++nSXqKECD4IjTX6Cq3ug/DiZMDhP6wHGw4DiEoJBF6T6VCC6+ifmhp + 3Vieh661M+RpphkYcRKQMDhhRFfKml3rAIWfKV1IteRmbaTy2ptmExGMSBTFYyqm0yziUZyJgExG + Mc9oPBIsE1HMWEZ4KKLEufMsEZEQLBhTEk+6gcM+NADbXcWqIwSD/ShgXPeMGlaRUzCqgxF0h5hG + SlvkEw3q6R1cK99g/PhEKTinpe9k2G6+m+Zf9r4e9mtYTJpLNrtzO3mey0LaWRicayFKbmcto1jx + 7emu4U40zSXzUqU8BtdEuyG4xuJOmpXBa8M3Uldw2XV6wlY7PUBcvRZYSPPSZDjC/TUJuu3dtfVV + PWD8QVoA1S7S3u/TQLLDsLE10Orz/u3cG1gT1VoPjaqaIhCarnTufw1/KNSzA9qzw29tRSRkTAYA + AA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:32 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe38355a698dd11e3a977026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 685\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:32.821033Z\",\n \"created_at\": \"2014-02-18T20:47:32.612545Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU6VBA5X0f951vJEu5OGijXQ\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU6VBA5X0f951vJEu5OGijXQ\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:33 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMe3a205dc98dd11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UA1pSBQVZX1sLAABSWVoCHRdUSBEUUlYHWwMGBl0EXF4BUQBcDkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:33.832118Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:33.832121Z\",\n \"id\": \"CC6WWOHNKG2QrKweH0IBfYJI\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC6WWOHNKG2QrKweH0IBfYJI\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:33 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe410404c98dd11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMKVQFYBVpSBg9ZU1UKAwFIQVEACRtGRggPV1QHUwAJUgpWW15VAAVHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:34.572486Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:34.572489Z\",\n \"href\": \"/bank_accounts/BA6XOfarXV8IjXC8Klplu2hG\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA6XOfarXV8IjXC8Klplu2hG\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:34 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe4918af898dd11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAw5TVVAPAgNVVFIHAwNSVR0WAlpeT0ISVAtUDwEBAwZXWFMCUQABXBQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:35.136195Z\",\n \"created_at\": \"2014-02-18T20:47:34.972858Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU6YgozUeBYFhK6vvtmNBc5x\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU6YgozUeBYFhK6vvtmNBc5x\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:35 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMe50debd498dd11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SAFpTAgRYVFYICgRSUVYCHRdUSBEUBgFVVVMGBF1RXVsEVFBTCUMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:35.985975Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:35.985978Z\",\n \"id\": \"CC6ZnOJvsKP0v68ljRemJSKQ\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC6ZnOJvsKP0v68ljRemJSKQ\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:36 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe5609d6698dd11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVAOVglRClpVBgFSXlcKBAdIQVEACRtGRgRTBVtTBlBWUVlRWVkGAQtHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:36.703083Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:36.703087Z\",\n \"href\": \"/bank_accounts/BA70cEFBW7atvOqCNn6TjsR8\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA70cEFBW7atvOqCNn6TjsR8\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:36 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe5da850498dd11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAg5WU1cBAwVTUVIBCQRTXQUaE1NeW04QQFpWDQkMAAFTXAUGUwUAVwcVTUYFWV9DATw=\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /cards/CC6ZnOJvsKP0v68ljRemJSKQ + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA41Uy27bMBC85ysInRtHomxZ9q3NLUHRR4oeEhQCLS5jthJpkJRqw/C/l0vr5RhF + q4MAcna4OztLHm8IiUpmuI3W5MUvCDmGP263bVEzV249pJqqetcDlVS/ML6PxNjGOl2D6UK7yNNA + UayGt8fAficNc1Kr4gAMqTSm8UBhrS2sMwBuqCI6gI2GAGmLFowUErjnOtPAAJUGmANeMOeRiMbJ + /Damt0n+jcbr+XKdLmarfLFaLp7H01CtAdtUSLmQuzFMYYbou7RsJKim3gTB0X7yJf4bY5od/586 + 8kkdMqS6v8+e1aeH1j5+jtssr35+hfrh6fHLePSke7VWDk1KxuZ5NW9l1OCY35uYZuDVNz+k00o0 + Fhd9C9FT6Q6F079DxBRgnPtO2YIi8EHvCY2uDN8aEAjfheG6+7ee7tDLCrGEkIRVmryvnJ6W4ccQ + sISpWb5s3E6QlNCUfGRSkacwRVOqdd6Wa+pOe6AqSs0RjFYxTeKLjuhGOXPoAzDxlXAh1SuYnZEq + zF5eLkU8p2maLZjI8zKFNCtFTJfzDEqWzQUvRZpxXlJIRLry4VCuRCoEjxeMZsvRcLwPXYH9rYzU + 2JAI8WGAo7Nm0nWV+AkmZzJBdYRrorQj4aDZ2b2Tl/ID7ccOTu73+XmYoY/FVlfhpehtPQZ3Z5Kf + gs8dfp6hnje+DJ7VLexdx+w3Tp3OjsRhI91fEnWYL/R0c/oDZL+ZK8AEAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:37 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe64f5e2e98dd11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 557\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"cvv_match": null, "created_at": "2014-02-18T20:47:35.985975Z", "name": + null, "links": {"customer": "/customers/CU6YgozUeBYFhK6vvtmNBc5x"}, "avs_street_match": + "yes", "expiration_year": 2020, "brand": "Visa", "cvv_result": null, "number": + "xxxxxxxxxxxx1111", "updated_at": "2014-02-18T20:47:35.985978Z", "expiration_month": + 10, "cvv": null, "meta": {"region": "Confusion", "city_town": "", "address_2": + "Box 2"}, "avs_result": "Street address and postal code do not match.", "fingerprint": + "8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267", "is_verified": + true, "avs_postal_match": "no", "id": "CC6ZnOJvsKP0v68ljRemJSKQ", "address": + {"city": "Balo Alto", "line2": null, "line1": "123 Main Street", "state": null, + "postal_code": "90210", "country_code": null}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 777] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /cards/CC6ZnOJvsKP0v68ljRemJSKQ + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysInRtbomzJ9q0x0EOCPtMUSIpCYMSlzVYiDZJS7Rj+93JlvZKg + rQ4CxNnZx8yKxwtCgpwZboMV+e4/CDk2bzyu66xkLt96SFVF8aYDCql+YXwXibGVdboE40+D9V1y + v9FPd3B1/257k9S1Kz9c5fN90PJPfSLFSniZHPY7aZiTWmUHYJiQhjTsKay2mXUGwPW9BQewQR8g + bVaDkUIC91xnKuih3ABzwDPmsE0aRrPLkF5Gi680XM3SVTyfLBfzZTp/GLKhBgZsVSDlmQiPhims + EHyTlg0EVZWPZxn2oyfyzxBT7fg/+0gnsyiNk3jUh2xKrdfJg/p4XdubT2GdLIqfX6C8vr35PKQe + qVdq5dC6aBDPT/NyjBIc82cjKw1svPhNOa1EZfGjkxCdlu6QOf27iRgDjHOvlM0oAld6T+hrw7cG + BMLTZuWm/5+nTfq8Q2yhKcIKTd4WTo/b8MsJ2MLYLN82HkdIimhM3jOpyG2zRWOqdd6W19Sd9kCR + 5ZojGCxDGoXPFNGVcubQBWDhV5supNqA2Rmpmt1b5KkIZzSOkzkTi0UeQ5zkIqTpLIGcJTPBcxEn + nOcUIhEvfTjkSxELwcM5o0k6GI7/Q9tg968GahAkQLxf4OA8M2lVJX6DyZlMcDrCNVHakSbR5Oze + yY/yA+1HBUd//fnSmKCP2VYXzf3R2Xps3J1Ifmp8bvHzDnW80X0x7S4PO22Z3cGpnbMlcXiU7i+F + Wsw3ero4/QE8tnxb1gQAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:37 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe68b29d698dd11e38ca6026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 586\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /v1/marketplaces/TEST-MP4pdETrZYO1CKZBA29bC1QJ/accounts/CU6YgozUeBYFhK6vvtmNBc5x + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy26DMBC85ysQ5yYEmldzTKVeKvXUHtKqQhvbLVbAjmwTNY34964TIA6QcuGw + Ozv2zgw+DjzPJ7k2MmNK+0vvAwuedzx9sSUgY1gVeZreVbWUi62FViCEaZkr0gRinTJtuADDpShZ + SpKiZst3FAyjMRhE+NE4nAzH0TBcvEbj5WS+vJ+OwvtZ+DB99+sRoti/I5PRwzxaTBfOCJWbOJPC + JM1lOLXHPr7N1t/y942t1k/J82y/N9nLikx/LmfuEimaC/qJYl92PKgVDPqZUGiSgDCxNmByK6Qv + 5DADQ5LLcRkzYCW+6GQ3ODBQzQWAUsV0ww/CzaEBRDfQOBZ1l8N22V6vuTGS7CQ20phI2tEkMhdG + Hdxuy/BNrvEeWsdd2dJaxCloM2muyTLgaavIr2JV4FmfNiV2Uyeil4CP6qD6Aap2Sq0OjrV9Zb8o + jXAGCSgaJzKlJ8Mcw51hTovAwZ3z6nBsQGxjICeRemiuoS0myja8j6LEdMy6/+QNHZwf94YYPQtY + HXRbRqNAaCD2QeghuEK2lsAfLxd9XlSgjuk9vnaQ9lxBsQrWYpCKnt/Lf6JQYlqz+HzRXvcqEKa5 + GBR/6ujhwacFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:38 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe7052b6498dd11e3af93026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 467\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU6YgozUeBYFhK6vvtmNBc5x/cards?is_valid=True&limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61VyW7bMBC95ysIHnJqbC22bAcIiiZADwm6JimQFIXAiMOYrUQaFKXaNfzv5VCS + JSddLtFBgDjbmzdvqO0RITRjhpf0lHx1H4Rs/RuP6zotmM2WzqSqPH/VGXKpfqB/54m+VWl1Acad + 0ovb5O5R/7qF87u3y6ukrm3x/jybrmkbv9snUqyAp8lhvZKGWalVugGGCaMgCvYhrC7T0hoAu8dG + N1DSvYMs0xqMFBK4i7Wmgr0pM8As8JRZhBkF4eQkiE7C+U0UnE5mp/F0tJhPF7PpfZ8NOTBQVjmG + HJDwYJjCCvSLLFkfoKrioaFhPXhC9/Q+1Yr/E8dsNAlncRIPcEhf6uIiuVcfLuvy6mNQJ/P8+2co + Lq+vPvWpB+wVWlkcXdiT57p52kYBlrmzwSgNPDryfTmtRFXiR0chTlraTWr1T+8xNDDOHVNlGqHh + XK9J9HzgSwMCzWMvufH/+2mTHiJECL4IyzV5k1s9hOHECQhhOCwHG49DDAqjmLxjUpFrr6JhaGnd + WJ6HrrQz5GmmORrpIojC4IARXSlrNp0DFn6mdCHVI5iVkcprb57NRDCJ4jiZMjGfZzHESSaCaDZJ + IGPJRPBMxAnnWQShiBfOHbKFiIXgwZRFyawfOO5DC7DbVap6Qija9wKmTc+kZZU4BZMmmGB3hGui + tCU+0aiZ3s618g3HTw+UQnNW+k7G3ea7af5l75thv8bFZLnkZzduJ49zWUh7FgbHWogS7FnHKFWw + Ptw12oumvWReqpTH4JroNoQ2WNxJuzJ0ZaCWusLLrtcTtdrpAeOataBCmpcmwxHur0nU7eCuba7q + EYcHaRFUt0hbv08jyXfj1tZCa86Ht/NgYG1UZ921qmqLYGi61Ln/Nfyh0MCOaI92vwHJObGETAYA + AA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:38 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe73551e098dd11e38ca6026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 685\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xakJNazhFbTk3VWlTQTBrQXM0RzlSS0JuVW5FZFA5UG86Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU6YgozUeBYFhK6vvtmNBc5x/cards?is_valid=True&limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61VyW7bMBC95ysIHnJqbC22bAcIiiZADwm6JimQFIXAiMOYrUQaFKXaNfzv5VCS + JSddLtFBgDjbmzdvqO0RITRjhpf0lHx1H4Rs/RuP6zotmM2WzqSqPH/VGXKpfqB/54m+VWl1Acad + 0ovb5O5R/7qF87u3y6ukrm3x/jybrmkbv9snUqyAp8lhvZKGWalVugGGCaMgCvYhrC7T0hoAu8dG + N1DSvYMs0xqMFBK4i7Wmgr0pM8As8JRZhBkF4eQkiE7C+U0UnE5mp/F0tJhPF7PpfZ8NOTBQVjmG + HJDwYJjCCvSLLFkfoKrioaFhPXhC9/Q+1Yr/E8dsNAlncRIPcEhf6uIiuVcfLuvy6mNQJ/P8+2co + Lq+vPvWpB+wVWlkcXdiT57p52kYBlrmzwSgNPDryfTmtRFXiR0chTlraTWr1T+8xNDDOHVNlGqHh + XK9J9HzgSwMCzWMvufH/+2mTHiJECL4IyzV5k1s9hOHECQhhOCwHG49DDAqjmLxjUpFrr6JhaGnd + WJ6HrrQz5GmmORrpIojC4IARXSlrNp0DFn6mdCHVI5iVkcprb57NRDCJ4jiZMjGfZzHESSaCaDZJ + IGPJRPBMxAnnWQShiBfOHbKFiIXgwZRFyawfOO5DC7DbVap6Qija9wKmTc+kZZU4BZMmmGB3hGui + tCU+0aiZ3s618g3HTw+UQnNW+k7G3ea7af5l75thv8bFZLnkZzduJ49zWUh7FgbHWogS7FnHKFWw + Ptw12oumvWReqpTH4JroNoQ2WNxJuzJ0ZaCWusLLrtcTtdrpAeOataBCmpcmwxHur0nU7eCuba7q + EYcHaRFUt0hbv08jyXfj1tZCa86Ht/NgYG1UZ921qmqLYGi61Ln/Nfyh0MCOaI92vwHJObGETAYA + AA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:38 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMe75a8ae698dd11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 685\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} diff --git a/tests/fixtures/TestBillingAssociate.yml b/tests/fixtures/TestBillingAssociate.yml new file mode 100644 index 0000000000..dc227b373b --- /dev/null +++ b/tests/fixtures/TestBillingAssociate.yml @@ -0,0 +1,1373 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:47:47.659701Z\",\n \"secret\": + \"ak-test-27zZPSpOFXDO6wKqQNiZ82ao3MFLrQ1GA\",\n \"href\": \"/api_keys/AK7cwSbv3gI7MMTSH7Ww4QFY\",\n + \ \"meta\": {},\n \"id\": \"AK7cwSbv3gI7MMTSH7Ww4QFY\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:47 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMec93d44098dd11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwNWBlVXAg5RV1cKCwJWU1QBHRdUSBEUVltQUVQFVAFQCwBVBVJXC0MdQVUDCEVSPA==\r\n", + "Content-Length: 290\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlNxsrzs2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4Ck+wRnoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:48 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMecff75e298dd11e3baa9026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:48.885744Z\",\n \"created_at\": \"2014-02-18T20:47:48.634569Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7dCIMtVxu9Vc5o3C2281Sy\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7dCIMtVxu9Vc5o3C2281Sy\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:49 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMed2b127e98dd11e3b33602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VClJUBwRQVFENBghRWFEABBtGVh0WEVMAAlJUAVkGDAgNA1VRWgATTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:49.900584Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:49.900587Z\",\n \"id\": \"CC7f1QDXRo4haaSKPlr3vxDo\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7f1QDXRo4haaSKPlr3vxDo\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:50 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMed96c6f498dd11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIKWQRQBFJQAw5WUlQLAgRIQVEACRtGRlMHV1JXB1tUAwsAWV4FCgJHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:50.611813Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:50.611816Z\",\n \"href\": \"/bank_accounts/BA7fQyVSNTQgLQ667s6zLp7o\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7fQyVSNTQgLQ667s6zLp7o\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:50 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMee2542ee98dd11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwZUVFcNCgFQVVcOAwVeUR0WAlpeT0ISAFpVDwgMVgFcClUIVgNQARQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7dCIMtVxu9Vc5o3C2281Sy + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy07DMBC88xVRzpS0IaWh1544cOJxAKFoaxvFIrErPxBVlX9nXZLUTVJ8yWF3 + duydmfhwFUUxsdrImikdr6N3LETR4fjFloCaYVXYqrruahUXXw7agRCmpVVkCMQ6ZdpwAYZL0bK0 + JE3PZncUDKMFGETE6XyRzebpbJE/p/N1tlpn+U2eL1dZ9hb3I0SxwMjdbba8u/dGqNwWtRSmHC7D + qTt287Kim4dH8/pj71/JUt5u0jRfPO1PZ+5KKYYLxqVin2486RVMwkwoNClBmEIbMNYJGQs5q8GQ + 8nRczQw4iU86uQ32DNRwAaBUMT3wg3CzHwDRDTSOpdPlxbjsrjfcGEl2EhtVQSSdaBJphVF7vzsy + fGs13kPrYipbWouiAm2y4ZqsBl6NivwsVg2e9eFS4jb1InoK+E0f1DhB1Y6p1cmht6/tN60R3iAB + RYtSVvRomGe4N8xpk3i4v7x6HFsQXwWQo0gBmnPoiImyLQ9RtJiJWf+fvKCD9+NeECOwgNNBj2U0 + CoQG4h6EAMEZcrQE/nhWhLzoQBPT3/jaQRW4gmIdbMQgFf17L/+JQosZzeLzRYPudSBMc3PV/ALr + /GHSpwUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:51 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMeeb0dd1898dd11e38a91026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 463\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7dCIMtVxu9Vc5o3C2281Sy + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy07DMBC88xVRzpS0IaWh1544cOJxAKFoaxvFIrErPxBVlX9nXZLUTVJ8yWF3 + duydmfhwFUUxsdrImikdr6N3LETR4fjFloCaYVXYqrruahUXXw7agRCmpVVkCMQ6ZdpwAYZL0bK0 + JE3PZncUDKMFGETE6XyRzebpbJE/p/N1tlpn+U2eL1dZ9hb3I0SxwMjdbba8u/dGqNwWtRSmHC7D + qTt287Kim4dH8/pj71/JUt5u0jRfPO1PZ+5KKYYLxqVin2486RVMwkwoNClBmEIbMNYJGQs5q8GQ + 8nRczQw4iU86uQ32DNRwAaBUMT3wg3CzHwDRDTSOpdPlxbjsrjfcGEl2EhtVQSSdaBJphVF7vzsy + fGs13kPrYipbWouiAm2y4ZqsBl6NivwsVg2e9eFS4jb1InoK+E0f1DhB1Y6p1cmht6/tN60R3iAB + RYtSVvRomGe4N8xpk3i4v7x6HFsQXwWQo0gBmnPoiImyLQ9RtJiJWf+fvKCD9+NeECOwgNNBj2U0 + CoQG4h6EAMEZcrQE/nhWhLzoQBPT3/jaQRW4gmIdbMQgFf17L/+JQosZzeLzRYPudSBMc3PV/ALr + /GHSpwUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:51 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMeed91e9098dd11e3ac6d026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 463\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7dCIMtVxu9Vc5o3C2281Sy/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7dCIMtVxu9Vc5o3C2281Sy/bank_accounts?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7dCIMtVxu9Vc5o3C2281Sy/bank_accounts?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7dCIMtVxu9Vc5o3C2281Sy/bank_accounts?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:51 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMef03de3c98dd11e3a855026ba7d31e6f\r\n", + "X-Balanced-Host: balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 373\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /bank_accounts/BA123123123123123123 + port: 443 + protocol: https + response: + body: {string: "{\n \"errors\": [\n {\n \"status\": \"Not Found\",\n + \ \"category_code\": \"not-found\",\n \"description\": \"

The requested + URL was not found on the server.

If you entered the URL manually please + check your spelling and try again.

Your request id is OHMef24559a98dd11e38b31026ba7c1aba6.\",\n + \ \"status_code\": 404,\n \"category_type\": \"request\",\n \"request_id\": + \"OHMef24559a98dd11e38b31026ba7c1aba6\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:51 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMef24559a98dd11e38b31026ba7c1aba6\r\n", + "X-Balanced-Host: balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 430\r\n", "Connection: keep-alive\r\n"] + status: {code: 404, message: NOT FOUND} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:52.380205Z\",\n \"created_at\": \"2014-02-18T20:47:52.193012Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7hDcRK9IeskVWJlZIJgseb\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7hDcRK9IeskVWJlZIJgseb\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:52 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMef5190c898dd11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SAFpcDgFRVFENBQdTVVsbEQVKRBNTV1IAB1pUUFxTAQtWBVEAG00RB1IOF1Nq\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:53.300210Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:53.300214Z\",\n \"id\": \"CC7iRMRWEpv3fpWT4MUz0Vvg\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7iRMRWEpv3fpWT4MUz0Vvg\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:53 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMefa282da98dd11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMAUQRWC1tXAQJSVlYJBAZIQVEACRtGRldXAAEAAgNTBgEHDAoEBwBHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:54.091247Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:54.091252Z\",\n \"href\": \"/bank_accounts/BA7jL7cg2oJCPc6rBwIpAHHw\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7jL7cg2oJCPc6rBwIpAHHw\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:54 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf03176f298dd11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwJVUFsPAwJXUFQFCQNXXB0WAlpeT0ISW11RXA5VUFEGAVcFAwdRVBQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7hDcRK9IeskVWJlZIJgseb + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnevoEQdJfG0vSW9FH0CKQliRbEWYIg0uVcAw9O9dOpJMS0p5 + 0WF3dsidGfF0kyQp69CZVlhMd8lPKiTJ6fylloZWUFV3Sn0Ya0rqvYeOIIKh6SybA6nOBTqpwUmj + B5aBpJ/YugMHJ3gFjhBpmRfbTV5uisevZb7bPuzuy9u7x7zM71/TaYRZERkpnu7yogxGuKmr1mjX + zJeR3B/78dtD84l9+fz0LHD//ceLen1++YOivpx5aIyeL5g2Vvz249mkYBZnIqFZA9pV6MB1XshU + m00LjjWX41rhwEt80clvcBRg5wsA51bgzA8m3XEGJDfIOFGul4tl2V9vvjGRHAw1VMUMX2ky02ln + j2F3YXjdId0DsVrLFqKuFKDbztcULUi1KMqrWPV01i+fEr9pENFLwG+noKYZqXZOLWanyb6h3w9G + BIMMLK8ao/jZsMDwYFjyPgtwb3kNOGrQ+wrYWaQIzTV0wcRFLWMUA2ZlNvwn39Eh+HHfESOygNcB + lzI6CxqB+QchQnCFXCxBP16nY16MoJXpv/TagYpcwYoRtmAwlr+9l/+JwoBZzNLzxaPujSBKc3/T + /wMQ1JgfpwUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:54 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf0cdc02098dd11e3b90b026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 466\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7hDcRK9IeskVWJlZIJgseb + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnevoEQdJfG0vSW9FH0CKQliRbEWYIg0uVcAw9O9dOpJMS0p5 + 0WF3dsidGfF0kyQp69CZVlhMd8lPKiTJ6fylloZWUFV3Sn0Ya0rqvYeOIIKh6SybA6nOBTqpwUmj + B5aBpJ/YugMHJ3gFjhBpmRfbTV5uisevZb7bPuzuy9u7x7zM71/TaYRZERkpnu7yogxGuKmr1mjX + zJeR3B/78dtD84l9+fz0LHD//ceLen1++YOivpx5aIyeL5g2Vvz249mkYBZnIqFZA9pV6MB1XshU + m00LjjWX41rhwEt80clvcBRg5wsA51bgzA8m3XEGJDfIOFGul4tl2V9vvjGRHAw1VMUMX2ky02ln + j2F3YXjdId0DsVrLFqKuFKDbztcULUi1KMqrWPV01i+fEr9pENFLwG+noKYZqXZOLWanyb6h3w9G + BIMMLK8ao/jZsMDwYFjyPgtwb3kNOGrQ+wrYWaQIzTV0wcRFLWMUA2ZlNvwn39Eh+HHfESOygNcB + lzI6CxqB+QchQnCFXCxBP16nY16MoJXpv/TagYpcwYoRtmAwlr+9l/+JwoBZzNLzxaPujSBKc3/T + /wMQ1JgfpwUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:54 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf0effc9e98dd11e3b7d7026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 466\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7hDcRK9IeskVWJlZIJgseb/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7hDcRK9IeskVWJlZIJgseb/bank_accounts?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7hDcRK9IeskVWJlZIJgseb/bank_accounts?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7hDcRK9IeskVWJlZIJgseb/bank_accounts?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:55 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf117bd1098dd11e38a91026ba7cd33d0\r\n", + "X-Balanced-Host: balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 373\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /bank_accounts/BA7jL7cg2oJCPc6rBwIpAHHw + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTXW+bMBR9769APK/BdvgIeSPVtqyLumqtNGnThIxtWi/EIGPWRBH/fYbCDCSV + 0hc/3HM4nHvPvccry7ITLLYxJiSvhCrtpfVLFy3r2L4alnmluHiKRbVLmNS4DREELloskP2hJ7Ua + Au9Yg//4uNk8WJ+i75+/Wavo7qt1Fxlm96NYHYqWTJ4Z2Wp9w+hl1vmOSesWHwyUcbFtLPbmtD1S + laoh6qqosqx3NOkr/sskTznBiueio3be6/9NECxiIhnlSjOUrJhBJMOK0Rg3iI0AdK8BuoaLRwSW + brD03BkIIXKDn8ZqqntispBctN9QTHwPujSkdI4hoQEmIfKoF7ghA3OwIEjjKUYB8YCPWZoAEiYI + +hCmaRj6oRGuCnqBFw8NvDxLljYmnFHUzioK/mwC8oTy25t74svVy5ciWq9fzL92TOFm3GZGfXxm + G/b7PZrP8SBhSiUrpzFxdTiNSOfJ0PkyPC2XSjd+Wi5yDWQxyekZsN1qeRiiZ3OnLGljT3FWmtw5 + bcb25pxapVq/v5tNscfbOb6r2etiNVOZxnAcpTLjtHZ68usCTpSG9NFeXyg+PIWyi21q1hyV7fQX + VjoTpz1QnxdpR3qhp477vn7bWY66mTp8c1S1rQOrr+p/bS5ICwEFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:55 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf13a5d1698dd11e386b3026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 497\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "bank_name": "WELLS FARGO BANK NA", "account_type": + "checking", "name": "Homer Jay", "links": {"customer": "/customers/CU7hDcRK9IeskVWJlZIJgseb"}, + "can_credit": true, "created_at": "2014-02-18T20:47:54.091247Z", "address": + {"city": null, "line2": null, "line1": null, "state": null, "postal_code": null, + "country_code": null}, "updated_at": "2014-02-18T20:47:54.091252Z", "meta": + {}, "account_number": "xxx233a", "fingerprint": "dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969", + "can_debit": false, "id": "BA7jL7cg2oJCPc6rBwIpAHHw"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 581] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: PUT + path: /bank_accounts/BA7jL7cg2oJCPc6rBwIpAHHw + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTW2+bMBh9769APK8Bm1vIG+kuSRp1U7e2UqcJGdskLMQgY9ZEEf99NoVyaTp1 + L37w+Ticy+fThabpEWK7EGGclUwU+kz7KS817VSfEuZZKRK2CVm5jyiXuA4gMG04nUL9QztUczC0 + pwp/+LRef9c+B7dfvmrz4OZauwm6yeZHoTjm9TDeUryT/N1ES7PI9pRrK3TsoDRhOyWxFSfl4bIQ + alBxXd1524/49tpf0mJ3/7BKH5erTUGjF4KR2/AP5UmcYCSSjEkCVqZp46h6sYYRCzGnJBFyQvCS + dginSFASIoXo0AT2pQkvwfQHNGe2N3PsiekDaHuPnYFYOqU85wmrvyEIuw6wiU+IhQAmHsI+dIjj + 2T41LXOKocRjBD3smC6icWRiP4LABSCOfd/1O+IyJ//U4kw803Udq6dly2msRBiDBTDmgfd77eEN + zFZX37DL50/LPFgsnrp/7alAqoQuo7bUbkcOhwO0LNTrnRBOi3F5iTg2ubepyopkyxSevwavrwsh + jb++zjMJpCHOyBmw3nV+7KNneyc0qmuPUVp0vSdExfZmTjVTJc9fypNy09vZ4WubPC+WSmVcw2nQ + yiQhldEOP0c1YuqPD/b6neT9p1A0tY3F9p6a0b67whgpbYHqPEkd6Ts1NbP/57fOcuBmrPDNqCpd + FlZdVH8Boo/oUhcFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:56 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf170590298dd11e3baa9026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 527\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7hDcRK9IeskVWJlZIJgseb + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnevoEQdJfG0vSW9FH0CKQliRbEWYIg0uVcAw9O9dOpJMS0p5 + 0WF3dsidGfF0kyQp69CZVlhMd8lPKiTJ6fylloZWUFV3Sn0Ya0rqvYeOIIKh6SybA6nOBTqpwUmj + B5aBpJ/YugMHJ3gFjhBpmRfbTV5uisevZb7bPuzuy9u7x7zM71/TaYRZERkpnu7yogxGuKmr1mjX + zJeR3B/78dtD84l9+fz0LHD//ceLen1++YOivpx5aIyeL5g2Vvz249mkYBZnIqFZA9pV6MB1XshU + m00LjjWX41rhwEt80clvcBRg5wsA51bgzA8m3XEGJDfIOFGul4tl2V9vvjGRHAw1VMUMX2ky02ln + j2F3YXjdId0DsVrLFqKuFKDbztcULUi1KMqrWPV01i+fEr9pENFLwG+noKYZqXZOLWanyb6h3w9G + BIMMLK8ao/jZsMDwYFjyPgtwb3kNOGrQ+wrYWaQIzTV0wcRFLWMUA2ZlNvwn39Eh+HHfESOygNcB + lzI6CxqB+QchQnCFXCxBP16nY16MoJXpv/TagYpcwYoRtmAwlr+9l/+JwoBZzNLzxaPujSBKc3/T + /wMQ1JgfpwUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:56 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf1c22c6e98dd11e38133026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 466\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7hDcRK9IeskVWJlZIJgseb/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61U227iMBB971dEedinLdgmF4JUraB7oRR1V91Lpa5WkbEd8BIS5DgtCOXf1zYJ + SSis+tCXSJkZz5w552h2F5Zlz3CyDDEhaZ7IzB5Yv1XQsnbmq9IizSVP5mGSr2ZMqLwNEQQO6veR + /b4qMj0SvGI6//BpOv1ufR7ef/lqjYZ3t9bdsK4sB4VyuzbFZMHIUvWvK6o243TFhDXB2zoV82Sp + IVbgFDySZ1IX6l7XP/3FR3J/G9ywbPnrYRI/3kzmGZsdGhxtGz4xwSNOsORpohokeRyXGxWH1QhO + QiIY5VJVSJGzOiMYloyGWGdsBKBzCdAl7P9AYOD4A9fpgAAix3+sF4jUpkysBU/MG4qJ50KHBpT2 + MCTUxyRALnV9J2CgB/oEqXyEkU9c4GEWzQAJZgh6EEZREHhB3Thf0/9icTs+8Dy318CyECzSILot + A3RHQ//v1CdzlE6uvxFPjJ5v1sPx+LmetWISaxFqjipRa49sNhvU6+GG7pQKlh2Lx+W25L1iVUmk + VGbodBi+DGdSLf4yvE5VIg5JSk8kjdfFtpk9qTtlMyN7hOOs1p1TTdtZnkynQn3/6J3sii0TtmOc + GeW7lW+z7jnXtnX5EPMVl1cQvEujKGPyCpTc2gnb6JbavHsS7YOybzfETFdTIChn7FGoSBVYC/bE + 01wr3IAiU6WCflc+i7h4OwIUpcaD2jGNu9C+aB0jooZ17PRdy/gdTotuWVuCbeebf63L8crezWOT + VeK1RzSPWcMhR0CrquJME3OsXglqf9nOwDm7sSGztU/3COPZp4WtVbso/gHIiypyewYAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:56 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf20070dc98dd11e3a977026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 622\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7hDcRK9IeskVWJlZIJgseb/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61U227iMBB971dEedinLdgmF4JUraB7oRR1V91Lpa5WkbEd8BIS5DgtCOXf1zYJ + SSis+tCXSJkZz5w552h2F5Zlz3CyDDEhaZ7IzB5Yv1XQsnbmq9IizSVP5mGSr2ZMqLwNEQQO6veR + /b4qMj0SvGI6//BpOv1ufR7ef/lqjYZ3t9bdsK4sB4VyuzbFZMHIUvWvK6o243TFhDXB2zoV82Sp + IVbgFDySZ1IX6l7XP/3FR3J/G9ywbPnrYRI/3kzmGZsdGhxtGz4xwSNOsORpohokeRyXGxWH1QhO + QiIY5VJVSJGzOiMYloyGWGdsBKBzCdAl7P9AYOD4A9fpgAAix3+sF4jUpkysBU/MG4qJ50KHBpT2 + MCTUxyRALnV9J2CgB/oEqXyEkU9c4GEWzQAJZgh6EEZREHhB3Thf0/9icTs+8Dy318CyECzSILot + A3RHQ//v1CdzlE6uvxFPjJ5v1sPx+LmetWISaxFqjipRa49sNhvU6+GG7pQKlh2Lx+W25L1iVUmk + VGbodBi+DGdSLf4yvE5VIg5JSk8kjdfFtpk9qTtlMyN7hOOs1p1TTdtZnkynQn3/6J3sii0TtmOc + GeW7lW+z7jnXtnX5EPMVl1cQvEujKGPyCpTc2gnb6JbavHsS7YOybzfETFdTIChn7FGoSBVYC/bE + 01wr3IAiU6WCflc+i7h4OwIUpcaD2jGNu9C+aB0jooZ17PRdy/gdTotuWVuCbeebf63L8crezWOT + VeK1RzSPWcMhR0CrquJME3OsXglqf9nOwDm7sSGztU/3COPZp4WtVbso/gHIiypyewYAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:56 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf2267fb698dd11e3a855026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 622\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:47:57.392051Z\",\n \"created_at\": \"2014-02-18T20:47:57.197579Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7ng0SqvV2rCfxwYJlFzFAO\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7ng0SqvV2rCfxwYJlFzFAO\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:47:57 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf24cb24498dd11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBVVVBARQVFUBCwNSVVABHRdUSBEUBgdQAgBSW1lWCF4HAFdVW0MdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:47:58.307414Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:47:58.307418Z\",\n \"id\": \"CC7oukdOS7HNCHkNN4yzAbyo\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7oukdOS7HNCHkNN4yzAbyo\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:58 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf2a6091698dd11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMAVQlZClVcBQ9UX1ENAQlIQVEACRtGRgkOVQcHBVVSUQsACAkMCgpHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:47:59.098489Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:47:59.098492Z\",\n \"href\": \"/bank_accounts/BA7poiZv80y3e4aCJGq7J1i0\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7poiZv80y3e4aCJGq7J1i0\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:59 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf33023e498dd11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwFSV1ABCgFRVVQBAgdeUh0WAlpeT0ISBwtRDAoDUVVXAVRXAgpTXBQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7ng0SqvV2rCfxwYJlFzFAO + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnePoURuKfSsC5JBLDn0AbRAIa5KpiFCkQ1JpXUP/nqUjybSk + hBcddmeH3JkRDxdRFJPGWFUzbeJN9ICFKDocv9iSUDOsykaIy74muHx20B6EMKMaTcZArFNmLJdg + uZIdS0fSDmzNjoJltASLiDhPs+UizRfZ9fc83SyLzaq4+rLO01X2Ox5GiGaBkWxdrIq1N0LVtqyV + tNV4GU7dsTc/Cvkn/fby+jPXN0///v66E7f/b7/en87cVUqOF4wrzZ7ceDIomISZUGhSgbSlsWAb + J2Qs1aIGS6rTcTWz4CQ+6eQ22DPQ4wWAUs3MyA/C7X4ERDfQOJbPl7Np2V1vvDGS7BQ2REkUnWkS + 1Uir9353Yvi2MXgPY8q5bBkjSwHGLsdrshq4mBT5WaxaPOvRpcRt6kX0FPCrIahxgqodU2uSw2Bf + 1287I7xBApqWlRL0aJhnuDfMaZt4uPe8ehxbkM8lkKNIAZpz6ISJsi0PUXSYmVn/n/xAB+/H/UCM + wAJOBzOV0WqQBoh7EAIEZ8jJEvjjNTLkRQ+amX7F1w5E4Aqa9bAJg9L0/b38JAodZjKLzxcNuteD + MM3tRfsGr9z9QqcFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:59 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf3ca407898dd11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 470\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7ng0SqvV2rCfxwYJlFzFAO + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnePoURuKfSsC5JBLDn0AbRAIa5KpiFCkQ1JpXUP/nqUjybSk + hBcddmeH3JkRDxdRFJPGWFUzbeJN9ICFKDocv9iSUDOsykaIy74muHx20B6EMKMaTcZArFNmLJdg + uZIdS0fSDmzNjoJltASLiDhPs+UizRfZ9fc83SyLzaq4+rLO01X2Ox5GiGaBkWxdrIq1N0LVtqyV + tNV4GU7dsTc/Cvkn/fby+jPXN0///v66E7f/b7/en87cVUqOF4wrzZ7ceDIomISZUGhSgbSlsWAb + J2Qs1aIGS6rTcTWz4CQ+6eQ22DPQ4wWAUs3MyA/C7X4ERDfQOJbPl7Np2V1vvDGS7BQ2REkUnWkS + 1Uir9353Yvi2MXgPY8q5bBkjSwHGLsdrshq4mBT5WaxaPOvRpcRt6kX0FPCrIahxgqodU2uSw2Bf + 1287I7xBApqWlRL0aJhnuDfMaZt4uPe8ehxbkM8lkKNIAZpz6ISJsi0PUXSYmVn/n/xAB+/H/UCM + wAJOBzOV0WqQBoh7EAIEZ8jJEvjjNTLkRQ+amX7F1w5E4Aqa9bAJg9L0/b38JAodZjKLzxcNuteD + MM3tRfsGr9z9QqcFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:47:59 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf3ee771898dd11e3b90b026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 470\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7ng0SqvV2rCfxwYJlFzFAO/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7ng0SqvV2rCfxwYJlFzFAO/cards?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7ng0SqvV2rCfxwYJlFzFAO/cards?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7ng0SqvV2rCfxwYJlFzFAO/cards?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:00 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf41e67de98dd11e38c09026ba7cac9da\r\n", + "X-Balanced-Host: balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 349\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /cards/CC123123123123 + port: 443 + protocol: https + response: + body: {string: "{\n \"errors\": [\n {\n \"status\": \"Not Found\",\n + \ \"category_code\": \"not-found\",\n \"description\": \"

The requested + URL was not found on the server.

If you entered the URL manually please + check your spelling and try again.

Your request id is OHMf442f33898dd11e39d4e026ba7c1aba6.\",\n + \ \"status_code\": 404,\n \"category_type\": \"request\",\n \"request_id\": + \"OHMf442f33898dd11e39d4e026ba7c1aba6\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:00 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf442f33898dd11e39d4e026ba7c1aba6\r\n", + "X-Balanced-Host: balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 430\r\n", "Connection: keep-alive\r\n"] + status: {code: 404, message: NOT FOUND} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:01.240275Z\",\n \"created_at\": \"2014-02-18T20:48:00.997744Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7rx82kTP7yr1AKFR7Rgzn2\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7rx82kTP7yr1AKFR7Rgzn2\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:01 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf48cb95098dd11e3b33602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UA1BQBQBZVFoBBAFXUFECHRdUSBEUBlBQBwFVBF5RDVkCBwRdXUMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:02.358031Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:02.358036Z\",\n \"id\": \"CC7t2pLli9kt0xcWobmrfnHG\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7t2pLli9kt0xcWobmrfnHG\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:02 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf4f992aa98dd11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIBUwRYAFtSAwJSVlABBgVIQVEACRtGRlVSA1UFUVIBWwBTDA1SVFBHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:03.245114Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:03.245118Z\",\n \"href\": \"/bank_accounts/BA7u3AiDMuIXPY4n7OjrbClG\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7u3AiDMuIXPY4n7OjrbClG\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:03 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf59385e098dd11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAA5QVFYICwBVUVoBBQVTXB0WAlpeT0ISWwlXAA5RBgZRW1NUUwsEXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"meta": {"username": "alice"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 31] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:03.863449Z\",\n \"created_at\": \"2014-02-18T20:48:03.655795Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7uwn2QnEX31KnTfbzQNzTM\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7uwn2QnEX31KnTfbzQNzTM\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {\n \"username\": + \"alice\"\n },\n \"dob_year\": null,\n \"address\": {\n \"city\": + null,\n \"line2\": null,\n \"line1\": null,\n \"state\": + null,\n \"postal_code\": null,\n \"country_code\": null\n },\n + \ \"business_name\": null,\n \"ssn_last4\": null,\n \"email\": + null,\n \"ein\": null\n }\n ],\n \"links\": {\n \"customers.source\": + \"/resources/{customers.source}\",\n \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:04 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf625fc0498dd11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAVNVBgJZUFIOBQNcUFoEBxtGVwAaE0BfUFpWVwpUAQwGUVVVW1VTQx9CAldbEgM+\r\n", + "Content-Length: 1482\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7uwn2QnEX31KnTfbzQNzTM + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnevIluXE8bXIKWiBAC5QtCiEFclARCTS4KOFY+jfu3QkmRaV + 8KLD7uxQMzvk6SZJUmK1kS1TOt0lv7GQJKfzF1sCWoZVYZvmy1BruHh10AGEMC2tIlMg1inThgsw + XIqepSfpRjZ7oGAYLcEgIs2Xq2KxzBer7T5f7ortbrm+3d6ti+LhVzqOEMUiI3ebzf3Dxhuhsipb + KUw9FcOpO/brj3v7T+TP4vHnevUk9i/V2/P3t/23y5mHWoqpwLRW7MWNZ6ODWZwJjSY1CFNqA8Y6 + I1MhFy0YUl+Oa5mBa4utZqrfRgoNR7cDK53IIwM11QiUKqYnKyPcHCdAXBjuluXz5VVYdgqmpiDJ + QWKjKYmkM00irTDq6HcDIZXV+B9al3Px01qUDWhTTGWyFngTFPlV8jo8648LklPqpfhyB27HLKcZ + unYOts5O44b7ftfvyhskoGhZy4aed+plwhvmtMs83HukPY4KxGsJ5GxShOYaGjBRVvEYRY+ZmfWv + 7Qc+eHf7AzMiApwPOrTRKBAaiHszIgRXyEAE3k0rYrsYQDPTf/FBhCbyC4oNsIBBKvr+pH4ShR4T + zOILR6PbG0CY5u6m+w/ijN0wygUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:04 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf692f3d698dd11e38180026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 478\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7uwn2QnEX31KnTfbzQNzTM/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7uwn2QnEX31KnTfbzQNzTM/cards?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7uwn2QnEX31KnTfbzQNzTM/cards?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7uwn2QnEX31KnTfbzQNzTM/cards?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:04 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf6c1848098dd11e386b3026ba7f8ec28\r\n", + "X-Balanced-Host: balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 349\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /cards/CC7t2pLli9kt0xcWobmrfnHG + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA41UTY/bIBC9769AnLsJxonj5NbuoT20p1at1GplET42aG2IAKeJovz3MsRf2ahq + fbAEbx4zb97A+QEhzJkTHm/Qr7hA6Jz+sH04VA0LfBch09b1ux6otXmF+D4SYlsfbCNdF9pFXgaK + YY18e4w87rVjQVtTnSQDKiWUDBR28JUPTsowVIFP0uMhQPvqIJ1WWorIDa6VA8SdZEGKioWIYEqy + xSOhj1n5jZLNotwQOsuXJcmzn+NpoNZJ39ZAuZG7dcxABvxdezYSTNtsk2B8nHxZ/MaYdi/+p45i + UodOqZ6eVoHuP9d6/RrIkf+w28Yp8+njePSke401AUzKxuZFNW9lNDKwuDcxzcmX2PyUzhrVelj0 + LQRPdThVwf5OEVOACRE75SsKwAd7RBTfGb5zUgE8T8M1/7ee7tDbCqGElITVFr2vg52WEcdQQglT + s2LZsJ0BKaM5+sK0QV/TFE2pPkRb7ql7G4G64lYAiNeEZuSmI7Y1wZ36AEh8J1xp8yLd3mmTZq/k + K0UWNM+LJVNlyXOZF1wRuloUkrNioQRXeSEEpzJT+TqGS75WuVKCLBktVqPhcB+6Avtbic3YEAz4 + MMD4qhl1XUVxgtGVjEAdEhYZG1A6aHZ17xKlPIP90MHJ/b4+DzPwsdrZOr0Uva3n5O5Mi0vyucOv + M9TzxpchsrqFn3fMfuPS6exIQm51+EuiDouFXh4ufwBYz5QpwAQAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:04 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf6e2b90c98dd11e39d4e026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 553\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"cvv_match": null, "created_at": "2014-02-18T20:48:02.358031Z", "name": + null, "links": {"customer": "/customers/CU7uwn2QnEX31KnTfbzQNzTM"}, "avs_street_match": + "yes", "expiration_year": 2020, "brand": "Visa", "cvv_result": null, "number": + "xxxxxxxxxxxx1111", "updated_at": "2014-02-18T20:48:02.358036Z", "expiration_month": + 10, "cvv": null, "meta": {"region": "Confusion", "city_town": "", "address_2": + "Box 2"}, "avs_result": "Street address and postal code do not match.", "fingerprint": + "8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267", "is_verified": + true, "avs_postal_match": "no", "id": "CC7t2pLli9kt0xcWobmrfnHG", "address": + {"city": "Balo Alto", "line2": null, "line1": "123 Main Street", "state": null, + "postal_code": "90210", "country_code": null}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 777] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + host: api.balancedpayments.com + method: PUT + path: /cards/CC7t2pLli9kt0xcWobmrfnHG + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUXW/TMBR936+w8sxax2nTtG9QIZBgSBMdIBCK3NherSV25Thduyr/HV/ns6uA + PESKzz3345wbn28QCjJqWBms0C/3gdDZv+H4cEgLarOdg1SV5286IJfqCeK7SIitSqsLbtxpsH5Y + VM+K3Kv3P6Lwk9qI7cv9l5fNXdDy6z6RogV/nZwf99JQK7VKT5xCQoIJ7in0UKalNZzbvrfgxMug + D5BleuBGCsmZ41pT8R7KDKeWs5RaaJPgcHaLyW2YbAhezZIVJpNonuAo/DlkAw0ML6scKBcibA1V + UCH4Jks6EFRVbBsZjqMndM8QU+3ZP/uIJ4QsyXw+6kP6Uuv1wpL951wunyw+Zt/1tjBCffwwpB6p + V2hlwbpwEM9N83qMglvqzkZWGv7oxPfltBJVCR+dhOC0tKfU6mcfMQYoY06pMiUAvNNHRK4N3xku + AJ76lZv+f5426WWH0IIvQnON3uZWj9twy8mhhbFZrm04DoEUkgjdUanQV79FY2ppnS3X1L12QJ5m + mgEYLDEJ8YUiulLWnLoAKHy16UKqR272Riq/e0m2EHhGoiieU5EkWcSjOBOYLGYxz2g8EywTUcxY + RngooqUL59lSREIwPKckXgyGw//QNtj9q4EaBAkA7xc4aGZGrarIbTBqyAimQ0wjpS3yiSaNe7Ub + 5TfYDwqO/vrm0piAj+lO5/7+6Gw9e3cnktXe5xZvdqjjje6LaXd5lNOW2R3U7ZwtifGttH8p1GKu + 0fqm/gMfgett1gQAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:06 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf7b7084c98dd11e3a547026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 583\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7uwn2QnEX31KnTfbzQNzTM + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy27bMBC85ysEnevIluXE8bXIKWiBAC5QtCiEFclARCTS4KOFY+jfu3QkmRaV + 8KLD7uxQMzvk6SZJUmK1kS1TOt0lv7GQJKfzF1sCWoZVYZvmy1BruHh10AGEMC2tIlMg1inThgsw + XIqepSfpRjZ7oGAYLcEgIs2Xq2KxzBer7T5f7ortbrm+3d6ti+LhVzqOEMUiI3ebzf3Dxhuhsipb + KUw9FcOpO/brj3v7T+TP4vHnevUk9i/V2/P3t/23y5mHWoqpwLRW7MWNZ6ODWZwJjSY1CFNqA8Y6 + I1MhFy0YUl+Oa5mBa4utZqrfRgoNR7cDK53IIwM11QiUKqYnKyPcHCdAXBjuluXz5VVYdgqmpiDJ + QWKjKYmkM00irTDq6HcDIZXV+B9al3Px01qUDWhTTGWyFngTFPlV8jo8648LklPqpfhyB27HLKcZ + unYOts5O44b7ftfvyhskoGhZy4aed+plwhvmtMs83HukPY4KxGsJ5GxShOYaGjBRVvEYRY+ZmfWv + 7Qc+eHf7AzMiApwPOrTRKBAaiHszIgRXyEAE3k0rYrsYQDPTf/FBhCbyC4oNsIBBKvr+pH4ShR4T + zOILR6PbG0CY5u6m+w/ijN0wygUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:06 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf8184d0098dd11e38915026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 478\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7uwn2QnEX31KnTfbzQNzTM/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA6VUW2vbMBR+768QetjTmshy4iSFMrYyNtg6KOsubAyjWFIraktBktOkIf99OrId + O+0usPkhEJ3bd77znbM7QQgXzHKHz9D38AehXfyF5/U6r5gvboNJ12X5vDOUSt+Bf+cJvrXzphI2 + vOKLT7P6XtMr/fprmrzT13L5cPXh4foSt/H7QyLNKvE4udislGVeGZ1vBYOElFByCGFrlztvhfAH + bHgrHD44KJevhVVSCR5iva3FwVRYwbzgOfMAk5JkckroaTK/puRsMj8jdJRO5yRNvvXZgAMrXF1C + yBEJS8s0VMCflWN9gK6rZUPDZvAl4et96hX/I45sROmCTqcDHCqWuriYebp6X6rFnSeb4otZVlbq + t2/61AP2KqM9jC7pyQvdPG6jEp6Ft8EorbgJ5MdyRsvawZ+OQpi08tvcm/voMTQwzgNTLqdgeGU2 + iD4d+K0VEszjKLnx3/tpkx4jBAixCCsNell6M4QRxCkAwnBYATY8JxCU0BRdMqXRx6iiYajzYSxP + Q1cmGMq8MByMeEFoQo4YMbX2dts5QOEnSpdK3wi7skpH7c2LmSQTmqbZlMn5vEhFmhWS0NkkEwXL + JpIXMs04L6hIZLoI7qJYyFRKTqaMZrN+4LAPLcBuV7HuCcFgPwgYNz2jllUUFIyaYATdIW6QNh7F + RKNmevvQyg8YPz5SCi6Zi52Mu80P0/zN3jfDflGqSvnzhDwzUjrhzzsOsRab4+3CvUzas/LvyWPV + ALTbAtxUDy/tWuCVFWtlajhovWawN2HmENdIH0tl/7/hQGM8fqDGwQVtDvCIi6XyAKNbj13ckpHi + +3Fra8E078ObOxhDG9VZ961W2iIQmt+aMh78XxQa2AHtyf4nXteq2CIGAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:07 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf84268b098dd11e3a855026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 671\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yN3paUFNwT0ZYRE82d0txUU5pWjgyYW8zTUZMclExR0E6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CU7uwn2QnEX31KnTfbzQNzTM/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA6VUW2vbMBR+768QetjTmshy4iSFMrYyNtg6KOsubAyjWFIraktBktOkIf99OrId + O+0usPkhEJ3bd77znbM7QQgXzHKHz9D38AehXfyF5/U6r5gvboNJ12X5vDOUSt+Bf+cJvrXzphI2 + vOKLT7P6XtMr/fprmrzT13L5cPXh4foSt/H7QyLNKvE4udislGVeGZ1vBYOElFByCGFrlztvhfAH + bHgrHD44KJevhVVSCR5iva3FwVRYwbzgOfMAk5JkckroaTK/puRsMj8jdJRO5yRNvvXZgAMrXF1C + yBEJS8s0VMCflWN9gK6rZUPDZvAl4et96hX/I45sROmCTqcDHCqWuriYebp6X6rFnSeb4otZVlbq + t2/61AP2KqM9jC7pyQvdPG6jEp6Ft8EorbgJ5MdyRsvawZ+OQpi08tvcm/voMTQwzgNTLqdgeGU2 + iD4d+K0VEszjKLnx3/tpkx4jBAixCCsNell6M4QRxCkAwnBYATY8JxCU0BRdMqXRx6iiYajzYSxP + Q1cmGMq8MByMeEFoQo4YMbX2dts5QOEnSpdK3wi7skpH7c2LmSQTmqbZlMn5vEhFmhWS0NkkEwXL + JpIXMs04L6hIZLoI7qJYyFRKTqaMZrN+4LAPLcBuV7HuCcFgPwgYNz2jllUUFIyaYATdIW6QNh7F + RKNmevvQyg8YPz5SCi6Zi52Mu80P0/zN3jfDflGqSvnzhDwzUjrhzzsOsRab4+3CvUzas/LvyWPV + ALTbAtxUDy/tWuCVFWtlajhovWawN2HmENdIH0tl/7/hQGM8fqDGwQVtDvCIi6XyAKNbj13ckpHi + +3Fra8E078ObOxhDG9VZ961W2iIQmt+aMh78XxQa2AHtyf4nXteq2CIGAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:07 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf871ea3698dd11e3818d026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 671\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} diff --git a/tests/fixtures/TestBillingCharges.yml b/tests/fixtures/TestBillingCharges.yml new file mode 100644 index 0000000000..22a9b4d6cc --- /dev/null +++ b/tests/fixtures/TestBillingCharges.yml @@ -0,0 +1,1160 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:49:02.339758Z\",\n \"secret\": + \"ak-test-1giHcUtORPZTeQYD6MAgLy4SyDd76oqxw\",\n \"href\": \"/api_keys/AKLsEVN77WapdMZmMXBrYnS\",\n + \ \"meta\": {},\n \"id\": \"AKLsEVN77WapdMZmMXBrYnS\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:02 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM191fb16e98de11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBZClNQBQZZVlsMBAFSVlsAHRdUSBEUAVYHAVpUBwFUCwBXAFcHWEMdQVUDCEVSPA==\r\n", + "Content-Length: 288\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlPx5Tzq2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4CJ/EtRoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:02 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM196d12ba98de11e3818d026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:03.570237Z\",\n \"created_at\": \"2014-02-18T20:49:03.138452Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUMm9m0ycBpDe0UQexyPcRW\",\n \"phone\": + null,\n \"href\": \"/customers/CUMm9m0ycBpDe0UQexyPcRW\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:03 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM1993d06c98de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9XC1tQBwNRVFcLBgNUU1UEHRdUSBEUAAQFUgdWVwlVDQ5RAVdTDkMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:04.713269Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:04.713272Z\",\n \"id\": \"CCO74BVsAOklYtW1YaFVyZp\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCO74BVsAOklYtW1YaFVyZp\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:04 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1a23525a98de11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHV0NUABTAltVBAdRVFYOAAVIQVEACRtGRlAPUgYCB1tUW1tVDQwCAVdHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:05.598410Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:05.598413Z\",\n \"href\": \"/bank_accounts/BAP7vAtPXAv4MVuyWJW2tu0\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAP7vAtPXAv4MVuyWJW2tu0\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:05 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1acec4aa98de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwJSUFAAAQFdWVEEAgBSSBEHC1pKQ0AJAwxaWQlWBgFTDgUIAlYERhoXBwcPS1Zt\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:06.263250Z\",\n \"created_at\": \"2014-02-18T20:49:06.000529Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUPzVFhtW9y0z3dQ4FujaHm\",\n \"phone\": + null,\n \"href\": \"/customers/CUPzVFhtW9y0z3dQ4FujaHm\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:06 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM1b4e163898de11e38f3a02a1fe53e539\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VBVdXDg9RU1oOAgZUWVoPBhtGVh0WEVZfVlsBWwhXXlwCBAVVCAUTTRMEBVpEBDs=\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:07.673975Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:07.673979Z\",\n \"id\": \"CCRqG1NCJkmgBQBvucy7roS\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCRqG1NCJkmgBQBvucy7roS\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:07 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1bcc6bb498de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQDHVUIUAJTAlVcBQdXU1QBBRxEUlUPHRdEBVQGC1VVU1cFBwpbDQEHBxFJGQdQDUAHOQ==\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:08.495737Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:08.495741Z\",\n \"href\": \"/bank_accounts/BASnMPHLjtfpONCLUYv7MNp\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BASnMPHLjtfpONCLUYv7MNp\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:08 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1c8c5a3c98de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwJWUloKCgdVVVAHAw9eVR0WAlpeT0ISVQ9VDw5QBQpQDAQJUQMEBxQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 12, "number": "4444444444444448", "expiration_year": + 2020}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 79] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": null,\n \"is_verified\": true,\n \"created_at\": + \"2014-02-18T20:49:09.373907Z\",\n \"cvv_result\": null,\n \"brand\": + \"Visa\",\n \"number\": \"xxxxxxxxxxxx4448\",\n \"updated_at\": + \"2014-02-18T20:49:09.373910Z\",\n \"id\": \"CCTmM96CeRtHnm7nffw2i9k\",\n + \ \"expiration_month\": 12,\n \"cvv\": null,\n \"meta\": {\n + \ \"client_ip_address\": \"174.129.156.59\"\n },\n \"href\": + \"/cards/CCTmM96CeRtHnm7nffw2i9k\",\n \"address\": {\n \"city\": + null,\n \"line2\": null,\n \"line1\": null,\n \"state\": + null,\n \"postal_code\": null,\n \"country_code\": null\n },\n + \ \"fingerprint\": \"9ea2b317b53183f5a93ba23a594a0b8a0f2183ea9cc338e0964755cd9df71b99\",\n + \ \"avs_postal_match\": null,\n \"avs_result\": null\n }\n ],\n + \ \"links\": {\n \"cards.card_holds\": \"/cards/{cards.id}/card_holds\",\n + \ \"cards.customer\": \"/customers/{cards.customer}\",\n \"cards.debits\": + \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:09 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1d09d82c98de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMIWQlRAFJWAgVYV1oBAQJIQVMABhtGRgZXV1ZXAAYIAA8BAVsAUVdHFUFXAF8RAWs=\r\n", + "Content-Length: 1109\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"cvv_match": null, "avs_postal_match": null, "name": null, "links": {"customer": + "/customers/CUPzVFhtW9y0z3dQ4FujaHm"}, "avs_street_match": null, "expiration_year": + 2020, "brand": "Visa", "cvv_result": null, "number": "xxxxxxxxxxxx4448", "updated_at": + "2014-02-18T20:49:09.373910Z", "expiration_month": 12, "cvv": null, "meta": + {"client_ip_address": "174.129.156.59"}, "avs_result": null, "fingerprint": + "9ea2b317b53183f5a93ba23a594a0b8a0f2183ea9cc338e0964755cd9df71b99", "created_at": + "2014-02-18T20:49:09.373907Z", "is_verified": true, "id": "CCTmM96CeRtHnm7nffw2i9k", + "address": {"city": null, "line2": null, "line1": null, "state": null, "postal_code": + null, "country_code": null}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 686] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: PUT + path: /cards/CCTmM96CeRtHnm7nffw2i9k + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VTTW+jMBC991cgzlviDwg410hVLyvtrrpdaVcVMnho3IKJjMk2jfjvaxMINMmq + HCzxZt74ed7M4cbz/Jxr0fgr74/98bxDfzp4t0srbvKNDam2LL+MgVKqV5c/ZrrctjF1Bdqi/vrn + t/fHu435xfbonYrv4V37wu8rf6B3pzqKV3BeG962UnMja5Xugbt6BBF0ovBdkzZGA5jr0mST7kDL + QoKwVKNbOFFzDdyASLlxIgnC4S0itzh5IGgVshViAY0pQ/Fvf6LYDmho2tJRPrQg01y5G/xH2fCJ + oNoqOzbhbfaFYZhMOe1WfKIjISxG0UyH7K9arx+qr2y5hh/mXlWxKoq/RLLXqfKsd1WtjPMNk/lj + zl9RgeEWm/tYSlAmlduUC2Gf7mz2cRwGmLAAR8sgYpc+bjQULm/RD9LiU51T6fnN0uzP9Nm5sqMG + 5DqML+HG2M5ewtvaBso0r8WVYF63yuj9PHoxqIVUz6C3Wqp+dhhwklEcZxHFCS0izmjGCeURCznK + Eo4KYnHgLM8pTQCxZRhHUS6YKGKcMTY55sZ5UHd101z8wwD20jp7PjlfXXtmm3hc5MC5kG7qst/p + 0ZRD700gRde7NMSPwzHyZju8GBe6WQzMEegG9QNJQCbNfy4aYlZod9P9AzWg+l9qBAAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:10 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1d9f468c98de11e3ac70026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 507\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: GET + path: /customers/CUPzVFhtW9y0z3dQ4FujaHm + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy07DMBC88xVRzpS4oSDaKxLiCBIPCYSirW0UQ2JXfiCVKv/OuiSpmwR8yWE9 + O96dmXh3kiQpdcaqmmuTrpJXLCTJbv/FIwk1x6p0VXXa1SohPz20AyHMKKfpEIh1xo0VEqxQsmVp + SZqezW0YWM4KsIhIczJfzEg+m1895GS1WK7I5Vl+eZ5fkJe0b6GaR1oIIRf5Mmhhal3UStpyuIxg + /trrx7vvp5vSPi+35Puc3S9u3Afc1ocrN6WSw/3SUvN33531AmZRIpSZliBtYSxY52VMpZrVYGl5 + uK3mFrzAB5X8/FsOejg+MKa5GbhBhd0OgOgF2sbz6fJ8XPbjDRdGko3Cg6qgik0cUuWk1dvwdGT3 + 2hmcw5hiKlnGyKICYxfDNXkNohoVxVGoGrzrzWfEbxoE9BDvsz6maYaq7TNrsl3vXnvetEYEjRQ0 + K0pVsb1hgd9Bs2BNFuB+0xpwrEF+FkD3IkVojqEjJsbXIkbRYiZ6wz/yDx2C3/YPMSILeB3MWEar + QRqg/jmIEBwhR0vgf+dkzIsONNH9hW8dVJERNO9gIwal2e9r+U8UWsyoFx8vFnWvA2Gam5PmB6jY + 2aOlBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:10 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1dee8a3a98de11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 462\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: GET + path: /customers/CUPzVFhtW9y0z3dQ4FujaHm/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA6VUTYvbMBC9768IOvTUdSTZjq3A0kNg2UuhLdsttBQj2+NGXVs2spwmu+S/V/JH + 7CSGhTYHQ+bzad6beb1ZLFDCVVqj9eKH+bNYvLZfa97tooLrZGtcssnz94MjF/LZxg+RNrapdVmA + Mla0+frp5el+q7+xA35x08/effObPxSoTz+e6khewGVt2FdCcS1KGR2A23oUU3xK4bs6qrUC0PPQ + RB3tQIlMQGpStWrglJoo4BrSiGsLkmLi3WJ6S8JHitceW2PmuIHLcPAdjSlmAgrqJrcpZyOIFZe2 + A3oSNR8TZFPE3RD2k5/neeEY01TpGzhCygLsT3CIttVm81h8ZKsNfNEPsghklv2hgj2PlSezK0qp + LW+ETh9z+YoCNDe2KY+5AKkjUUU8Tc3TLc2IBJ5DKHOIv3J8ds3jVkFm45atkJZv4hxLTzsLfbjA + Z3RlpAZ03kyuzbU2k702V6Vx5FFSpjPOpGykVoep90qomZC/QFVKyFY7DDiNXRLEvktCN/M5c2NO + Xe4zj+M45Dijxg6cJYnrhoDZygt8P0lZmgUkZmxkzMq5Rze7adZ/JsAW2tF8f1pe0RmBKOd1i285 + bKPhYn4XO6Y+5KIQ+o7gd2WW1aDvcI8MSdifSx6NHPeb/s+126YGJum3GnXNjWUwVAp2omys9sal + Q7o0JNq8TtEoE+q/n2tm2J4jq7PJSesuopNCLHS7Ab2yX1uBOyI9Lntfj6WzT4/ghIM+a/AehyH3 + SaZktC3z9gLPNLJRvd+ivTn+BVriQZ2zBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:10 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1e1e7de498de11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 597\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"amount": 1000, "description": "alice"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 40] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards/CCTmM96CeRtHnm7nffw2i9k/debits + port: 443 + protocol: https + response: + body: {string: "{\n \"errors\": [\n {\n \"status\": \"Payment Required\",\n + \ \"category_code\": \"card-declined\",\n \"additional\": \"Account + Frozen\",\n \"status_code\": 402,\n \"category_type\": \"banking\",\n + \ \"extras\": {},\n \"request_id\": \"OHM1e7b911e98de11e38180026ba7cac9da\",\n + \ \"description\": \"R758: Account Frozen. Your request id is OHM1e7b911e98de11e38180026ba7cac9da.\"\n + \ }\n ],\n \"links\": {\n \"debits.customer\": \"/customers/{debits.customer}\",\n + \ \"debits.dispute\": \"/disputes/{debits.dispute}\",\n \"debits.source\": + \"/resources/{debits.source}\",\n \"debits.order\": \"/orders/{debits.order}\",\n + \ \"debits.refunds\": \"/debits/{debits.id}/refunds\",\n \"debits.events\": + \"/debits/{debits.id}/events\"\n },\n \"debits\": [\n {\n \"status\": + \"failed\",\n \"description\": \"alice\",\n \"links\": {\n \"customer\": + \"CUPzVFhtW9y0z3dQ4FujaHm\",\n \"source\": \"CCTmM96CeRtHnm7nffw2i9k\",\n + \ \"order\": null,\n \"dispute\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:11.602336Z\",\n \"created_at\": \"2014-02-18T20:49:11.034529Z\",\n + \ \"transaction_number\": \"W668-207-9321\",\n \"failure_reason\": + \"R758: Account Frozen.\",\n \"currency\": \"USD\",\n \"amount\": + 1000,\n \"failure_reason_code\": \"card-declined\",\n \"meta\": + {},\n \"href\": \"/debits/WDVemMo0SYJlZb5gtoGWgeC\",\n \"appears_on_statement_as\": + \"BAL*example.com\",\n \"id\": \"WDVemMo0SYJlZb5gtoGWgeC\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:11 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM1e7b911e98de11e38180026ba7cac9da\r\n", + "X-Balanced-Host: balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 1410\r\n", "Connection: keep-alive\r\n"] + status: {code: 402, message: PAYMENT REQUIRED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:12.348761Z\",\n \"created_at\": \"2014-02-18T20:49:12.146369Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUWuh1LkaUYpZYDlagLVvdg\",\n \"phone\": + null,\n \"href\": \"/customers/CUWuh1LkaUYpZYDlagLVvdg\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:12 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM1ef79f2098de11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAVpTAQZRV1sBCwFdUlEBHRdUSBEUBlYFBgEEUQxQCVlQAQFRCUMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:13.287810Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:13.287813Z\",\n \"id\": \"CCXKVfCctyCvMohBlNjeuQS\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCXKVfCctyCvMohBlNjeuQS\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:13 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1f5b311698de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMJVQNYClVcBQBRUFUOBhxEUlUPHRdEBQgDUFUEAVNRUgFTDQoHAhFJGQdQDUAHOQ==\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:14.073115Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:14.073120Z\",\n \"href\": \"/bank_accounts/BAYEtPa9T2EZwYwTUb8Fe1c\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAYEtPa9T2EZwYwTUb8Fe1c\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:14 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1fde8f0c98de11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwRYVlcOAwRdUFMPAQNUSBEHC1pKQ0BWAAEHAQ8ECwpRXVFUAABSRhoXBwcPS1Zt\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:15.103930Z\",\n \"created_at\": \"2014-02-18T20:49:14.829713Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUZvBLJWhihR9WtCP99rV6w\",\n \"phone\": + null,\n \"href\": \"/customers/CUZvBLJWhihR9WtCP99rV6w\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:15 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM208e3f9c98de11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VClZVAARYX1MIAQBTVFMOBBtGVh0WEQRWBVsCUw1UCw5QAgdVAFITTRMEBVpEBDs=\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:16.025272Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:16.025275Z\",\n \"id\": \"CC10PUkrra2ZDXS8vedKWjCU\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC10PUkrra2ZDXS8vedKWjCU\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:16 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM20fce7d098de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMJUwJQBFJdAg9RVFsNBQRIQVEACRtGRgkABwFQVlcHWgEAWQECU1JHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:16.769288Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:16.769291Z\",\n \"href\": \"/bank_accounts/BA11GqkQV2ScCRrrwC7lOWvg\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA11GqkQV2ScCRrrwC7lOWvg\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:16 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM217710d298de11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwFUV1MBAwFQVFMGAAdeUB0WAlpeT0ISVwAECQoEVwFWWAIIWAUDVxQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:17.465574Z\",\n \"created_at\": \"2014-02-18T20:49:17.278693Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU12gh8Jyhc4d76s8xlyxGu2\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU12gh8Jyhc4d76s8xlyxGu2\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:17 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM22087aa498de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBlFQAwdRU1oACgBTVVUHBhtGVh0WEQMCAQFRVwBVWl0FA1BXDVcTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:18.321803Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:18.321806Z\",\n \"id\": \"CC13qFt83qktXXktlVasOifc\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC13qFt83qktXXktlVasOifc\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:18 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM225cb8f898de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVAAVwBTC1tQBgJZVFEPBgRIQVEACRtGRgBVUFtVB1UGUwoGDwkEBFJHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:19.167759Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:19.167763Z\",\n \"href\": \"/bank_accounts/BA14nVRQp8ypegb3e7rtu5mE\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA14nVRQp8ypegb3e7rtu5mE\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:19 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM22e3caf098de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwFVVFcICgNWVVQDBA5fUh0WAlpeT0ISUA1UXA8HUFZTDANSWQZRUxQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:19.844136Z\",\n \"created_at\": \"2014-02-18T20:49:19.662864Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU14WHfr9Tnv7ntoLuPgISyr\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU14WHfr9Tnv7ntoLuPgISyr\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:19 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2373e94698de11e3aed402a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBVNQAANYUVQKBQRQUVYEHRdUSBEUVQBfVQYFBA0DWVkCVFFTWkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:20.744321Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:20.744324Z\",\n \"id\": \"CC168NefkzbgZQzx5UP8Fd9m\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC168NefkzbgZQzx5UP8Fd9m\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:20 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM23d20fb298de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMIVwdVC1tVBANTX1sICgZIQVEACRtGRgVTCwReUwEJWwtVWl4MVwtHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:21.676775Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:21.676778Z\",\n \"href\": \"/bank_accounts/BA17cCcWDJIRih4dZMF30Sdo\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA17cCcWDJIRih4dZMF30Sdo\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:21 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM245e489c98de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAw9ZX1MICwBQVFMOBwJVVx0WAlpeT0ISA1xSDAxVU1cADVIGUgYAXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:22.302678Z\",\n \"created_at\": \"2014-02-18T20:49:22.114422Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU17HEaJ6ouBbvqI5oJjE6qX\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU17HEaJ6ouBbvqI5oJjE6qX\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:22 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM24ea054498de11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SB1VWBwRRVFoABQFQVFIFHRdUSBEUV1YCVFsFVwwECwpWUwFcCUMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:23.367768Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:23.367771Z\",\n \"id\": \"CC196JUAXIt6XTXbYuyKn2cn\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC196JUAXIt6XTXbYuyKn2cn\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:23 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM25513e1298de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMAUQNSBVpUAA9XX1YIBQhIQVEACRtGRlVUBVMEBQYIBg5RC1xWUQNHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xZ2lIY1V0T1JQWlRlUVlENk1BZ0x5NFN5RGQ3Nm9xeHc6Tm9uZQ==] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:24.159864Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:24.159867Z\",\n \"href\": \"/bank_accounts/BA1a02yDrAyJbIS8yAMX8zQY\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1a02yDrAyJbIS8yAMX8zQY\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:24 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM25ea5c3c98de11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwdSU1AAAgNVVlMECQFRVh0WAlpeT0ISB15TCAABUAMED1lTAAIDUBQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} diff --git a/tests/fixtures/TestBillingClear.yml b/tests/fixtures/TestBillingClear.yml new file mode 100644 index 0000000000..971d64b026 --- /dev/null +++ b/tests/fixtures/TestBillingClear.yml @@ -0,0 +1,827 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:48:07.781084Z\",\n \"secret\": + \"ak-test-12mzPzGw5rn4PPGHSg0NsEJhDUI89wulG\",\n \"href\": \"/api_keys/AK7za32xfqkVbwzaEE1RFO86\",\n + \ \"meta\": {},\n \"id\": \"AK7za32xfqkVbwzaEE1RFO86\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:07 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf89c9e0c98dd11e3b33602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBVA1JQDg5ZVlQJAQhdUVQFHRdUSBEUUVcAV1AFVA9WXg0HBQQHX0MdQVUDCEVSPA==\r\n", + "Content-Length: 290\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlNxsrzs2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4Ck+wRnoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:08 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf8e106dc98dd11e3a547026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:08.917099Z\",\n \"created_at\": \"2014-02-18T20:48:08.509592Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7zYZN5JawMdFmN6etNq9Sn\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:09 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMf90af35c98dd11e3b33602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9XAFRSBQNQV1IMAwRQUFsbEQVKRBNSUlpVBVEFVVlSXApSUwYEG00RB1IOF1Nq\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:10.353913Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:10.353916Z\",\n \"id\": \"CC7C2tB2lpMonRvN4XtzBBgQ\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7C2tB2lpMonRvN4XtzBBgQ\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:10 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMf98e2c7c98dd11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQDHVQJUAFXC1JVDw9XUFoMAARIQVEACRtGRlQBV1MAWlZVWwhTCVlXC1FHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:11.211112Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:11.211115Z\",\n \"href\": \"/bank_accounts/BA7D0YCbOhKKEIl5n0jCXgZI\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7D0YCbOhKKEIl5n0jCXgZI\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:11 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfa55645498dd11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAAFVU1MNCgVcVFcAAAVeXR0WAlpeT0ISUwpUXQtRAwoHDQQCUQpXURQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /cards/CC7C2tB2lpMonRvN4XtzBBgQ + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA41Uy67bIBDd369ArHsTGzvOY9dkfSv1oapqdWURAwmqDRHgNGnkfy+Dn7lR1Xph + Cc4cZs6cgdsTQrighlm8QT/8AqFb+MP2+ZxX1BVHD6m6LN/1QCnVT4jvIyG2tk5X3HShXWQzUBSt + +Ntj+OUkDXVSq/zKKVBJRKKBQs82t85w7oYq8JVbPARIm5+5kUJy5rnO1HyACsOp4yynziOYRHH6 + HJHnePWFRJt0tYmjWbJI1nHyfTwN1Bpu6xIod3L3hirIgL9KS0eCqqt9EIwvky/23xhTn9j/1JFN + 6pAh1W633BG3JeXpRatP5w/pN/d7uz18HI+edK/SyoFJ8dg8r+atjIo76vcmphl+8M0P6bQStYVF + 30LwVLpr7vSvEDEFKGO+UzYnAGz1BRH8YPjRcAHwPAzX/N96ukPvK4QSQhJaavS+dHpahh9DDiVM + zfJlw3YMpJgk6IVKhT6HKZpSrfO2PFJP2gNlXmgGIF5HJI7uOqJr5cy1D4DED8KFVAduTkaqMHur + YimilCRJtqBitSoSnmSFiMgyzXhBs1SwQiQZYwXhsUjWPpwXa5EIwaIFJdlyNBzuQ1dgfyuxGhuC + AR8GGLeaUddV5CcYtWQE6hDTSGmHwkGz1r3GS3kF+6GDk/vdPg8z8DE/6jK8FL2tt+DuTLIm+Nzh + 7Qz1vPFl8KxuYecds99oOp0difG9dH9J1GG+0Oap+QNEdLO5wAQAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:11 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfaf003ec98dd11e3b00f026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 553\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"cvv_match": null, "created_at": "2014-02-18T20:48:10.353913Z", "name": + null, "links": {"customer": "/customers/CU7zYZN5JawMdFmN6etNq9Sn"}, "avs_street_match": + "yes", "expiration_year": 2020, "brand": "Visa", "cvv_result": null, "number": + "xxxxxxxxxxxx1111", "updated_at": "2014-02-18T20:48:10.353916Z", "expiration_month": + 10, "cvv": null, "meta": {"region": "Confusion", "city_town": "", "address_2": + "Box 2"}, "avs_result": "Street address and postal code do not match.", "fingerprint": + "8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267", "is_verified": + true, "avs_postal_match": "no", "id": "CC7C2tB2lpMonRvN4XtzBBgQ", "address": + {"city": "Balo Alto", "line2": null, "line1": "123 Main Street", "state": null, + "postal_code": "90210", "country_code": null}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 777] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /cards/CC7C2tB2lpMonRvN4XtzBBgQ + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUy47TMBTdz1dYWTNt4qR5dEcrsUBqJRhAMAhFbmy3FoldHKfTzij/Pr55dyog + i0jxuec+zrnxyx1CTkY0LZ0l+mk/EHpp3nB8OqUFMdnBQrLK83c9kAv5G+L7SIitSqMKpu2ps/4a + Pf943C4+kqcN/VBsQ2a2f5IH6XT8ekgkScHeJmfno9DECCXTCyOQELvYHSjkVKal0YyZoTfnwkpn + CBBlemJacMGo5RpdsQHKNCOG0ZQYaBO7XnDv4nsv/oLdZRAvPXfmL/zE8x/HbKCBZmWVA+VKhJ0m + Eio430RJRoKsil0rw3nyePYZY6oj/Wcf3iwJojCMJ32IptR6Ha2xWeH8uFHy82kbfDfPq9X+05h6 + ol6hpAHrvFE8O83bMQpmiD2bWKnZ3orflFOSVyV89BKC08JcUqOemogpQCi1SpUpBmClzgjfGn7Q + jAM8b1Zu/v95uqTXHUILTRGSK/Q+N2rahl1OBi1MzbJtw7EHJA/7aEOERA/NFk2ppbG23FKPygJ5 + mikKoJO42HOvFFGVNPrSB0Dhm03nQu6ZPmohm92Ls4i7Afb9cEF4HGc+88OMuzgKQpaRMOA0435I + aYaZx/3EhrMs4T7n1F0QHEaj4fA/dA32/6ojR0EcwIcFdtqZUacqshuMWjKC6RBVSCqDmkSz1r3a + jvIL7AcFJ399e2nMwMf0oPLm/uhtfWncnQlaNz53eLtDPW9yX8z7y6Ocd8z+oO7m7EiU7YT5S6EO + s43Wd/Ur6Iuai9YEAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:12 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfb1e8bcc98dd11e3a547026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 584\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7zYZN5JawMdFmN6etNq9Sn + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUsU7DMBDd+YooM23SqIWmKxIDEl2AgSIUXW2jWCR2sR1QqfLvnEuSuknAS4a7 + d8++9158uAiCkFTayJIpHa6CFywEweH4xZaAkmFVVEVx2dYKLt4ttAUhTMtKkT4Q65RpwwUYLkXD + 0pDUHVu1o2AYzcAgIkzi2XwSJ5PZ8jGJV/PlKl5O09l1nKabsBshinlGFnG6SBNnhMptVkph8v4y + nNpjb56uv58368UdfN3T23J9xcz6I30QpzN3uRT9BcNcsTc7HnUKRn4mFJrkIEymDZjKChkKOSnB + kPx0XMkMWIlPOtkN9gxUfwGgVDHd84Nws+8B0Q00jiXj5dmwbK/X3xhJdhIbRUYkHWkSWQmj9m53 + YPi20ngPrbOxbGktsgK0mffXZCXwYlDkZ7Gq8axXmxK7qRPRU8CnXVDDCFU7plZHh86+pl83RjiD + BBTNclnQo2GO4c4wp3Xk4H7z6nBsQbxnQI4ieWjOoQMmyrbcR9FgRmbdf/IPHZwf9w8xPAtYHfRQ + RqNAaCD2QfAQnCEHS+CPVwmfFy1oZPoTXzsoPFdQrIUNGKSiv+/lP1FoMINZfL6o170WhGmuL+of + 5RtiTqcFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:12 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfba7669a98dd11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 464\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA6VUXWvbMBR9768QetjTmtiy4ySFMpbAHgYNbN3G1jGMakmtmC1lkpwmDfnv05Xt + 2Gn3AZsfAtH9Ovfcc+/+DCFcUMMsvkBf/R+E9uEXnjebvKKuuPcmVZfly85QSvUd/DtP8K2t0xU3 + /hUvP04fv9ysJm/pwxV7U60y7lY/5tcKt/GHYyJFK/40Od+upaFOapXvOIWEJCLRMYRubG6d4dwd + seEdt/joIG2+4UYKyZmPdabmR1NhOHWc5dQBTBLF6XlEzuPZBxJdpLOLOBolk2QeJzd9NuDAcFuX + EHJCwq2hCirgT9LSPkDV1W1Dw3bwxf7rfeo1+yOOeDRPp1k2G+CQodRyOV0StyDl+kqr95tV+tk9 + LhZ37/rUA/YqrRyMLu7J8908baPijvq3wSgNv/Pkh3JaidrCn45CmLR0u9zph+AxNFDGPFM2J2BY + 6C0izwd+b7gA8zhIbvz3ftqkpwgBQihCS41el04PYXhxcoAwHJaHDc8xBMUkQVdUKnQdVDQMtc6P + 5XnoWntDmReagRHPIxJHJ4zoWjmz6xyg8DOlC6nuuFkbqYL2ZsVURClJkmxCxWxWJDzJChGRaZrx + gmapYIVIMsYKwmORzL07L+YiEYJFE0qyaT9w2IcWYLerWPWEYLAfBYybnlHLKvIKRk0wgu4Q00hp + h0KiUTO9g2/lG4wfnygFl9SGTsbd5vtp/mbvm2G/KmUl3WUcvdBCWO4uOw6x4tvT7cK9TNqz8u/J + Q1UPtNsC3FT3L+1a4LXhG6lrOGi9ZrDTfuYQ10gfC2n+v2FPYzh+oMbBBW0O8IjxW+kARrce+7Al + I8kO49bWgmnehzd3MIY2qrMeWq20RSA0v9dlOPi/KDSwA9qzw0/rP8qoIgYAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:13 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfbef518098dd11e3af93026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 673\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, '0'] + host: api.balancedpayments.com + method: DELETE + path: /cards/CC7C2tB2lpMonRvN4XtzBBgQ + port: 443 + protocol: https + response: + body: {string: ''} + headers: ["Content-length: 0\r\n", "Content-Type: application/json\r\n", "Date: + Tue, 18 Feb 2014 20:48:13 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: + OHMfc2d2fd298dd11e39e06026ba7f8ec28\r\n", "X-Balanced-Host: balanced-api-01\r\n", + "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", "X-Balanced-Merchant: + TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: 1.1\r\n", "X-Balanced-Software-Build: + dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", "Connection: keep-alive\r\n"] + status: {code: 204, message: NO CONTENT} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7zYZN5JawMdFmN6etNq9Sn + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUsU7DMBDd+YooM23SqIWmKxIDEl2AgSIUXW2jWCR2sR1QqfLvnEuSuknAS4a7 + d8++9158uAiCkFTayJIpHa6CFywEweH4xZaAkmFVVEVx2dYKLt4ttAUhTMtKkT4Q65RpwwUYLkXD + 0pDUHVu1o2AYzcAgIkzi2XwSJ5PZ8jGJV/PlKl5O09l1nKabsBshinlGFnG6SBNnhMptVkph8v4y + nNpjb56uv58368UdfN3T23J9xcz6I30QpzN3uRT9BcNcsTc7HnUKRn4mFJrkIEymDZjKChkKOSnB + kPx0XMkMWIlPOtkN9gxUfwGgVDHd84Nws+8B0Q00jiXj5dmwbK/X3xhJdhIbRUYkHWkSWQmj9m53 + YPi20ngPrbOxbGktsgK0mffXZCXwYlDkZ7Gq8axXmxK7qRPRU8CnXVDDCFU7plZHh86+pl83RjiD + BBTNclnQo2GO4c4wp3Xk4H7z6nBsQbxnQI4ieWjOoQMmyrbcR9FgRmbdf/IPHZwf9w8xPAtYHfRQ + RqNAaCD2QfAQnCEHS+CPVwmfFy1oZPoTXzsoPFdQrIUNGKSiv+/lP1FoMINZfL6o170WhGmuL+of + 5RtiTqcFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:14 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfc5e132298dd11e38180026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 464\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:14 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMfc896cfc98dd11e38ca6026ba7c1aba6\r\n", + "X-Balanced-Host: balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 349\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7zYZN5JawMdFmN6etNq9Sn/cards?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:14 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMfcca9aba98dd11e3ac70026ba7d31e6f\r\n", + "X-Balanced-Host: balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 349\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:15.542071Z\",\n \"created_at\": \"2014-02-18T20:48:15.315282Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU7HDjeKe3qNcWTT3heUXiZA\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:15 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMfd169ea698dd11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VBltSBQJYUVEBBAZSWVYCBhtGVh0WEVEFBVICUFkDDwxSVlEBCFUTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:16.787504Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:16.787507Z\",\n \"id\": \"CC7JhfoYFAQ62XO4Pgczwfi8\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC7JhfoYFAQ62XO4Pgczwfi8\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:16 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfd82923c98dd11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVwIVARYBVJUDgRRVlQAAgJIQVEACRtGRggFCgZVAFsBUltbDlsMAFdHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:17.586488Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:17.586491Z\",\n \"href\": \"/bank_accounts/BA7Kbx4R5Ze6oS79GVWBb3tu\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA7Kbx4R5Ze6oS79GVWBb3tu\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:17 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfe36713098dd11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwVRXlcPBAlTUlsEBg5eXB0WAlpeT0ISU11UW10NUQIADABQV1ZWUBQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /bank_accounts/BA7Kbx4R5Ze6oS79GVWBb3tu + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTXW+bMBR9769APLcBm0/nLZG2TmvVSW21Sp0mZGyzWiEmMmZKFPHfZ1OYgaRS + +uKHew6Hc++593jlOG6OxSbDhFSNULW7dH7pouMcu1fDsmoUF38y0WxzJjXuAgj8EKYpdK8HUqch + 8JYZ/OXL/f2T83X1ePvDWa8e7pyHlWX2P8rUYdeRyRsjG61vGYPMt2rLpPMdHyxUcrExFgdz2h5p + amWIuiqashwczfrK/jLJC06w4pXoqb339n8TBIuMSEa50gwlG2YRybBiNMMGcaEPwhsf3oD0GfrL + MF2CZBGlcZimr9ZqoXticie56L6hmMQRCCmiNMCA0AQTBCMaJSFifuCnBGq8wDAhkR9jVuQ+QTkE + MQBFgVCMrHCzoxd4QWDk5U2ywpjwJlF761Vyl+/Dx+iVxdVTgm5/vqzzQDX2X1umsBm3ndEQn92G + /X4PgwCPEqZUsnoeE1eH04h0ngyeL4PTcq1046flXaWBMiMVPQN2Wy0PY/Rs7pTlXewFLmubO6dm + bB/OqVNq9fvbbIo73c7pXS3eF8tMZR7DcZLKgtPWG8jvCzhTGtMne32h+PgU6j62uVl7VK43XFjt + zZwOQHtepBvphZ567uf67WY56Wbu8MNRta4OrL1q/wETZKsGAQUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:18 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfecee12298dd11e38180026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 496\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "bank_name": "WELLS FARGO BANK NA", "account_type": + "checking", "name": "Homer Jay", "links": {"customer": "/customers/CU7HDjeKe3qNcWTT3heUXiZA"}, + "can_credit": true, "created_at": "2014-02-18T20:48:17.586488Z", "address": + {"city": null, "line2": null, "line1": null, "state": null, "postal_code": null, + "country_code": null}, "updated_at": "2014-02-18T20:48:17.586491Z", "meta": + {}, "account_number": "xxx233a", "fingerprint": "dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969", + "can_debit": false, "id": "BA7Kbx4R5Ze6oS79GVWBb3tu"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 581] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /bank_accounts/BA7Kbx4R5Ze6oS79GVWBb3tu + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTW2/aMBh976+I8rxC7Nx5g11ajYpJLR0T0xQ59pfhAQlznAqE8t9np2QOKZ26 + lzz4fDk+l8/HK8uyU5KvE0JpUeWytEfWd3VoWcfmq2BRVJLnP5O82qYgFG4jjBwPRxG237VDDUdO + tqDxxce7uwfr0/j+5os1Gc+m1mxsJk8XJfKwa4bpCuha8ZuJlua22IKwPpODgTY8X2uJrTglj1al + 1IOa6/1jePvhF0zB/T2ji/ncXcHjN740t/fcJk8geMYpkbzIFUFebTYnR/Vfa5TkCRXAuFQTUlRg + EAFEAkuIRmzsIO/awdcommNn5EUjFA78KPCiaGkMZMopiJ3gefMPIzTwkcdixlyCKAsJjbHP/NCL + wXGdiGKFZwSH1HcCAlnq0DjFKEAoy+I4iA1xtWP/1BINPOzEYdDRshKQaRHDswUYTsbhNN179/4S + guIhjG++LiapKytz1xYk0SWYjNpSzY7s93vsuqTTO2MCyn55XB5OubepqopUy4AvH6OXx6VUxl8e + 7woFbBJasAtgs+vi0EUv9s4gbWrPyKY0vXOmY3s1p4apVt8f2pN209nZ89c2eF4snUq/huNZKwPO + 6mE7/BxVj6k7frbXbyTvPoXyVFtfbOepDdt3Vw57SlugvkzSRPpGTafZ//PbZHnmpq/w1ahqWxVW + X9V/AJV2AQ4XBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:18 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMfefb099698dd11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 525\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7HDjeKe3qNcWTT3heUXiZA + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUQW7CMBC89xVRzqUhAQTiVrWHSpV6ArVqVUWL7SouiU1tpxJC+XvXkASThPqS + w+7s2Dsz8eEmCEJSaiMLpnS4DD6wEASH4xdbAgqGVVHm+W1Ty7nYWmgDQpiWpSJdINYp04YLMFyK + mqUmqVq2ckfBMJqCQUSYjOPpaJyM4sUqGS+ni2U8u5tNk/E8fg/bEaKYZ2QSz5JF4oxQuUkLKUzW + XYZTe+zDev70+M2e2eTnhbyuVpOMrd/4+/35zF0mRXfBMFPsy45HrYKRnwmFJhkIk2oDprRChkKO + CjAkOx9XMANW4rNOdoM9A9VdAChVTHf8INzsO0B0A41jyXA57pft9bobI8lOYiNPiaQDTSJLYdTe + 7fYM35Qa76F1OpQtrUWagzbT7pqsAJ73ivwiVhWe9WlTYjd1InoO+F0b1DBC1Y6p1dGhta/uV7UR + ziABRdNM5vRomGO4M8xpFTm4U14djg2IbQrkKJKH5hLaY6Jsw30UNWZg1v0nr+jg/LhXxPAsYHXQ + fRmNAqGB2AfBQ3CB7C2BP14pfF40oIHpX3ztIPdcQbEG1mOQip7ey3+iUGN6s/h8Ua97DQjTXN1U + fzTlU32nBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:19 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMff51aefe98dd11e3a547026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 465\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61Uy27bMBC85ysEHXpqbJF6GwgKu48ETeACiVMXLgqBIqmatSy5FBXYMPzvJWkp + khyryCEXAdpZ7s7OLHZ/YRhmjLJVhDDOy0wU5sj4KYOGsddfCfO8FCz7HWXlOqZc4iaAwHJgEEDz + fZ2ka2RoTRU+/3x392B8Gd9ffzMm4+mtMR03mVWjSOw2OhkvKV7J+k1GXeYmX1NufEW7BkpZtlIU + a3KSHi4LoRJVrY+P/s2nP/SW2n+neD6b2Uv6+IMtmu4n00ZPlLOEYSRYnskCWZmm1USH59EwyiLM + KWFCZghe0gbhFAlKIqQQE1rAubTgJQhm0Bo5wQj4AzfwnCBYNAMkclLKN5xl+g1B2HOBQ0JCbAQw + 8REOoUtc3wmpZVsBhhJPEPSxa3mIJrGFwxgCD4AkCUMvbAqXG/JfLsHAgVboey0uS04TRWLYWYDh + ZOzfxlvn3l1QL3/ww+vv80lsi7LptaYCKRMajWpTmx3ZbrfQtlHLd0I4LU7NY2JX6V6rKi2SLlN4 + PgxehgshB38Z3uQSSCOckzOg3nW+a6NnfSc01rYnKC0a3xlRsvXqpCsd5PeXmsms1dJhM0WFdn5Y + 720x7Nvari8fUrZm4gpY7/IkKai4siptzYxuVUm1vEcRzWdn366J7i67AKvqcWQhI3Vgw+kTy0vl + cIuKyKUL6l31LGH87QSQkuodVBvTugvdizbQJipap5u+7yz+gJHDsMqtyHbx9l/ncryydvvYFLV5 + 3RbtY9bakBOiddahp4g+Vq8kdbxsPXR6J9ZiduYZnnDsfXowlWsXh39Zv9B7ewYAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:19 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMff776cac98dd11e39e06026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 619\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, '0'] + host: api.balancedpayments.com + method: DELETE + path: /bank_accounts/BA7Kbx4R5Ze6oS79GVWBb3tu + port: 443 + protocol: https + response: + body: {string: ''} + headers: ["Content-length: 0\r\n", "Content-Type: application/json\r\n", "Date: + Tue, 18 Feb 2014 20:48:19 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: + OHMffa89f1698dd11e3ac70026ba7d31e6f\r\n", "X-Balanced-Host: balanced-api-06\r\n", + "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", "X-Balanced-Merchant: + TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: 1.1\r\n", "X-Balanced-Software-Build: + dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", "Connection: keep-alive\r\n"] + status: {code: 204, message: NO CONTENT} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7HDjeKe3qNcWTT3heUXiZA + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUQW7CMBC89xVRzqUhAQTiVrWHSpV6ArVqVUWL7SouiU1tpxJC+XvXkASThPqS + w+7s2Dsz8eEmCEJSaiMLpnS4DD6wEASH4xdbAgqGVVHm+W1Ty7nYWmgDQpiWpSJdINYp04YLMFyK + mqUmqVq2ckfBMJqCQUSYjOPpaJyM4sUqGS+ni2U8u5tNk/E8fg/bEaKYZ2QSz5JF4oxQuUkLKUzW + XYZTe+zDev70+M2e2eTnhbyuVpOMrd/4+/35zF0mRXfBMFPsy45HrYKRnwmFJhkIk2oDprRChkKO + CjAkOx9XMANW4rNOdoM9A9VdAChVTHf8INzsO0B0A41jyXA57pft9bobI8lOYiNPiaQDTSJLYdTe + 7fYM35Qa76F1OpQtrUWagzbT7pqsAJ73ivwiVhWe9WlTYjd1InoO+F0b1DBC1Y6p1dGhta/uV7UR + ziABRdNM5vRomGO4M8xpFTm4U14djg2IbQrkKJKH5hLaY6Jsw30UNWZg1v0nr+jg/LhXxPAsYHXQ + fRmNAqGB2AfBQ3CB7C2BP14pfF40oIHpX3ztIPdcQbEG1mOQip7ey3+iUGN6s/h8Ua97DQjTXN1U + fzTlU32nBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:19 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHMffcaca3c98dd11e38ca6026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 465\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:20 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHMfffb7e2a98dd11e3a977026ba7cac9da\r\n", + "X-Balanced-Host: balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 373\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0xMm16UHpHdzVybjRQUEdIU2cwTnNFSmhEVUk4OXd1bEc6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: {string: "{\n \"meta\": {\n \"last\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0\",\n + \ \"next\": null,\n \"href\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0\",\n + \ \"limit\": 10,\n \"offset\": 0,\n \"previous\": null,\n \"total\": + 0,\n \"first\": \"/customers/CU7HDjeKe3qNcWTT3heUXiZA/bank_accounts?limit=10&offset=0\"\n + \ },\n \"links\": {}\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:20 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM0026e3b298de11e3af93026ba7cac9da\r\n", + "X-Balanced-Host: balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 373\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} diff --git a/tests/fixtures/TestBillingPayday.yml b/tests/fixtures/TestBillingPayday.yml new file mode 100644 index 0000000000..a789538115 --- /dev/null +++ b/tests/fixtures/TestBillingPayday.yml @@ -0,0 +1,1231 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:49:52.799564Z\",\n \"secret\": + \"ak-test-zSLHYx06LNlGCKK5ffomz0St38oaMWmX\",\n \"href\": \"/api_keys/AK1GdaDxF9QcLMZziRWLFAko\",\n + \ \"meta\": {},\n \"id\": \"AK1GdaDxF9QcLMZziRWLFAko\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:52 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3735567c98de11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBSAlBTBQdSV1ELBwdQUFAbEQVKRBMFB1cFBloEVwwEDVsNCwJTG00RB1IOF1Nq\r\n", + "Content-Length: 289\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlPx5Tzq2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4CJ/EtRoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:53 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3778524298de11e3baa9026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:53.642532Z\",\n \"created_at\": \"2014-02-18T20:49:53.452190Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1GWFI4RpSvT4RCEZy6HLuw\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1GWFI4RpSvT4RCEZy6HLuw\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:53 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM379866f498de11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SB1RVAA9YX1cBAwNRV1YDBBtGVh0WEQYFUVFUW14GDAlWVldcW1ATTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:54.634284Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:54.634286Z\",\n \"id\": \"CC1IgLzM76CSddz4hH9jpOzg\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1IgLzM76CSddz4hH9jpOzg\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:54 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM38049f2c98de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMLWQBTAVJdBwVYVVALBhxEUlUPHRdEUlMGCldeAlICUFlTXAxVURFJGQdQDUAHOQ==\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:55.390116Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:55.390119Z\",\n \"href\": \"/bank_accounts/BA1J7S3tXbTWfrkjgCws4BA3\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1J7S3tXbTWfrkjgCws4BA3\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:55 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3885d8f898de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAg5TVlcLCgdWUVMCAg9WXAcaE1NeW04QQABSXVwAUwUEXABSVAoHUlcVTUYFWV9DATw=\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:56.026727Z\",\n \"created_at\": \"2014-02-18T20:49:55.821628Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1JC8ZEmz4NcLuU0mkmrydV\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1JC8ZEmz4NcLuU0mkmrydV\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:56 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3901b68a98de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBFJUAQZZXlQBBQldVlIAHRdUSBEUAlsHUFEEUAgHCgsMUQNcDEMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:56.892597Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:56.892600Z\",\n \"id\": \"CC1KNIifiuuufCUm5bZTxMKY\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1KNIifiuuufCUm5bZTxMKY\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:56 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3959e23898de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVABWQhWC1JRBAZSX1EAAQJIQVEACRtGRldUV1ZWVFUAWg9aAFkHAAFHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:57.643437Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:57.643442Z\",\n \"href\": \"/bank_accounts/BA1LEVbty7dDYBkNhQDWlXVt\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1LEVbty7dDYBkNhQDWlXVt\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:57 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM39dea70c98de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAgBWUVYMAgFSUVcPAgNfUh0WAlpeT0ISUAxXCQ8HBVJSClMHVFIGABQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:58.246266Z\",\n \"created_at\": \"2014-02-18T20:49:58.048630Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1M7hklDz8ib6ne6aSq3eWq\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1M7hklDz8ib6ne6aSq3eWq\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:58 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3a55265c98de11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1JdAwFZXlsJCghcVFACBRtGVh0WEQdQVAEFV10AXFsBBQtVW1gTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:59.187362Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:59.187365Z\",\n \"id\": \"CC1NnMLfuqtuPaFGdIIoLURs\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1NnMLfuqtuPaFGdIIoLURs\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:59 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3ab3a7f498de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMKUAhVBFJQBgJUUVsOAgNIQVEACRtGRlMFVlADAgYJVFkHCggFAlBHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:59.925053Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:59.925058Z\",\n \"href\": \"/bank_accounts/BA1OdQHbTTrMso5k5iPNW9O8\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1OdQHbTTrMso5k5iPNW9O8\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:00 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3b34ae4e98de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwNVVlEICwlVUFoOBABTVh0WAlpeT0ISVl1WW14ACwNQDFQBVAFTXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:00.673748Z\",\n \"created_at\": \"2014-02-18T20:50:00.438077Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1ONTI3pWG45MFCR9cRVXZI\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1ONTI3pWG45MFCR9cRVXZI\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:00 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3bc0f21498de11e3aed402a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VB1pdBg5RUlcKBQVTVVUHBhtGVh0WEVdSWlQHU10DDQ4CBAFTWlQTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:01.842070Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:01.842073Z\",\n \"id\": \"CC1QmCi7tysOlHTSkmW0wlDy\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1QmCi7tysOlHTSkmW0wlDy\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:01 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3c312bc498de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIAUANQAlNWDgVSUlsOAANIQVEACRtGRlMAAVMCV1UDVlsHXA8HBwtHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:03.103187Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:03.103192Z\",\n \"href\": \"/bank_accounts/BA1RNBRvys4BAEW7fkqYEmhV\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1RNBRvys4BAEW7fkqYEmhV\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:03 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3cdfead898de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKDwJSVVUBAgRUV1ACHRdXXAkaE0BWU1AJWgABCF0MCwVSAFMCQx9CAldbEgM+\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:03.905102Z\",\n \"created_at\": \"2014-02-18T20:50:03.619335Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1SnJQDg79ZgFOJCNbP6LNI\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1SnJQDg79ZgFOJCNbP6LNI\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:04 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3d9d82c898de11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UBFRdAwNQVFULBghUUlAFHRdUSBEUUVReW1VWUg1TCwtSBAdUWEMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:04.958708Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:04.958712Z\",\n \"id\": \"CC1TRTKA45d8JooXc65DEqb6\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1TRTKA45d8JooXc65DEqb6\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:05 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3e19a8bc98de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVILVAZRB1NdBQZQU1ELBwRIQVEACRtGRgEBVwYEUwBUB11RD11WC1BHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:05.977437Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:05.977441Z\",\n \"href\": \"/bank_accounts/BA1V1TQO31jxJ9LOhfRTxb3W\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1V1TQO31jxJ9LOhfRTxb3W\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:06 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3eb3287098de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAQdUVlcLAwdTVVQPCQBUVR0WAlpeT0ISB14ACFpWAFIECFlQAwVXAhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:06.782188Z\",\n \"created_at\": \"2014-02-18T20:50:06.517098Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1VDKJOoHSrPKbcBjs5yq5Y\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1VDKJOoHSrPKbcBjs5yq5Y\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:06 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3f600db098de11e3ac3202a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UA1RdAgBYX1cKAAJVVlUAHRdUSBEUVltQVQBUA1xQWggNUVVSDkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:07.890069Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:07.890072Z\",\n \"id\": \"CC1XaTZsVrs47Qa0FE8nbvvg\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1XaTZsVrs47Qa0FE8nbvvg\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:07 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3fd2cde698de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIPVQBRAlJWDgNVVFAAAQhIQVEACRtGRlNTVwBXUlZTBllbDgwBAwNHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:08.725108Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:08.725111Z\",\n \"href\": \"/bank_accounts/BA1Y7xsD9Vf51GLzIcCC759M\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1Y7xsD9Vf51GLzIcCC759M\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:08 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM40725aaa98de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwJVVlcJAgRTU1EFAQJTUx0WAlpeT0ISAAhUAQwMClJSX1dQBFYAABQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:09.473482Z\",\n \"created_at\": \"2014-02-18T20:50:09.269059Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1YJSta7OGJVpvHhqAQIY4D\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1YJSta7OGJVpvHhqAQIY4D\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:09 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM410585be98de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAldTBQJRVlULAAJXWFUDBxtGVh0WEQADVAMFVwpQDAFXUQNWDAMTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:10.439221Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:10.439224Z\",\n \"id\": \"CC203aK1sTd2dnNzfoMjmkFN\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC203aK1sTd2dnNzfoMjmkFN\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:10 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM416428b298de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMAVwJZBlpSBgNVVVIJBgJIQVEACRtGRlVUAFJSAAdUVglUWQsFCwZHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:11.406521Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:11.406526Z\",\n \"href\": \"/bank_accounts/BA218GcLeCjrpm5BWfE664Ao\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA218GcLeCjrpm5BWfE664Ao\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:11 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM420cb53698de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwBXVFAMCwFTVFIDCQ9UXB0WAlpeT0ISUQxaCwkCAgZVClRUAlIBVBQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:12.151590Z\",\n \"created_at\": \"2014-02-18T20:50:11.916067Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU21IoZWjIJT1RRGgjBGknhS\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU21IoZWjIJT1RRGgjBGknhS\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:12 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4297d90e98de11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAFVdDw5YUFAPBQBXVlQbEQVKRBNTC1oAW1BVVg0GDAwNCwQDG00RB1IOF1Nq\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:13.231425Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:13.231428Z\",\n \"id\": \"CC23bHbB1vGFV7lOvP0nVFxs\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC23bHbB1vGFV7lOvP0nVFxs\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:13 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4307764c98de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIKVgVVAVJVAAFRV1YOAQVIQVEACRtGRgZUUVQHW1cGUABWCl4GB1FHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:14.240044Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:14.240049Z\",\n \"href\": \"/bank_accounts/BA24jeOVD38iQVUDkxTRsQas\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA24jeOVD38iQVUDkxTRsQas\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:14 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM43abf14098de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAAFVX1YAAwBUUFoEAAdTUR0WAlpeT0ISAwBVAVsNCgNTDFYGBwUEXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:15.066275Z\",\n \"created_at\": \"2014-02-18T20:50:14.839481Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2509JHJ6j5chX7j7yLrsJU\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2509JHJ6j5chX7j7yLrsJU\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:15 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4456438e98de11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UB1RWBQNQVVMABglXVlcbEQVKRBMCBgQHBlsGUgEBAVpVBVIEG00RB1IOF1Nq\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:16.295586Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:16.295589Z\",\n \"id\": \"CC26CTzzhsxKaYhbkoPIxfCi\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC26CTzzhsxKaYhbkoPIxfCi\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:16 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM44d7a14098de11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHV0IWABWAltUAwJQUVYPCwFIQVEACRtGRgFQBFJSBlBUBFlRWwtQVwJHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC16U0xIWXgwNkxObEdDS0s1ZmZvbXowU3QzOG9hTVdtWDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:17.233322Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:17.233325Z\",\n \"href\": \"/bank_accounts/BA27GZLVeCVcl9RYJWUyhaFy\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA27GZLVeCVcl9RYJWUyhaFy\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:17 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM458bd16098de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwRRU1IBCgZWUlMHBg5XSBEHC1pKQ0AAUV0EAVsBAgUGD1kFAFFWRhoXBwcPS1Zt\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} diff --git a/tests/fixtures/TestBillingStoreError.yml b/tests/fixtures/TestBillingStoreError.yml new file mode 100644 index 0000000000..59a097d776 --- /dev/null +++ b/tests/fixtures/TestBillingStoreError.yml @@ -0,0 +1,319 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:48:20.738688Z\",\n \"secret\": + \"ak-test-oZOSnUT3y4xOmznOOF2C1yThSgmtBZwP\",\n \"href\": \"/api_keys/AKFzVJ3a33NhBbts1b7PsW\",\n + \ \"meta\": {},\n \"id\": \"AKFzVJ3a33NhBbts1b7PsW\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:20 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM00523a5898de11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBVBFddBQdTV1ABAQhWU1AAHRdUSBEUClBTVgAEUVtSWVoMBVBcXEMdQVUDCEVSPA==\r\n", + "Content-Length: 285\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlNxsrzs2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4Ck+wRnoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:21 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM00a9d13c98de11e38180026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:21.882467Z\",\n \"created_at\": \"2014-02-18T20:48:21.598428Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1DDhl2syN3dF13FqxRFOE\",\n \"phone\": + null,\n \"href\": \"/customers/CU1DDhl2syN3dF13FqxRFOE\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:22 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM00d1720098de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VBFRQBg9RVlcPBQBTVVAFHRdUSBEUUgdWVQcDUFkHXg0NUQYHWkMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:22.704406Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:22.704409Z\",\n \"id\": \"CC2SwLEGKRtNlrLjwjttzfV\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2SwLEGKRtNlrLjwjttzfV\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:22 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0141399698de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVAMWARYB1pSDwFQVVUMBAVIQVEACRtGRlIPUAZUAVdRVV5QC1sHAQBHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:23.656626Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:23.656629Z\",\n \"href\": \"/bank_accounts/BA3WOrGRMWxmoZQ30R5LRhM\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA3WOrGRMWxmoZQ30R5LRhM\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:23 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM01c5111c98de11e3aed402a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAAVUX1IICglTUlsHBgNRVR0WAlpeT0ISBAoADglXBVAADlNQBVZQXBQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:24.349791Z\",\n \"created_at\": \"2014-02-18T20:48:24.137288Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU4uJ6DXueGGoQURVL7kCpp\",\n \"phone\": + null,\n \"href\": \"/customers/CU4uJ6DXueGGoQURVL7kCpp\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:24 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM025b962898de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SClFQBQJRVlILBANWWFMbEQVKRBMAAQFRVwAHBloDCFoABwpUG00RB1IOF1Nq\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:25.365526Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:25.365529Z\",\n \"id\": \"CC5R35ixfj9UlAgntADmm26\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC5R35ixfj9UlAgntADmm26\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:25 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM02bafe0698de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIKUAlXBlpcBA9WVVYLBgJIQVEACRtGRlcPCwZQVVJVUA4BXFkHVwFHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC1vWk9TblVUM3k0eE9tem5PT0YyQzF5VGhTZ210Qlp3UDpOb25l] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:26.282638Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:26.282641Z\",\n \"href\": \"/bank_accounts/BA6U4EXbepvvMZD0o8TGNPN\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA6U4EXbepvvMZD0o8TGNPN\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:26 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM034c84a298de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAA5RV1UIAwNSUVoAAQRQVR0WAlpeT0ISU15VXg5QCwtQAFRUBQJVUxQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} diff --git a/tests/fixtures/TestBillingTransfer.yml b/tests/fixtures/TestBillingTransfer.yml new file mode 100644 index 0000000000..cfa6bb196b --- /dev/null +++ b/tests/fixtures/TestBillingTransfer.yml @@ -0,0 +1,1231 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:50:17.846292Z\",\n \"secret\": + \"ak-test-2Ih2s8UG6N8MeXuKCPgX7gnhZ9M1MaUvE\",\n \"href\": \"/api_keys/AK28nMiphGCU2xGfIykP2utY\",\n + \ \"meta\": {},\n \"id\": \"AK28nMiphGCU2xGfIykP2utY\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:17 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM461fd81098de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBWAldTAAdTVVIIAghUV1QDHRdUSBEUC1dQVFQABl5aXVpSUVcBAUMdQVUDCEVSPA==\r\n", + "Content-Length: 290\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlPx5Tzq2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4CJ/EtRoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:18 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4686996098de11e38915026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:19.165244Z\",\n \"created_at\": \"2014-02-18T20:50:18.912877Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU29A8zMbYgTNn27UnuMKCYG\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU29A8zMbYgTNn27UnuMKCYG\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:19 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM46c1ae2e98de11e3aed402a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UAlBWAABQV1EPAAFdUlEBHRdUSBEUB1cFVQMGW1sDWl4FUwIBCEMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:20.274536Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:20.274540Z\",\n \"id\": \"CC2b64biWGQRqWYHCSAT0atY\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2b64biWGQRqWYHCSAT0atY\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:20 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4735bff898de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIPVQNVAVpcAQNYUFoMCwJIQVEACRtGRgMGVgcEAQcHBlpRCFlQBgFHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:21.167229Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:21.167232Z\",\n \"href\": \"/bank_accounts/BA2c5im0jiujWGtRRWKp3bIq\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2c5im0jiujWGtRRWKp3bIq\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:21 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM47d7521e98de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAA9UXlYMCgFVWVIDAA5fVh0WAlpeT0ISVw4DC1kCCwFcXQJQVgEDXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:22.152519Z\",\n \"created_at\": \"2014-02-18T20:50:21.889037Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2cVQDG9YcxudrM5S2GldZu\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2cVQDG9YcxudrM5S2GldZu\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:22 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4889faf498de11e3b33602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VC1JQAABRXlIIBQldVVQEHRdUSBEUBwZfUgAGUAxWAQ1XUQMHXUMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:23.116113Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:23.116115Z\",\n \"id\": \"CC2eiq9ItBXVdPYvkxMDpFQ4\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2eiq9ItBXVdPYvkxMDpFQ4\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:23 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM48f397b698de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMPWARUAVJcAQBZVVsJAAVIQVEACRtGRgQDAQQAU1RTWg8GC1oBAQFHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:23.855392Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:23.855394Z\",\n \"href\": \"/bank_accounts/BA2f8JkxTCL5LAQjoFNEQq5O\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2f8JkxTCL5LAQjoFNEQq5O\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:23 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM497fc7cc98de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAg5UX1ANCgFSWFIHBwRSUwYaE1NeW04QQAFbXgABUAJTCAAJA1YEAAYVTUYFWV9DATw=\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:24.545918Z\",\n \"created_at\": \"2014-02-18T20:50:24.350528Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2fHxZ3si2CdLJMg1KamyD5\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2fHxZ3si2CdLJMg1KamyD5\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:24 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4a02d57c98de11e38f3a02a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1FWAgFZX1sOBgFVU1EHBBtGVh0WEVVRBgBRVQ9TXglSAgQDXVITTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:25.464731Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:25.464733Z\",\n \"id\": \"CC2gVVJkfOcAfpV2Huztpn3i\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2gVVJkfOcAfpV2Huztpn3i\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:25 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4a5d1ac898de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMMUQlUAFpTBAVYX1IBBwNIQVEACRtGRgFQCwMAUAYAUlsGWgkNAgtHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:26.166895Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:26.166898Z\",\n \"href\": \"/bank_accounts/BA2hJJNtUm81BOvZADug0avM\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2hJJNtUm81BOvZADug0avM\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:26 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4adfc2fc98de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwVTV1YOAwBUUFEAAgVfVR0WAlpeT0ISAQlXWVsGAAQEDFNTAAZVABQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:26.802323Z\",\n \"created_at\": \"2014-02-18T20:50:26.623203Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2ifMGvz3WzYByT8z5ITI9y\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2ifMGvz3WzYByT8z5ITI9y\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:26 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4b5decd698de11e3ac3202a1fe52a36c\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBlZQAg5RVVAPAAdVWVABHRdUSBEUCgBeBVYBVwpXAQBSAwdTDEMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:27.755872Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:27.755875Z\",\n \"id\": \"CC2jvDzBGw9PRBbXynYRnC5Q\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2jvDzBGw9PRBbXynYRnC5Q\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:27 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4bba9b8498de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMAUQFQBFtXDgFQVVsBAgZIQVEACRtGRggDClcDV1tVUVlWWglQBgRHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:28.672713Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:28.672716Z\",\n \"href\": \"/bank_accounts/BA2kyFHiYOO1Q2RiNZCTJSVy\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2kyFHiYOO1Q2RiNZCTJSVy\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:28 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4c46cb0498de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAARWVFcICwhSV1oPAwRUUB0WAlpeT0ISW15QDg4HClEDCgVVUQFWUhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:29.491269Z\",\n \"created_at\": \"2014-02-18T20:50:29.271692Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2leyZpyDFFLNHboPlcGLCC\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2leyZpyDFFLNHboPlcGLCC\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:29 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4ceccff498de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SCldUBAJRV1cABAdXUFsEBRtGVh0WEVpTUgRRVQFWAFsGVwQEDVITTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:30.401698Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:30.401701Z\",\n \"id\": \"CC2muae9PUxTlWToLr4hjISI\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2muae9PUxTlWToLr4hjISI\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:30 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4d4d095098de11e3aed402a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMNVgNTB1tUBQZRUFUACgVIQVEACRtGRghUAVQEAQAFBgFSCw4EVlZHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:31.145575Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:31.145579Z\",\n \"href\": \"/bank_accounts/BA2nl9i9AxFADczeKYAXcEyA\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2nl9i9AxFADczeKYAXcEyA\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:31 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4dcf480298de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwRRX1AOCgVSVVICBwRfUh0WAlpeT0ISAQFQW1oNBgpRCAJTUQZXURQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:31.761396Z\",\n \"created_at\": \"2014-02-18T20:50:31.574641Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2nP48iN1xTlHE0mXuUCuCI\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2nP48iN1xTlHE0mXuUCuCI\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:31 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4e50939e98de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1FRDgdYVFAICwBQVVYEBRtGVh0WEQNeBVpVAw9UXgoNV1FUCQUTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:32.661488Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:32.661491Z\",\n \"id\": \"CC2p2r6I4mnwsX5JkaSjASrZ\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2p2r6I4mnwsX5JkaSjASrZ\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:32 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4eaabf9098de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMKVwNTC1JcAgJXUlEIChxEUlUPHRdEBwEOV1EDWwBUAQhXDl5WUBFJGQdQDUAHOQ==\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:33.352962Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:33.352966Z\",\n \"href\": \"/bank_accounts/BA2pP7rYnF6xV1qQDxHXQEyz\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2pP7rYnF6xV1qQDxHXQEyz\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:33 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM4f2c63d898de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAgNUXlYMAghTUVMGBgZeUwQaE1NeW04QQA9XCF4CBVdXClQJAlEBUVIVTUYFWV9DATw=\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:34.062417Z\",\n \"created_at\": \"2014-02-18T20:50:33.876993Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2qpDsFuUKkqpvVyYUa6pFo\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2qpDsFuUKkqpvVyYUa6pFo\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:34 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM4faeb0ae98de11e3aed402a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1pQDgRRUlQMCwVXVFMCBxtGVh0WEVMEAQQBVFtaDwlQBAIDD1gTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:35.079368Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:35.079370Z\",\n \"id\": \"CC2rKw8pX7bSeOw6ZbWAgKOY\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2rKw8pX7bSeOw6ZbWAgKOY\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:35 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM500c135298de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVINVQFUBlJXBABSVlIIAQVIQVEACRtGRlBQVQBRAFEIBF0AWgFQAgRHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:35.814032Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:35.814035Z\",\n \"href\": \"/bank_accounts/BA2sAwvu47XyLfl8e1qpwEzM\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2sAwvu47XyLfl8e1qpwEzM\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:35 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM509eff3298de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAg9YU1QPAwVQWFUABQZRSBEHC1pKQ0BTVVkEDQBQAlJRCwAIB1dRRhoXBwcPS1Zt\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:36.448997Z\",\n \"created_at\": \"2014-02-18T20:50:36.243351Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2t4CVd7bVSyeOc3mu2KVdK\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2t4CVd7bVSyeOc3mu2KVdK\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:36 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM5119eb0c98de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBVdTBQZRVlMBAwBWV1oCBBtGVh0WEVBUAVIGBw5UDV5RUQtQCgITTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:37.285963Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:37.285966Z\",\n \"id\": \"CC2uegVGvDiEQ5yMSopLkbai\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2uegVGvDiEQ5yMSopLkbai\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:37 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM5173cca898de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVAAUARWAlpUAQ9XV1AKCwFIQVEACRtGRgJSUVBUVAQIVVxUC14DClJHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:38.105787Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:38.105791Z\",\n \"href\": \"/bank_accounts/BA2vafUx3RhMSwl4f1mXxwUo\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2vafUx3RhMSwl4f1mXxwUo\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:38 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM51f2e7e098de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwBRVFsMCwRXVVYDCQVSVh0WAlpeT0ISUwFRC11SBgZVDlEBAwNUARQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:50:39.124356Z\",\n \"created_at\": \"2014-02-18T20:50:38.828300Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU2vYYb6Uof8PLnM7qkVetPU\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU2vYYb6Uof8PLnM7qkVetPU\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:50:39 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM529dc15698de11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UAVRXDgRQUFINBwRTWFsPHRdUSBEUA1cAW1oBV1oEDwkBAgVXCkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:50:40.056748Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:50:40.056751Z\",\n \"id\": \"CC2xlMyYYvnBRtIzfDC7pXr8\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC2xlMyYYvnBRtIzfDC7pXr8\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:40 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM531170ba98de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMLVwRYBltTBQ5XXlYIBglIQVEACRtGRgUAAgZfBwEBVwFXCA4ABABHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0ySWgyczhVRzZOOE1lWHVLQ1BnWDdnbmhaOU0xTWFVdkU6Tm9uZQ==] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:50:40.805665Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:50:40.805669Z\",\n \"href\": \"/bank_accounts/BA2ycM6cejUrXFNtb3OsC9pe\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA2ycM6cejUrXFNtb3OsC9pe\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:50:40 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM5391d01698de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwRTXlAAAgBSUFcCAg5TUR0WAlpeT0ISBwBaCQBWAwEBDARTAldbXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} diff --git a/tests/fixtures/TestPaydayCharge.yml b/tests/fixtures/TestPaydayCharge.yml new file mode 100644 index 0000000000..acb9752271 --- /dev/null +++ b/tests/fixtures/TestPaydayCharge.yml @@ -0,0 +1,1826 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:48:26.715294Z\",\n \"secret\": + \"ak-test-2Kl9zLE6ZbcDGN3ksDWdjYEiIxkkEKxor\",\n \"href\": \"/api_keys/AK7owdbXeCnM72UIoKjUUfZ\",\n + \ \"meta\": {},\n \"id\": \"AK7owdbXeCnM72UIoKjUUfZ\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:27 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM03e5a42098de11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwJTC1NSBwdRV1EIBgRQVVEDHRdUSBEUAVVSAVFVUwBSDV4NUwYDCkMdQVUDCEVSPA==\r\n", + "Content-Length: 288\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlNxsrzs2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4Ck+wRnoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:27 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM043d5c6098de11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:27.795090Z\",\n \"created_at\": \"2014-02-18T20:48:27.573767Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU8m7FASKW9XM9EIgKOcyzC\",\n \"phone\": + null,\n \"href\": \"/customers/CU8m7FASKW9XM9EIgKOcyzC\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:27 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM0467dce298de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBVRTAw5RUFIAAgNXVFYCHRdUSBEUBlNXAFUCBwwEDwhVUQcADUMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:28.696317Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:28.696319Z\",\n \"id\": \"CC9BGBJHg6JkPlDAOcBLsv6\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC9BGBJHg6JkPlDAOcBLsv6\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:28 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM04c7a80298de11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMPVwZTAlNUAwJWU1YOAgVIQVEACRtGRgJUAgdRUFJWWghUDA1SUQtHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:29.543237Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:29.543240Z\",\n \"href\": \"/bank_accounts/BAazsx5VWiYNfkoD7DXbsDS\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAazsx5VWiYNfkoD7DXbsDS\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:29 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0559d36298de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwZXU1YOCgdcU1ACBgdeSBEHC1pKQ0ABBFlQXAwECgNcW1UGVVJQRhoXBwcPS1Zt\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:30.301701Z\",\n \"created_at\": \"2014-02-18T20:48:30.079922Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUbb4VjNdWBefEGORhnhfHy\",\n \"phone\": + null,\n \"href\": \"/customers/CUbb4VjNdWBefEGORhnhfHy\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:30 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM05e4a5f098de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAlJUBQZRXlMKBwVdVlMAHRdUSBEUCwdfVlVUBwkEDQ5XVgEBDUMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:31.337725Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:31.337727Z\",\n \"id\": \"CCcAkjdiqLhutdhTDjliLye\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCcAkjdiqLhutdhTDjliLye\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:31 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM06432d5098de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHV0KWAFSClJcAQVYU1YLAQJIQVEACRtGRgcDUQcDVVVVVVsBCFkEAANHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:32.109508Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:32.109511Z\",\n \"href\": \"/bank_accounts/BAdsfBCjfH0GsvVbcN1xSYi\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAdsfBCjfH0GsvVbcN1xSYi\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:32 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM06e12e7e98de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAA5SV1IPAgRVVlAEBwRUXB0WAlpeT0ISBl1RXg1WCwZRXFNQUFJUXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:32.999089Z\",\n \"created_at\": \"2014-02-18T20:48:32.810167Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUeflSowsQInaXtQ8EDGD3M\",\n \"phone\": + null,\n \"href\": \"/customers/CUeflSowsQInaXtQ8EDGD3M\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:33 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM07870bc898de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAlNcAAdYUlEABwBRVlQGBhtGVh0WEQFWUFEGBF5WXAgFA1AEDVETTRMEBVpEBDs=\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:33.960352Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:33.960355Z\",\n \"id\": \"CCfwzVBtVZXtTrq1ShSC16u\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCfwzVBtVZXtTrq1ShSC16u\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:34 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM07f441ac98de11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVANWQRVAVtTAARWX1ABBwVIQVEACRtGRgRTBQRQUQcAVl0DDAoECwdHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:34.670468Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:34.670472Z\",\n \"href\": \"/bank_accounts/BAgkRGdcFUr3C1SqlR2ZXsq\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAgkRGdcFUr3C1SqlR2ZXsq\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:34 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0866754c98de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwVTU1AIAwdcWVoACARfUR0WAlpeT0ISVA5WCQsFBwIADwMJAgRWAhQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:35.414177Z\",\n \"created_at\": \"2014-02-18T20:48:35.227512Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUgXRCFDDbyskO5pwE8dS1I\",\n \"phone\": + null,\n \"href\": \"/customers/CUgXRCFDDbyskO5pwE8dS1I\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:35 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM08f5a36698de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAFdQBAdYXloBCgBWUlYDHRdUSBEUBFdXWlQDWgsAXg0BCwVcCkMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:36.325700Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:36.325703Z\",\n \"id\": \"CCib7HNLs2608pRjh2jK3um\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCib7HNLs2608pRjh2jK3um\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:36 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0956a3b498de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMJUwVYCltSBw9UVVMKBANIQVEACRtGRgIAAgNTAlBWVAkDDAAECldHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:37.215624Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:37.215627Z\",\n \"href\": \"/bank_accounts/BAjcjTuP8D3tcN8lXahwq9Q\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAjcjTuP8D3tcN8lXahwq9Q\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:37 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM09de981e98de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAA5YXlcAAgdRUVYPCQVeVR0WAlpeT0ISUwhWCVkECgQBX1dVAwEEVBQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:38.036106Z\",\n \"created_at\": \"2014-02-18T20:48:37.739370Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUjN5jgtZuZ2ON2f8PXMhFA\",\n \"phone\": + null,\n \"href\": \"/customers/CUjN5jgtZuZ2ON2f8PXMhFA\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:38 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM0a76e36298de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UBldcDw5QUlAKAghdWFYGHRdUSBEUVlACB1UEUQ0ACQwDC1dRDUMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:39.085421Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:39.085424Z\",\n \"id\": \"CClieB20Y2C8AwARxjSVLjx\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CClieB20Y2C8AwARxjSVLjx\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:39 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0af6d55e98de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMLUgZSBFpVBAdVVFELBQNIQVEACRtGRgRSClAFAAFUW1pbAFxVVAVHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:39.963267Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:39.963272Z\",\n \"href\": \"/bank_accounts/BAmi83UfwgybcsgkcVJbdEP\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAmi83UfwgybcsgkcVJbdEP\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:40 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0b76866498de11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAABXVFsBAwhVVFUEBQ9QVx0WAlpeT0ISWl1TWVoABQcBAQQDAlZVVBQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:40.642109Z\",\n \"created_at\": \"2014-02-18T20:48:40.379437Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUmL825gBN756qyhkGZ2hLQ\",\n \"phone\": + null,\n \"href\": \"/customers/CUmL825gBN756qyhkGZ2hLQ\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:40 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM0c08ae2c98de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VBFtUAQdYVlIABABTU1UCBRtGVh0WEQdUAgRUUFtSWQBVBVBUD1YTTRMEBVpEBDs=\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:41.630027Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:41.630031Z\",\n \"id\": \"CCoa7GgxI0cqChSIRDvuNry\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCoa7GgxI0cqChSIRDvuNry\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:41 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0c7dc73498de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMLVARXB1JdDgRUXlINBwNIQVEACRtGRgVVVVtVBVMCBlkEWQ8FBQdHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:42.370871Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:42.370875Z\",\n \"href\": \"/bank_accounts/BAoZYbDqDcopX5Vv2ApMswg\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAoZYbDqDcopX5Vv2ApMswg\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:42 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0cfcabee98de11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwVTX1YLCghTUFAGBA9USBEHC1pKQ0BSBl1RXQ0AVgUBCgcIBAdbRhoXBwcPS1Zt\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:43.229510Z\",\n \"created_at\": \"2014-02-18T20:48:43.025297Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUpJDdLtHcBJXVgoBfGrcDg\",\n \"phone\": + null,\n \"href\": \"/customers/CUpJDdLtHcBJXVgoBfGrcDg\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:43 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM0d9c62b098de11e38f7f02a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1tQDwNZX1YBAAVUVFoBHRdUSBEUAABUB1ICBgFTWg4NUwddDUMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:44.254427Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:44.254429Z\",\n \"id\": \"CCr6YOykTsmjFkBZ0BtEaCe\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCr6YOykTsmjFkBZ0BtEaCe\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:44 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0e0b8dac98de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMKVwFRAFJVAQNTU1YLBAFIQVEACRtGRgNQCgcHU1ABVgFXCQFXBApHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:45.133058Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:45.133061Z\",\n \"href\": \"/bank_accounts/BAs6lCP34FMI1zeRLI69xuW\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAs6lCP34FMI1zeRLI69xuW\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:45 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0ea39a5298de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAAdVVVQBCwlWUlYOAwNVVh0WAlpeT0ISBApWWglSVwQGXAVQU1BRVBQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:46.300657Z\",\n \"created_at\": \"2014-02-18T20:48:45.884886Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUsXgebGQpSxABPHjOzQa75\",\n \"phone\": + null,\n \"href\": \"/customers/CUsXgebGQpSxABPHjOzQa75\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:46 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM0f52080898de11e3b33602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9XA1BSAQdQX1EPAghRUVcOHRdUSBEUBVFWWlZRAA9RWg5WVgJdWkMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:47.489694Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:47.489697Z\",\n \"id\": \"CCuIWGaNYbRSYyozygzGNhe\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCuIWGaNYbRSYyozygzGNhe\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:47 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM0feab21a98de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIMUQNYC1JWBQVTVVsPBBxEUlUPHRdEUwAGVVIAU1FVVwFSD1sMBxFJGQdQDUAHOQ==\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:48.452304Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:48.452307Z\",\n \"href\": \"/bank_accounts/BAvPPG4FMG3UZ4nWezIe2Xo\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAvPPG4FMG3UZ4nWezIe2Xo\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:48 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM109cac0498de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwNSVlAOCgNTVlMEBwVVSBEHC1pKQ0BUUgxRCwhQVgZRCVkCWFABRhoXBwcPS1Zt\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:49.742142Z\",\n \"created_at\": \"2014-02-18T20:48:49.424476Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUwW5yTNkvrMqMS5H30yhyv\",\n \"phone\": + null,\n \"href\": \"/customers/CUwW5yTNkvrMqMS5H30yhyv\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:49 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM116d831098de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UAlZRAwdTVloIBwVQUFIFHRdUSBEUAgcAAQBSUw0AClwABgoECEMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:48:50.930540Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:48:50.930542Z\",\n \"id\": \"CCyC3PaxWGckZzt8W7Qav3a\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CCyC3PaxWGckZzt8W7Qav3a\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:51 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM11f81bc498de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIKUANQBVNdBAVVU1cAAARIQVEACRtGRgcBB1dWVgQEB11aWgAEUQJHFUFXAF8RAWs=\r\n", + "Content-Length: 1214\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:48:51.839425Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:48:51.839428Z\",\n \"href\": \"/bank_accounts/BAzE36SiGIvPSy5D5gNaeik\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BAzE36SiGIvPSy5D5gNaeik\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:51 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM129eacb498de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwVRVlIAAgBUVlEPBAVTUB0WAlpeT0ISAQhbCV0CAAsGAAUGUlBSVRQbQQACVEBVOQ==\r\n", + "Content-Length: 1279\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:52.458414Z\",\n \"created_at\": \"2014-02-18T20:48:52.269561Z\",\n + \ \"dob_month\": null,\n \"id\": \"CUA8gccV3WB8UFaM72p85gm\",\n \"phone\": + null,\n \"href\": \"/customers/CUA8gccV3WB8UFaM72p85gm\",\n \"merchant_status\": + \"no-match\",\n \"meta\": {},\n \"dob_year\": null,\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"business_name\": null,\n \"ssn_last4\": null,\n + \ \"email\": null,\n \"ein\": null\n }\n ],\n \"links\": {\n + \ \"customers.source\": \"/resources/{customers.source}\",\n \"customers.card_holds\": + \"/customers/{customers.id}/card_holds\",\n \"customers.bank_accounts\": + \"/customers/{customers.id}/bank_accounts\",\n \"customers.debits\": \"/customers/{customers.id}/debits\",\n + \ \"customers.destination\": \"/resources/{customers.destination}\",\n \"customers.cards\": + \"/customers/{customers.id}/cards\",\n \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:52 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM131db50e98de11e38f3a02a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SClZSDwFYU1MBAgJQVlcBHRdUSBEUVQYHB1ADWwBSXF0FAFBVAEMdQVUDCEVSPA==\r\n", + "Content-Length: 1445\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /cards/CCyC3PaxWGckZzt8W7Qav3a + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA41UTY/TMBC976+wfGZbx0nTtDfogRMSCMRKi1Dk+mNrbWJXjlNaqv53PG6+uhWC + HCLZb55n3ryxzw8IYc6caPAa/QgLhM7xD9uHQ1kzz3cBMm1VveuBSptXiO8jIbZtvK2l60K7yMtA + MayWb4+Rx712zGtrypNkQKWEkoHCDk3ZeCelH6rAJ9ngIUA35UE6rbQUgetdKweIO8m8FCXzAcGU + JNkjoY9J8Y2SdVasF2S2SskiI8/jaaDWyaatgHIjd+uYgQz4u27YSDBtvY2C8XHyJeEbY9q9+J86 + 6KQOHVNtNqdN+pkdnz7y1+ffvnhafmGHdJJ90rzaGg8eJWPvgpi3KmrpWdibeObkS+h9zGaNahtY + 9B0ES7U/ld7+ihFTgAkRGtWUFIAP9ogovvN756QCeB5na/5POd2ZtwVCBTEHqyx6X3k7rSIMoYQK + plaFqmE7AVJCU/SJaYO+xhmaUhsfTLmn7m0AqpJbASBeEZqQm4bY1nh36gMg8Z1upc2LdHunTZy8 + gi8VyWia5gumioKnMs25InSZ5ZKzPFOCqzQXglOZqHQVwiVfqVQpQRaM5stxkuA2dAX2dxKbsSEY + 8GF88VUz6rqKwvyiKxmBOiQsMtajeNDsat4lSPkJ7kMHJ7f7+jjMwMZyZ6v4TvSunqO5My0u0eYO + v45QzxvfhcDqFs28Y/Ybl05nRxJyq/1fEnVYKPTycPkDTBlws74EAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:52 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM137fdaea98de11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 554\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"cvv_match": null, "created_at": "2014-02-18T20:48:50.930540Z", "name": + null, "links": {"customer": "/customers/CUA8gccV3WB8UFaM72p85gm"}, "avs_street_match": + "yes", "expiration_year": 2020, "brand": "Visa", "cvv_result": null, "number": + "xxxxxxxxxxxx1111", "updated_at": "2014-02-18T20:48:50.930542Z", "expiration_month": + 10, "cvv": null, "meta": {"region": "Confusion", "city_town": "", "address_2": + "Box 2"}, "avs_result": "Street address and postal code do not match.", "fingerprint": + "8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267", "is_verified": + true, "avs_postal_match": "no", "id": "CCyC3PaxWGckZzt8W7Qav3a", "address": + {"city": "Balo Alto", "line2": null, "line1": "123 Main Street", "state": null, + "postal_code": "90210", "country_code": null}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Length, !!python/unicode 775] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /cards/CCyC3PaxWGckZzt8W7Qav3a + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUTY/aMBC976+wcu6CY0MI3HaR2tNKrdpdpF1VkfEHWJvYyHEoFOW/15MPCIva + 5hApnnkzb96b+HSHUMSZE2W0QG/hA6FT84bj/T4rmOfbEDJVnn/qA7k275DfZ0JuVXpbSBdOo+Xz + Q7rh/IWuHtPnz+xpRnbpdFNEHbw+1zGskB9ry8NOO+a1NdlRMqhHMMFnCNuXWemdlP5MLTrKMjon + 6DLbS6eVliJgvavkOcSdZF6KjHlgSXA8ucfkPk5/ELyYpIspHs0pnk7w66UaSOBkWeUAudJg7ZiB + DtGLLtkFYKpi3apwGDxxeC451U78kwcdkZTMJvMBD920Wi6PS/qVHVZf+Pvrb5+uZt/Yng66D8Qr + rPFgXHzRLgzzcYpCehbOBkY6uQnaN92sUVUJH72C4LP2x8zbX03GMMCECEKVGYHAoz0gcuv31kkF + 4XGzcOP/jtPVvCYIDJoeLLfoIfd2yCJspgQGQ6sCaziOARQTip6YNuh7s0NDaOmDKbfQnQ2BPONW + QDCaYxLjK0FsZbw79gnQ+GbPlTYb6XZOm2bzUj5TeEIoTaZMpSmnkiZc4WB5IjlLJkpwRRMhOJGx + ovOQLvlcUaUEnjKSzC6bBH9DR7D/USNzESSC+Hl9o3Zm1KmKwv6iFoxgOiQsMtajptCoNa8Oo/wE + 90HBwS/f3hgjsDHb2ry5PHpXT425Iy3qxuYu3q5QjxtcFuP+5ijHHbI/qLs5O5CQa+3/0qiLBaL1 + Xf0HR5CITdMEAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:53 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM13c26eaa98de11e3b7d7026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 581\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /bank_accounts/BAzE36SiGIvPSy5D5gNaeik + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTy26jMBTd9ysQ62nA5hHILlUf86gy1WSkSq0qZGzTWiEmMqYKE/HvY1wYA0ml + zMaLew6Hc++593BhWXaK+CZBGBcVl6W9sJ5V0bIO+lWwKCrJ+GvCq21KhcJtAIHrwyiC9peepDU4 + 2tIWf7y5v19bt8tfdz+tq+Xqh7VaGmb3o0TWO03GbxRvlL5h9DJfiy0V1ndUGyhnfNNa7M0pe7gq + ZUtUVV7lee9o0lfyTgXLGEaSFbyjdt6bf01gxBMsKGFSMaSoqEEERZKSBLWIDV3gX7rwEkS/obvw + o0UAZpEX+zB4MlYz1RMVO8G4/oYgHAbAJzEhHgKYzBGOYUCCuR9T13MjDBWeITjHgRsimqUujlMI + QgCyLI7D2AhXO3KOl2jg5U3QrDXhjKJ2rpZ/brxwze6+vT+s6+A6eF0hyjbmV1sqUTttM6I+PbMM + +/0eeh4aBEyIoOU0JSbr44RUnBSeLoPjcilV38flXaGAPMEFOQHqpRb1ED0ZO6GpTj1DeWliZ6Sd + 2mdj0kKNel/aPbHHuzm+qtnHWrVDmYZwGGUyY6RxevLH+k2UhvTRVp8pPjyEskttataclO3091U6 + E6c90JwW0RM901PH/b9+9SxH3UwdfjqqxlaBNRfNX28QKWf/BAAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:53 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1410c84898de11e3b4f4026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 495\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "bank_name": "WELLS FARGO BANK NA", "account_type": + "checking", "name": "Homer Jay", "links": {"customer": "/customers/CUwW5yTNkvrMqMS5H30yhyv"}, + "can_credit": true, "created_at": "2014-02-18T20:48:51.839425Z", "address": + {"city": null, "line2": null, "line1": null, "state": null, "postal_code": null, + "country_code": null}, "updated_at": "2014-02-18T20:48:51.839428Z", "meta": + {}, "account_number": "xxx233a", "fingerprint": "dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969", + "can_debit": false, "id": "BAzE36SiGIvPSy5D5gNaeik"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 579] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: PUT + path: /bank_accounts/BAzE36SiGIvPSy5D5gNaeik + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VTW2+bMBh9769APK/BNpdA3tKta7e12bR0qrRpQsY2jQWBzJgsLOK/z6ZQLk2n + 7oUHn+OPc/l8PDMMM8JZEmJC8jKThbkwfqhDwzg2XwWLvJQ8ewizchsxoXATIggc5PvIfNORmhkZ + 3jKN31/e3KyN98uvV5+Ni+Xqk7Fa9sz2R6Gsdg2ZbBhJ1Pye0Y25zrdMGB9x1UMpzxItsROn5JGy + kJqoZ7399vvere5WyV7c/rpdu9c2qDbV/un+xGy4Z4LHnGDJ80zdz8o0bQ3VT84IzkIiGOVSMaQo + WY8IhiWjIdaIiQB0zgE6h/4dAgvHX7hw5tuBg9zvvf5YGWViJ3jW3KGYeC50aECpjSGhc0wC5FJ3 + 7gQM2MAnSOExRnPiAg+zOAIkiBD0IIzjIPCCfnC5o//U4syADwLfG2jZCBZrEdaof+ti+efS9tb8 + 6sP+y7py37kPK8x40v9qyyTWFfQRdZX2G3I4HJBt40HrlApWTKvjsmpj70JVDamOGTp9DJ8fF1L5 + fn68yxWQhiSnJ8Bm00U1RE/WTlnUtB7jtOhr51Sn9lJMzaBafX9qS9rMYGHHT232uFY6lGkJx1En + M05rqyM/JjWZNKSPtvqVw4cPoWhbm4odvDOre3SFNVHaAfXpIU2ir9TUcv/Pb5PlyM1U4YtR1aYq + rD6r/wIEfLL6FAUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:54 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM143c020698de11e3ac70026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 526\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUA8gccV3WB8UFaM72p85gm + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VU0U6DMBR99ysIz24MZIp7UxPffHOaaAy5a6s0Qru0xWRZ+HdvJ7AOmH3h4fbc + 03vPOXR/EQQhqbWRFVM6XAXvWAiC/eGLRwIqhlVRl+VlVyu5+LbQDoQwLWtFhkCsU6YNF2C4FC1L + S9L0bPWWgmE0B4OIMFnE6WyRzOLsOVms0my1TObpMkvj9C3sW4hinpbk+nZ5HTstVG7ySgpTDJfh + 1F77sL7Lvgh5uXq9z9aP8HSTbLPlV3W8cltIMdwvLBT7tN1RL2DkJUKZSQHC5NqAqa2MoZCzCgwp + jrdVzIAV+KiSnX/HQA3HB0oV0wM3CDe7ARC9QNtYMl2Ox2U73nBhJNlKPChzIunEIZG1MGrnno7s + 3tQa59A6n0qW1iIvQZt0uCargJejIj8JVYN3fdiM2E2dgB7jPe9jGkao2iGzOtr37rXnTWuE00hA + 0byQJT0Y5vjtNHPaRA7uL60OxwbEdw7kIJKH5hQ6YqJsw30ULWai1/0jz+jg/LZnxPAsYHXQYxmN + AqGB2OfAQ3CCHC2B/10tfF50oInuH3zroPSMoFgHGzFIRf9ey3+i0GJGvfh4Ua97HQjT3Fw0v3ec + tOulBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:55 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1509bdfe98de11e3b90b026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 462\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUA8gccV3WB8UFaM72p85gm/cards?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA6VUW2vbMBR+768QetjTmshyLk6hjDawPRU2tjbQMYyqSypqS0GWs2Ql/306sh07 + bdlg80MgOrfvfOc75/kMIcyZExW+QN/DH4Se4y88b7d5yTx/DCZTF8X7zlBo8wT+nSf41pW3pXTh + FS9vr7I153fp6jq7/chu5nSTTdclbsMPxzyGlfJlbrnbaMe8tibfSwb5KKHkGMK2VV55J6U/QsN7 + WeGjg67yrXRaaSlCrHe1PJq4k8xLkTMPKClJJueEnifZN0ouJtnFlIwWKZlOyH2fDShwsqoLCDnh + 4MExAxXwna5YH2Dq8qFhYTf4kvD1PvVG/BFHOqIZnU8WAxw6llou98v0M9utPvGn+18+W82/sG06 + qD4gr7TGw+CSnrvQzMsuSulZeBsM0sl14D5Ws0bVFfzpGIQ5a7/Pvf0ZPYYGJkQgqsopGK7tDtHX + 8350UoF5HAU3/ms7bc5TgIAg1mCFRVeFt0MUQZkSEAxHFVDDcwJBCU3RDdMGfY0aGoZWPgzldejG + BkORcyvAiBeEJuSEEFsb7/adAxR+pXOlzVq6jdMmKi/jc0UmNE1nU6ayjKcynXFFwshnkrPZRAmu + 0pkQnMpEpYvgLvlCpUoJMmV0Nu+VBNvQAuwWFZueEAz2o3xx0zNqWUVBv6gJRtAdEhYZ61FMNGqG + dwit/IDp4xOh4IJVsZNxt/ZhmG8vfTPqD4Uutb9MyDurVCX9ZUchNnJ3ulq4F0l7Uv45dywaYHYr + gJvi4aXdCbxxcqttDbesVwz2Nkwc4hrdY6Xdf7cbOIx3D6Q4uJ3N6R0J+aA9oOhW4zluyEiLw7i1 + tVia9+G1Hcygjeqsh1YobREIzR9tEU/9G4UGdkB7dvgNNmLs8BwGAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:55 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM15525fe698de11e3a547026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 668\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"amount": 1576, "description": "carl"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 39] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards/CCyC3PaxWGckZzt8W7Qav3a/debits + port: 443 + protocol: https + response: + body: {string: "{\n \"debits\": [\n {\n \"status\": \"succeeded\",\n + \ \"description\": \"carl\",\n \"links\": {\n \"customer\": + \"CUA8gccV3WB8UFaM72p85gm\",\n \"source\": \"CCyC3PaxWGckZzt8W7Qav3a\",\n + \ \"order\": null,\n \"dispute\": null\n },\n \"updated_at\": + \"2014-02-18T20:48:57.476277Z\",\n \"created_at\": \"2014-02-18T20:48:56.404403Z\",\n + \ \"transaction_number\": \"W642-792-4937\",\n \"failure_reason\": + null,\n \"currency\": \"USD\",\n \"amount\": 1576,\n \"failure_reason_code\": + null,\n \"meta\": {},\n \"href\": \"/debits/WDEMeSqn88TZTyTdPRIK2vI\",\n + \ \"appears_on_statement_as\": \"BAL*example.com\",\n \"id\": \"WDEMeSqn88TZTyTdPRIK2vI\"\n + \ }\n ],\n \"links\": {\n \"debits.customer\": \"/customers/{debits.customer}\",\n + \ \"debits.dispute\": \"/disputes/{debits.dispute}\",\n \"debits.source\": + \"/resources/{debits.source}\",\n \"debits.order\": \"/orders/{debits.order}\",\n + \ \"debits.refunds\": \"/debits/{debits.id}/refunds\",\n \"debits.events\": + \"/debits/{debits.id}/events\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:48:57 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM15c005be98de11e38e1c026ba7c1aba6\r\n", + "X-Balanced-Host: balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 997\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUwW5yTNkvrMqMS5H30yhyv + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUsU7DMBDd+YooMyVtMFC6srDAAggJhKKrbRSriV1spyiq8u+cS5K6ScBLhvO7 + 57v3Xrw/i6KYVsaqkmsTr6J3LETR/vDFIwklx6qsiuK8qxVCbhy0AyHMqErTIRDrjBsrJFihZMvS + kjQ9W7VlYDnLwCIiTucLMpuns8XyOZ2vyHJFbi9uSLog6Vvct1DNAy0kJeTm2mthap2VStp8uIxg + 7tq7l+/Xq/r5cbPTD18PT1f3l/M6r3fHK7e5ksP94lzzT9ed9AImQSKUmeYgbWYs2MrJGEs1K8HS + /HhbyS04gY8quflrDno4PjCmuRm4QYWtB0D0Am3j6XR5MS678YYLI8lW4UGRUcUmDqmqpNW1fzqy + e10ZnMOYbCpZxsisAGPJcE1egihGRXESqgbv+nAZcZt6AT3G+6KPaZygaofMmmTfu9eeN60RXiMF + zbJcFexgmOe31yxYk3i437R6HGuQmwzoQaQAzSl0xMT4WoQoWsxEr/9H/qGD99v+IUZgAaeDGcto + NUgD1D0HAYIT5GgJ/O8qGfKiA0107/CtgyIwguYdbMSgNPt9Lf+JQosZ9eLjxYLudSBMc3PW/ACo + Ky3cpQUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:58 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM16b8de3c98de11e38133026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 463\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUwW5yTNkvrMqMS5H30yhyv/bank_accounts?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61UUW+bMBB+769APOxpTWwDCUSqpnTr2q1tNi2dKm2akGObxgqBzJgsLMp/n+1A + gDRMfegLEved7777vtNtzyzLnuFkEWJC0jyRmT2yfqqgZW3NV8EizSVPnsIkX86YULgNEQQu8n1k + v62STI0EL5nGH6/u7qbWx/G36y/W5Xhya03GdWbZKJTFyiSTOSMLVb/OqMrcpEsmrM+4qKGYJwtN + sSKn6JE8kzpR13r//c+jVzxMFmtx//t+6t04oJgX68P7o2HDNRM84gRLnibqfZLHcTnQ7jAZwUlI + BKNcqgwpclYjgmHJaIg1YiMA3XOAzqH/gMDI9Uce7PlO4CLvR80/UoMysRI8MW8oJgMPujSg1MGQ + 0CEmAfKoN3QDBhzgE6TwCKMh8cAAs2gGSDBDcABhFAXBIKgL5yv6Xy5uD/gg8AcNLnPBIk2i3/K/ + fzn+e+UMpvz60/rrtPA+eE8TzPiibrVkEmsLaokqS+sN2Ww2yHFww3VKBcuOreOyKGWvRFUOKY8Z + Oh2Gz8OZVHM/D69SBcQhSekJ0Gy6KJroSdspmxnXIxxnte2catW6ZDKFdur7S49kV2KZsB3jzPje + r5Y263esbNuUdzFfcnkBwZs0ijImL0CprJ2wja6oN3cvoX2w9dV6mOaqCQRliz0JFakCK8HWPM21 + vQ0mMlUW6Hfls4iLVxtf6Wn2T29L4yK0b1nPGKhZHS/5trXzPU53/TK35NrGm3+to/HC2s07k1XW + tVs0z1hjPY6IVlm7jiLmTr2Q1P6oddDpnNiI2Zqnf8Sx8+nO1q6d7f4BlWPxgnUGAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:48:58 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM16ff55ec98de11e3ac6d026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 620\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{"amount": 1500.00, "description": "bob"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Content-Length, !!python/unicode 41] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /bank_accounts/BAzE36SiGIvPSy5D5gNaeik/credits + port: 443 + protocol: https + response: + body: {string: "{\n \"credits\": [\n {\n \"status\": \"succeeded\",\n + \ \"description\": \"bob\",\n \"links\": {\n \"customer\": + \"CUwW5yTNkvrMqMS5H30yhyv\",\n \"destination\": \"BAzE36SiGIvPSy5D5gNaeik\",\n + \ \"order\": null\n },\n \"updated_at\": \"2014-02-18T20:49:00.014506Z\",\n + \ \"created_at\": \"2014-02-18T20:48:59.471525Z\",\n \"transaction_number\": + \"CR684-849-9589\",\n \"failure_reason\": null,\n \"currency\": + \"USD\",\n \"amount\": 1500,\n \"failure_reason_code\": null,\n + \ \"meta\": {},\n \"href\": \"/credits/CRIdblqokJp3Hs9PtiJ7YYm\",\n + \ \"appears_on_statement_as\": \"example.com\",\n \"id\": \"CRIdblqokJp3Hs9PtiJ7YYm\"\n + \ }\n ],\n \"links\": {\n \"credits.order\": \"/orders/{credits.order}\",\n + \ \"credits.customer\": \"/customers/{credits.customer}\",\n \"credits.destination\": + \"/resources/{credits.destination}\",\n \"credits.reversals\": \"/credits/{credits.id}/reversals\",\n + \ \"credits.events\": \"/credits/{credits.id}/events\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:00 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM17915c4498de11e3b4f4026ba7c1aba6\r\n", + "X-Balanced-Host: balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 949\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUwW5yTNkvrMqMS5H30yhyv + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VUsU7DMBDd+YooMyVtMFC6srDAAggJhKKrbRSriV1spyiq8u+cS5K6ScBLhvO7 + 57v3Xrw/i6KYVsaqkmsTr6J3LETR/vDFIwklx6qsiuK8qxVCbhy0AyHMqErTIRDrjBsrJFihZMvS + kjQ9W7VlYDnLwCIiTucLMpuns8XyOZ2vyHJFbi9uSLog6Vvct1DNAy0kJeTm2mthap2VStp8uIxg + 7tq7l+/Xq/r5cbPTD18PT1f3l/M6r3fHK7e5ksP94lzzT9ed9AImQSKUmeYgbWYs2MrJGEs1K8HS + /HhbyS04gY8quflrDno4PjCmuRm4QYWtB0D0Am3j6XR5MS678YYLI8lW4UGRUcUmDqmqpNW1fzqy + e10ZnMOYbCpZxsisAGPJcE1egihGRXESqgbv+nAZcZt6AT3G+6KPaZygaofMmmTfu9eeN60RXiMF + zbJcFexgmOe31yxYk3i437R6HGuQmwzoQaQAzSl0xMT4WoQoWsxEr/9H/qGD99v+IUZgAaeDGcto + NUgD1D0HAYIT5GgJ/O8qGfKiA0107/CtgyIwguYdbMSgNPt9Lf+JQosZ9eLjxYLudSBMc3PW/ACo + Ky3cpQUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:00 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM17fc50c698de11e39e06026ba7f8ec28\r\n", "X-Balanced-Host: + balanced-api-01\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 463\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUA8gccV3WB8UFaM72p85gm + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA4VU0U6DMBR99ysIz24MZIp7UxPffHOaaAy5a6s0Qru0xWRZ+HdvJ7AOmH3h4fbc + 03vPOXR/EQQhqbWRFVM6XAXvWAiC/eGLRwIqhlVRl+VlVyu5+LbQDoQwLWtFhkCsU6YNF2C4FC1L + S9L0bPWWgmE0B4OIMFnE6WyRzOLsOVms0my1TObpMkvj9C3sW4hinpbk+nZ5HTstVG7ySgpTDJfh + 1F77sL7Lvgh5uXq9z9aP8HSTbLPlV3W8cltIMdwvLBT7tN1RL2DkJUKZSQHC5NqAqa2MoZCzCgwp + jrdVzIAV+KiSnX/HQA3HB0oV0wM3CDe7ARC9QNtYMl2Ox2U73nBhJNlKPChzIunEIZG1MGrnno7s + 3tQa59A6n0qW1iIvQZt0uCargJejIj8JVYN3fdiM2E2dgB7jPe9jGkao2iGzOtr37rXnTWuE00hA + 0byQJT0Y5vjtNHPaRA7uL60OxwbEdw7kIJKH5hQ6YqJsw30ULWai1/0jz+jg/LZnxPAsYHXQYxmN + AqGB2OfAQ3CCHC2B/10tfF50oInuH3zroPSMoFgHGzFIRf9ey3+i0GJGvfh4Ua97HQjT3Fw0v3ec + tOulBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:00 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1825fdea98de11e38c09026ba7cac9da\r\n", "X-Balanced-Host: + balanced-api-05\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 462\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUwW5yTNkvrMqMS5H30yhyv/credits?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61UXW+bMBR9769AftjTEkwS0hCpmrZ2WlupVdW0mrppQg6+Wa2ATW2TNYv477Md + DDRTnrYXBPfjnHO/2J0EAcokUKYVmgffzWcQ7NzTOJQmurJ2pKosA6BA0XvvpKAyyUrNBLcRS7Hs + fDnja5vnkSxJpbQoQNrY88dfX+Ptw+16I29ebhbx5Rhvn7ebNt+EG3TNOPHonz7+/jyeLtiXq83d + YhtfxD9vCbB1P0NI6tB5leeNxroVW5WUaKAp0ZZ/hKPJAI8G0exhhOeTZI7x0JhiPP3W1WC6cjxl + No+T4eQ0ikdxL0VLwhXJrOiUV8WyqfZ+OpsMZpNkkMSzpCNYEZZXElLDo1wPrfJWcVZJCTzbWr2P + i4sujRSi4raMKMa4DX8LlmaCwiFiAZrYmXRdeZawsvhhswHh+f0VXeYvYn1dji9VcqfZ9enTU9Ej + L0sgUqWmQLscUADXKXErAq+kKHMYZqIXz6h1HYN1Y6rN84etA3mBzoxyotywQr85KjyyN17+h5wV + TJ9F+J1YrRToM9wIRxxeLVbXYNSV3uzlP6A7WjuQZhxoT28s3lBK2DDhTqmnQQtNcpu3nyJaMfkf + SjbdcxNGb4/QX/nQ3wkK3ZsKd830957a98xbjXQTRXI35HZT2iRG67ALaSrxuf2j782xTfb+v0gN + J3d/pCOMjf+A7uCnYXQpUckMejX2QmpkW3VS/wHzJXqGBAUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:01 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1867ee4498de11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 550\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUwW5yTNkvrMqMS5H30yhyv/credits?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61UXW+bMBR9769AftjTEkwS0hCpmrZ2WlupVdW0mrppQg6+Wa2ATW2TNYv477Md + DDRTnrYXBPfjnHO/2J0EAcokUKYVmgffzWcQ7NzTOJQmurJ2pKosA6BA0XvvpKAyyUrNBLcRS7Hs + fDnja5vnkSxJpbQoQNrY88dfX+Ptw+16I29ebhbx5Rhvn7ebNt+EG3TNOPHonz7+/jyeLtiXq83d + YhtfxD9vCbB1P0NI6tB5leeNxroVW5WUaKAp0ZZ/hKPJAI8G0exhhOeTZI7x0JhiPP3W1WC6cjxl + No+T4eQ0ikdxL0VLwhXJrOiUV8WyqfZ+OpsMZpNkkMSzpCNYEZZXElLDo1wPrfJWcVZJCTzbWr2P + i4sujRSi4raMKMa4DX8LlmaCwiFiAZrYmXRdeZawsvhhswHh+f0VXeYvYn1dji9VcqfZ9enTU9Ej + L0sgUqWmQLscUADXKXErAq+kKHMYZqIXz6h1HYN1Y6rN84etA3mBzoxyotywQr85KjyyN17+h5wV + TJ9F+J1YrRToM9wIRxxeLVbXYNSV3uzlP6A7WjuQZhxoT28s3lBK2DDhTqmnQQtNcpu3nyJaMfkf + SjbdcxNGb4/QX/nQ3wkK3ZsKd830957a98xbjXQTRXI35HZT2iRG67ALaSrxuf2j782xTfb+v0gN + J3d/pCOMjf+A7uCnYXQpUckMejX2QmpkW3VS/wHzJXqGBAUAAA== + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:01 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM1890e61e98de11e3b90b026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 550\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUA8gccV3WB8UFaM72p85gm/debits?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61UXW/aMBR9769AedjDNCCEQFKkamrpNlVrpW6FRWKaIte+dFYTJ/MHgqH899mO + QwgSe9leIts35557zr32/qLX83KQyJv19nqtdxkSUu+8IVZCFjlwMZwvr+MXjL+Nk5t4+RE9REEZ + T17yIYFnKsX7jOZUXo38N8V6LUBe+d67OhWDrUnFVJa5k58c1v8puWXVuUa+y12z65PmoOSwoYUS + 3RJkIVFmcA62pvzfBWu9lcnnZZS9GkJnZu3QoLHyRPr+JFw1xrlzQkWpJFiUW4thA3IHpxjYAJOm + Ag2x7TkAKKmGLuqkO5qCE+AWYVctwm5PCXQHFSNnGZpwl0IUiuNaCId609LU+8o7mFjXpSv6bueo + 9lKbKySStp2eUBgDECDOMR0kIDCnpaQFM39gxLM22G2LnfPjnpwZ8APecB8UzOe7+fgRbZNP+HX1 + W8ZJ9AVtxuj458bRdvItZdtPE7Da3NzYsCoJkkBSZO9f4I/Cvh/0R/Ei8GdhPJtEgzCaBlG0anVh + Dn+FTAehH4b++AgiOWICYeNTylT+XLc+mYZBP7oM+uHlOGrzrxHNFIdU0wjr67EibSHnwPDOlLt8 + um1hKC8Us5dzEk3rSdD6uslSXBAzEZ2MzVNkL5M15fBiuGlObj88wNMvFseL1WK3II9f7z4Hm7sj + 7rIExEWq5Zl5gVzfhxTZqbm5vn8LW5SXGQxwkbcYSkz4XGpbSqW/Py6qP0gB3aQxBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:01 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM18c2116298de11e3bb36026ba7cd33d0\r\n", "X-Balanced-Host: + balanced-api-02\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 564\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yS2w5ekxFNlpiY0RHTjNrc0RXZGpZRWlJeGtrRUt4b3I6Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /customers/CUA8gccV3WB8UFaM72p85gm/debits?limit=10&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA61UXW/aMBR9769AedjDNCCEQFKkamrpNlVrpW6FRWKaIte+dFYTJ/MHgqH899mO + QwgSe9leIts35557zr32/qLX83KQyJv19nqtdxkSUu+8IVZCFjlwMZwvr+MXjL+Nk5t4+RE9REEZ + T17yIYFnKsX7jOZUXo38N8V6LUBe+d67OhWDrUnFVJa5k58c1v8puWXVuUa+y12z65PmoOSwoYUS + 3RJkIVFmcA62pvzfBWu9lcnnZZS9GkJnZu3QoLHyRPr+JFw1xrlzQkWpJFiUW4thA3IHpxjYAJOm + Ag2x7TkAKKmGLuqkO5qCE+AWYVctwm5PCXQHFSNnGZpwl0IUiuNaCId609LU+8o7mFjXpSv6bueo + 9lKbKySStp2eUBgDECDOMR0kIDCnpaQFM39gxLM22G2LnfPjnpwZ8APecB8UzOe7+fgRbZNP+HX1 + W8ZJ9AVtxuj458bRdvItZdtPE7Da3NzYsCoJkkBSZO9f4I/Cvh/0R/Ei8GdhPJtEgzCaBlG0anVh + Dn+FTAehH4b++AgiOWICYeNTylT+XLc+mYZBP7oM+uHlOGrzrxHNFIdU0wjr67EibSHnwPDOlLt8 + um1hKC8Us5dzEk3rSdD6uslSXBAzEZ2MzVNkL5M15fBiuGlObj88wNMvFseL1WK3II9f7z4Hm7sj + 7rIExEWq5Zl5gVzfhxTZqbm5vn8LW5SXGQxwkbcYSkz4XGpbSqW/Py6qP0gB3aQxBQAA + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:01 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM18efba2298de11e39d4e026ba7c1aba6\r\n", "X-Balanced-Host: + balanced-api-04\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 564\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} diff --git a/tests/fixtures/TestPrepHit.yml b/tests/fixtures/TestPrepHit.yml new file mode 100644 index 0000000000..b931fe1ae9 --- /dev/null +++ b/tests/fixtures/TestPrepHit.yml @@ -0,0 +1,1491 @@ +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Authorization, !!python/unicode Basic OTBiYjM2NDhjYTBhMTFlMWE5NzcwMjZiYTdlMjM5YTk6Tm9uZQ==] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /api_keys + port: 443 + protocol: https + response: + body: {string: "{\n \"links\": {},\n \"api_keys\": [\n {\n \"links\": + {},\n \"created_at\": \"2014-02-18T20:49:24.669092Z\",\n \"secret\": + \"ak-test-2fPySNzreR6C6iDc5aq8x0g8HAqLDADon\",\n \"href\": \"/api_keys/AK1azystNh48WFBEvM47T1e8\",\n + \ \"meta\": {},\n \"id\": \"AK1azystNh48WFBEvM47T1e8\"\n }\n ]\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:24 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2671003e98de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhQRw87WlNKEUgAEFUDTAcaFBQCH0UJTwBSBVFSBQ5ZVVINBwJdV1oPHRdUSBEUAQFRWwYFVFsDXQoMVFIHAEMdQVUDCEVSPA==\r\n", + "Content-Length: 290\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: null + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [content-type, !!python/unicode application/json;revision=1.1] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + host: api.balancedpayments.com + method: GET + path: /marketplaces?limit=25&offset=0 + port: 443 + protocol: https + response: + body: + string: !!binary | + H4sIAAAAAAAAA5VU2W7TQBR971dEfuAFEi/YzSJVUKIICVQBrREiCFkT+5pYGc9Ys9CiKP/O9Xhc + x2LYXqK7nLnLuSc+XkwmXg2KeKvJEW30KJEKPc+viTiAaijJQb6gVV2pqyh5wstSgroKvGcdnMFD + C2eaUhvZCyj/o4CpjPgose+7DhgJbKAR8L3iWo7bKK4IxVBoUWUl/m1wnPvUvvHOF8RCX8xCHQuY + rVgGMhf8HlPx5Tzq2mCi4DXBpBZtdw8eSN1QmOW8tpQghJEa2uTrSqmqmaQg1eRmoHMA0ood2r36 + rviW3zMQWa6l4jWItsr1Om7Wwaf6x20pvqXRptT7xfbjWnlmYLuNuZ2Tej/d3KXTm/dxU2xSsf38 + Lly/3b66jpa7dfjhzTBLLoAoKDJizh8FYTQN5tNgmUbhKgxWSTRbLOMgXmyHJ1I3DRcqA2SEZqQo + BMh2Hc8mXjrZ0U3xl0bLcB5Ec0ejZs8ZZEzXu46ap+FlEiRJEkbP42GsRvBC56riDGcpCZXweLxe + 60YBhjPNUM+K4uIlQDu8lV0rgaLd5c/0mTIn/P1qNDU+6EhiswJ2lTL0+Na00j0X4gzFDkLi0AY4 + eC5sr5IOO3hOrICib4+nNrYTR0Rh6xnrd5hsz+kZ0LouNH4PNLPQ3nbhflW+/7iSfxyRNIaenEMq + QZgkRgbdPqOAa4AdYYeM5DnXzN5pHHG9yQmlO5Kbf7HnD54Li5ftC1uz/RZdnH4CJ/EtRoYFAAA= + headers: ["Content-Encoding: gzip\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:25 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM26ab376898de11e3ac6d026ba7d31e6f\r\n", "X-Balanced-Host: + balanced-api-06\r\n", "X-Balanced-Marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "X-Balanced-Merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "X-Balanced-Revision: + 1.1\r\n", "X-Balanced-Software-Build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "Content-Length: 569\r\n", "Connection: keep-alive\r\n"] + status: {code: 200, message: OK} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:25.468716Z\",\n \"created_at\": \"2014-02-18T20:49:25.287548Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1bgUV1ppmDVf12g59kVHWv\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1bgUV1ppmDVf12g59kVHWv\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:25 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM26ce565898de11e3ac3202a1fe52a36c\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBlBRAQNQV1MIAAFVU1UOAhtGVh0WEVsCAFoDWg9RAQxSVAdVCwATTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:26.374406Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:26.374409Z\",\n \"id\": \"CC1cubVMGpkGwi3afdApZuu2\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1cubVMGpkGwi3afdApZuu2\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:26 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2722680698de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMMVgdSB1JVDw9UV1UABwZIQVEACRtGRlBQAQEDWlIDUwhTDQtRAVVHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:27.193657Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:27.193661Z\",\n \"href\": \"/bank_accounts/BA1dpoXEEzam6uSQj2bHhtEY\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1dpoXEEzam6uSQj2bHhtEY\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:27 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM27b5031498de11e3aed402a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwdUVVQNAgRSWVQCCQNSUx0WAlpeT0ISAAFUXgBVBFJWXwBSBwFTBhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:27.903650Z\",\n \"created_at\": \"2014-02-18T20:49:27.722274Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1e0tEFK01Q30ywW8N9Ta42\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1e0tEFK01Q30ywW8N9Ta42\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:28 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2840877298de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1ZcAAJRUlYNBwdQWVcEBBtGVh0WEQZfBgdUAAsGAVtVAwIHCwITTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:28.872587Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:28.872591Z\",\n \"id\": \"CC1fhV9wHBcSVcA39sWhJIGc\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1fhV9wHBcSVcA39sWhJIGc\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:28 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM289dec9698de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMOVwVYBVJWDg5RVlIMBQVIQVEACRtGRgBQVloHV1ZUWwsHWQ5VA1BHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:29.702440Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:29.702445Z\",\n \"href\": \"/bank_accounts/BA1gep6aDhVIc537MFXyzudw\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1gep6aDhVIc537MFXyzudw\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:29 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2937d23498de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAgBXUVIMCwRdVVUFAQNTXR0WAlpeT0ISB11TCl0GAwtTCVEAWVAGVhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:30.289955Z\",\n \"created_at\": \"2014-02-18T20:49:30.101214Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1gGzSBdzlOjN56udm0QXQb\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1gGzSBdzlOjN56udm0QXQb\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:30 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM29accbb698de11e3836102a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBlJWBwNRVlcNAgZSUVMCBxtGVh0WEQdfUlFTWwFaDwwGAgRTDQQTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:31.326827Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:31.326830Z\",\n \"id\": \"CC1i2T2k83nYKKhfj0kZy0Fy\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1i2T2k83nYKKhfj0kZy0Fy\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:31 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2a0e5d6898de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIIVwlYAlJRBgRSXlQMBgFIQVEACRtGRgMHBwQCUFUEB10AD14CAApHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:32.138557Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:32.138560Z\",\n \"href\": \"/bank_accounts/BA1iYrdMiJHUVLNpIzegngkf\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1iYrdMiJHUVLNpIzegngkf\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:32 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2aa519f698de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwRSV1IKAwRdUFIFBg9VVh0WAlpeT0ISWw5QXAoMBAtcCFgEUAtbABQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:32.761036Z\",\n \"created_at\": \"2014-02-18T20:49:32.539170Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1jqrbgNn3shLQRuTaZsPyK\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1jqrbgNn3shLQRuTaZsPyK\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:32 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2b21245698de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SC1BWAgZRV1MOBQVcWFECBBtGVh0WEVZQVVoFWwxQCAgEAQFTAQUTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:33.715948Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:33.715952Z\",\n \"id\": \"CC1kJ0YoQvNp5yx12WJ968WW\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1kJ0YoQvNp5yx12WJ968WW\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:33 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2b84608498de11e3ba1302a1fe53e539\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMNUQBZAFtWAwFTXlUOAQFIQVEACRtGRgkGBQQDAgAHBg5TDFkCBwZHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:34.543143Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:34.543146Z\",\n \"href\": \"/bank_accounts/BA1lFU7g19K5WMXyx1xsTn8Q\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1lFU7g19K5WMXyx1xsTn8Q\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:34 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2c1440a098de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwZXVVEKCwVVUFoGAQRWVx0WAlpeT0ISVwBWWg8HClYDXwJXUFEEURQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:35.220098Z\",\n \"created_at\": \"2014-02-18T20:49:34.951172Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1m8znc08f2mypYPJq1U7F0\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1m8znc08f2mypYPJq1U7F0\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:35 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2c8c9ad298de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VBVZWBgdRV1oAAAZQU1cPHRdUSBEUUgcEVFEGUg9TAQ0ABVBWCUMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:36.161418Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:36.161422Z\",\n \"id\": \"CC1nuddFz5r196n4NZU8qsr5\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1nuddFz5r196n4NZU8qsr5\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:36 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2cfcfae898de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMKUwZWB1pWDw9XUlYIARxEUlUPHRdEVAABAlZRAgNRW1taDltVVxFJGQdQDUAHOQ==\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:36.983136Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:36.983140Z\",\n \"href\": \"/bank_accounts/BA1oqfs5Pf3W69E9X7ThFD4k\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1oqfs5Pf3W69E9X7ThFD4k\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:37 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2d7dde2e98de11e3836102a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAAJWU1sJAwlUWFAAAAVSSBEHC1pKQ0ADUA4AXAFXVwRQAVBUUlZWRhoXBwcPS1Zt\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:37.670102Z\",\n \"created_at\": \"2014-02-18T20:49:37.442568Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1oWiUeBQG2XtLT5Av95wX8\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1oWiUeBQG2XtLT5Av95wX8\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:37 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2e0a393c98de11e3a40502a1fe52a36c\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAVpWBQdRUlQKAQVdVFAGBBtGVh0WEQNfVVBRVwhbXVsCVFBSWFYTTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:38.658767Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:38.658769Z\",\n \"id\": \"CC1qisD4dRtvU7qpYRh5bG8w\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1qisD4dRtvU7qpYRh5bG8w\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:38 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2e6c289098de11e38f3a02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIJUQNQBFtSBAVXU1MJBwZIQVEACRtGRgJSVQdWWwMFUw5VDggEAldHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:39.467426Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:39.467430Z\",\n \"href\": \"/bank_accounts/BA1rdl7Gy9nBKzWdA5wijydM\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1rdl7Gy9nBKzWdA5wijydM\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:39 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2efd615298de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAw5RX1EBAwNVUlUFAQBWVx0WAlpeT0ISWglUDQEGVARSW1lVUAFUVhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:40.144878Z\",\n \"created_at\": \"2014-02-18T20:49:39.879745Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1rGtB7Ix1n5y7JmD4bAZDV\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1rGtB7Ix1n5y7JmD4bAZDV\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:40 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM2f812eb098de11e38f3a02a1fe53e539\r\n", + "x-balanced-host: balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAVVXBwRRXloLBABTU1UCBRtGVh0WEVdRAlMHW1lQDQ5SUVcEAFATTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:41.109104Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:41.109107Z\",\n \"id\": \"CC1t3jlaf33cGsXzgDoxh2TK\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1t3jlaf33cGsXzgDoxh2TK\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:41 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM2fe337fe98de11e38f7f02a1fe53e539\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVIIUgdUAFJcAQFQU1oOBQhIQVEACRtGRggOBlQHVABVAwFRXAgNVgdHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:42.020830Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:42.020834Z\",\n \"href\": \"/bank_accounts/BA1u5mO4QTQO9h1ccNOrMOka\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1u5mO4QTQO9h1ccNOrMOka\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:42 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM3072fb1498de11e3b33602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAABRUFIBAwFUWFACAw5VSBEHC1pKQ0ADVghTCQwHAwNQW1YBAgZTRhoXBwcPS1Zt\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:42.665822Z\",\n \"created_at\": \"2014-02-18T20:49:42.430504Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1uy6bt1re36lSXAXgVjyNa\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1uy6bt1re36lSXAXgVjyNa\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:42 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM310687a898de11e39a7302a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VAFtXAQRRV1ULBgdQU1MOHRdUSBEUAlVQAFoDUgpSCwhXAgtUDkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:43.661780Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:43.661782Z\",\n \"id\": \"CC1vVdpflITqonleKAHXl7b1\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1vVdpflITqonleKAHXl7b1\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:43 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM316f246698de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMOUAdVC1JWAwJQVFUBBgNIQVEACRtGRlMEB1ReAlYFUwsEAQoFUVdHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:44.363888Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:44.363891Z\",\n \"href\": \"/bank_accounts/BA1wITee0Kvl90w2NOKdHJ8j\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1wITee0Kvl90w2NOKdHJ8j\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:44 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM31f8b7da98de11e39a7302a1fe53e539\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAgFUVFYNCgdRVlAEAwFQUh0WAlpeT0ISWgFWDAoEBAoEXwQDWFAHABQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:45.249154Z\",\n \"created_at\": \"2014-02-18T20:49:45.025877Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1xtapVk86mSk87piqbOfDo\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1xtapVk86mSk87piqbOfDo\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:45 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM3275b30298de11e3992602a1fe52a36c\r\n", + "x-balanced-host: balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9UClFRBAdZUVoPBwVQWVEDHRdUSBEUBVEHAAYCW1taCF1VVgIAD0MdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:46.298573Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:46.298576Z\",\n \"id\": \"CC1yTlfrnqccvv2id6oisNWo\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1yTlfrnqccvv2id6oisNWo\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:46 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM32fee41a98de11e3992602a1fe52a36c\r\n", "x-balanced-host: + balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMPWAZSC1JRAgVWU1YJAQdIQVEACRtGRgACV1FQUgFWUVkGXghSUQBHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:47.277216Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:47.277220Z\",\n \"href\": \"/bank_accounts/BA1zZV0vodLbWARpEWF5Tfjc\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1zZV0vodLbWARpEWF5Tfjc\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:47 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM33a3b62a98de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAAdQVFcJAgFVVlcCAgBXVR0WAlpeT0ISAFxUAVtQBAoBXVdQUgQEXRQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:47.990502Z\",\n \"created_at\": \"2014-02-18T20:49:47.797251Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1AAmzUuAQ0EIRbZbs4cLai\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1AAmzUuAQ0EIRbZbs4cLai\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:48 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM343572d698de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-05\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9VA1dRBANYUFoJAwBdVFAGBBtGVh0WEVdeVVoBBAtWWl1QV1IGAAITTRMEBVpEBDs=\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:49.060040Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:49.060044Z\",\n \"id\": \"CC1C0dsmvv3xa6STijQAG42k\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1C0dsmvv3xa6STijQAG42k\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:49 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM34a5c4aa98de11e3ac3202a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMAUgFXC1JWAQNYUFALBAlIQVEACRtGRgIDBlFfV1EEWg9aDF0FCwpHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:49.833304Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:49.833309Z\",\n \"href\": \"/bank_accounts/BA1CSlrewIRKL5qDu9F7SHZt\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1CSlrewIRKL5qDu9F7SHZt\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:49 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM35372ae498de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-06\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAg9SXlMACglQU1sEAwZUXR0WAlpeT0ISBFlaCllRUwBdCFJSUVZUVhQbQQACVEBVOQ==\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 2] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /customers + port: 443 + protocol: https + response: + body: {string: "{\n \"customers\": [\n {\n \"name\": null,\n \"links\": + {\n \"source\": null,\n \"destination\": null\n },\n \"updated_at\": + \"2014-02-18T20:49:50.505531Z\",\n \"created_at\": \"2014-02-18T20:49:50.287598Z\",\n + \ \"dob_month\": null,\n \"id\": \"CU1DnZCSa2f9xM9CITfHl1pK\",\n + \ \"phone\": null,\n \"href\": \"/customers/CU1DnZCSa2f9xM9CITfHl1pK\",\n + \ \"merchant_status\": \"no-match\",\n \"meta\": {},\n \"dob_year\": + null,\n \"address\": {\n \"city\": null,\n \"line2\": null,\n + \ \"line1\": null,\n \"state\": null,\n \"postal_code\": + null,\n \"country_code\": null\n },\n \"business_name\": + null,\n \"ssn_last4\": null,\n \"email\": null,\n \"ein\": + null\n }\n ],\n \"links\": {\n \"customers.source\": \"/resources/{customers.source}\",\n + \ \"customers.card_holds\": \"/customers/{customers.id}/card_holds\",\n + \ \"customers.bank_accounts\": \"/customers/{customers.id}/bank_accounts\",\n + \ \"customers.debits\": \"/customers/{customers.id}/debits\",\n \"customers.destination\": + \"/resources/{customers.destination}\",\n \"customers.cards\": \"/customers/{customers.id}/cards\",\n + \ \"customers.transactions\": \"/customers/{customers.id}/transactions\",\n + \ \"customers.refunds\": \"/customers/{customers.id}/refunds\",\n \"customers.reversals\": + \"/customers/{customers.id}/reversals\",\n \"customers.orders\": \"/customers/{customers.id}/orders\",\n + \ \"customers.credits\": \"/customers/{customers.id}/credits\"\n }\n}"} + headers: ["Content-Type: application/json\r\n", "Date: Tue, 18 Feb 2014 20:49:50 + GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", "X-Balanced-Guru: OHM35b2e56c98de11e3ba1302a1fe53e539\r\n", + "x-balanced-host: balanced-api-01\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSQhUQXltWEBVNAUIHWRZdGhgSA0kZUR9SBlpRDgNZXlMAAQhcVFUDHRdUSBEUAwZfBlVSVgtaAAoEUwYADkMdQVUDCEVSPA==\r\n", + "Content-Length: 1447\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"expiration_month": 10, "meta": {"region": "Confusion", "city_town": "", + "address_2": "Box 2"}, "number": "4111111111111111", "expiration_year": 2020, + "address": {"state": "Confusion", "postal_code": "90210", "line1": "123 Main + Street"}}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [Content-Length, !!python/unicode 238] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + host: api.balancedpayments.com + method: POST + path: /cards + port: 443 + protocol: https + response: + body: {string: "{\n \"cards\": [\n {\n \"cvv_match\": null,\n \"links\": + {\n \"customer\": null\n },\n \"name\": null,\n \"expiration_year\": + 2020,\n \"avs_street_match\": \"yes\",\n \"is_verified\": true,\n + \ \"created_at\": \"2014-02-18T20:49:51.359706Z\",\n \"cvv_result\": + null,\n \"brand\": \"Visa\",\n \"number\": \"xxxxxxxxxxxx1111\",\n + \ \"updated_at\": \"2014-02-18T20:49:51.359710Z\",\n \"id\": \"CC1EAtWOXdJ3Yw4FI0dQKtZY\",\n + \ \"expiration_month\": 10,\n \"cvv\": null,\n \"meta\": {\n + \ \"region\": \"Confusion\",\n \"city_town\": \"\",\n \"address_2\": + \"Box 2\"\n },\n \"href\": \"/cards/CC1EAtWOXdJ3Yw4FI0dQKtZY\",\n + \ \"address\": {\n \"city\": \"Balo Alto\",\n \"line2\": + null,\n \"line1\": \"123 Main Street\",\n \"state\": null,\n + \ \"postal_code\": \"90210\",\n \"country_code\": null\n },\n + \ \"fingerprint\": \"8c7f0423365af88c3e36cf02746eca64fdcf36ddc2e1f398c7ec9f3ffd05a267\",\n + \ \"avs_postal_match\": \"no\",\n \"avs_result\": \"Street address + and postal code do not match.\"\n }\n ],\n \"links\": {\n \"cards.card_holds\": + \"/cards/{cards.id}/card_holds\",\n \"cards.customer\": \"/customers/{cards.customer}\",\n + \ \"cards.debits\": \"/cards/{cards.id}/debits\"\n }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:51 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM360a5a8698de11e3aed402a1fe52a36c\r\n", "x-balanced-host: + balanced-api-04\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhSVhQAQhhQEAMCFlVAFEIIFBQCHVMKVQlRAVpVDgVYXlALCghIQVEACRtGRlABAFBeBQRSA1xUDQ5RAQVHFUFXAF8RAWs=\r\n", + "Content-Length: 1216\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} +- request: !!python/object:vcr.request.Request + body: '{"routing_number": "121042882", "account_number": "112233a", "name": "Homer + Jay"}' + headers: !!python/object/apply:__builtin__.frozenset + - - !!python/tuple [Authorization, !!python/unicode Basic YWstdGVzdC0yZlB5U056cmVSNkM2aURjNWFxOHgwZzhIQXFMREFEb246Tm9uZQ==] + - !!python/tuple [User-Agent, !!python/unicode balanced-python/1.0.1beta2] + - !!python/tuple [Content-Type, !!python/unicode application/json] + - !!python/tuple [Accept-Encoding, 'gzip, deflate, compress'] + - !!python/tuple [accept, !!python/unicode application/vnd.api+json;revision=1.1] + - !!python/tuple [Content-Length, !!python/unicode 81] + host: api.balancedpayments.com + method: POST + path: /bank_accounts + port: 443 + protocol: https + response: + body: {string: "{\n \"bank_accounts\": [\n {\n \"routing_number\": \"121042882\",\n + \ \"bank_name\": \"WELLS FARGO BANK NA\",\n \"account_type\": \"checking\",\n + \ \"name\": \"Homer Jay\",\n \"links\": {\n \"customer\": + null,\n \"bank_account_verification\": null\n },\n \"can_credit\": + true,\n \"created_at\": \"2014-02-18T20:49:52.260984Z\",\n \"fingerprint\": + \"dac6514d9dd3a1cd7ac925d5749e0308c2c65fa27c506aefb0c9b21611ff9969\",\n \"updated_at\": + \"2014-02-18T20:49:52.260989Z\",\n \"href\": \"/bank_accounts/BA1FBBQ4r6lG9Iy4q4iwEQPC\",\n + \ \"meta\": {},\n \"account_number\": \"xxx233a\",\n \"address\": + {\n \"city\": null,\n \"line2\": null,\n \"line1\": null,\n + \ \"state\": null,\n \"postal_code\": null,\n \"country_code\": + null\n },\n \"can_debit\": false,\n \"id\": \"BA1FBBQ4r6lG9Iy4q4iwEQPC\"\n + \ }\n ],\n \"links\": {\n \"bank_accounts.credits\": \"/bank_accounts/{bank_accounts.id}/credits\",\n + \ \"bank_accounts.bank_account_verifications\": \"/bank_accounts/{bank_accounts.id}/verifications\",\n + \ \"bank_accounts.customer\": \"/customers/{bank_accounts.customer}\",\n + \ \"bank_accounts.debits\": \"/bank_accounts/{bank_accounts.id}/debits\",\n + \ \"bank_accounts.bank_account_verification\": \"/verifications/{bank_accounts.bank_account_verification}\"\n + \ }\n}"} + headers: ["access-control-allow-headers: Content-Type\r\n", "access-control-allow-methods: + POST, OPTIONS\r\n", "access-control-allow-origin: *\r\n", "Content-Type: application/json\r\n", + "Date: Tue, 18 Feb 2014 20:49:52 GMT\r\n", "Server: ngx_openresty/1.2.6.3\r\n", + "X-Balanced-Guru: OHM36a5591498de11e3a40502a1fe52a36c\r\n", "x-balanced-host: + balanced-api-02\r\n", "x-balanced-marketplace: TEST-MP4pdETrZYO1CKZBA29bC1QJ\r\n", + "x-balanced-merchant: TEST-MR4oMv3Sk7Oj9Ye1sjtY6aEx\r\n", "x-balanced-revision: + 1.1\r\n", "x-balanced-software-build: dfd1202ab405260786f90f0f7b3c0d0945b43b68\r\n", + "X-Midlr-Version: 2\r\n", "x-newrelic-app-data: PxQFWFNXCQYTVVhWAwQDVUYdFhE1AwE2QgNWEVlbQFtcCxYxSBVbDQoZVA4IF0pcXAgEEBhTVggPbldQAQkWDEQRFgFKXVVGVkcVQQFNE1JKAwVQU1YIAgdcVFAACQRUSBEHC1pKQ0BVUg9TCgsBAARQCAMFWARbRhoXBwcPS1Zt\r\n", + "Content-Length: 1281\r\n", "Connection: keep-alive\r\n"] + status: {code: 201, message: CREATED} diff --git a/tests/test_billing.py b/tests/test_billing.py index 3d02135a43..73a74b9a5c 100644 --- a/tests/test_billing.py +++ b/tests/test_billing.py @@ -1,7 +1,10 @@ from __future__ import unicode_literals +import os + import balanced import mock +import vcr from gittip import billing from gittip.security import authentication @@ -9,65 +12,138 @@ from gittip.models.participant import Participant +def setUp_balanced(o): + o.vcr = vcr.VCR( + cassette_library_dir = os.path.dirname(os.path.realpath(__file__)) + '/fixtures/', + record_mode = 'once', + match_on = ['url', 'method'], + ) + o.vcr_cassette = o.vcr.use_cassette('{}.yml'.format(o.__name__)).__enter__() + o.balanced_api_key = balanced.APIKey().save().secret + balanced.configure(o.balanced_api_key) + mp = balanced.Marketplace.my_marketplace + if not mp: + mp = balanced.Marketplace().save() + o.balanced_marketplace = mp + + +def setUp_balanced_resources(o): + o.balanced_customer_href = unicode(balanced.Customer().save().href) + o.card_href = unicode(balanced.Card( + number='4111111111111111', + expiration_month=10, + expiration_year=2020, + address={ + 'line1': "123 Main Street", + 'state': 'Confusion', + 'postal_code': '90210', + }, + # gittip stores some of the address data in the meta fields, + # continue using them to support backwards compatibility + meta={ + 'address_2': 'Box 2', + 'city_town': '', + 'region': 'Confusion', + } + ).save().href) + o.bank_account_href = unicode(balanced.BankAccount( + name='Homer Jay', + account_number='112233a', + routing_number='121042882', + ).save().href) + + +def tearDown_balanced(o): + o.vcr_cassette.__exit__(None, None, None) + + class TestBillingBase(Harness): - balanced_account_uri = '/v1/marketplaces/M123/accounts/A123' - balanced_destination_uri = '/v1/bank_accounts/X' - card_uri = '/v1/marketplaces/M123/accounts/A123/cards/C123' + + @classmethod + def setUpClass(cls): + super(TestBillingBase, cls).setUpClass() + setUp_balanced(cls) + + @classmethod + def tearDownClass(cls): + tearDown_balanced(cls) + super(TestBillingBase, cls).tearDownClass() def setUp(self): Harness.setUp(self) + setUp_balanced_resources(self) self.alice = self.make_participant('alice', elsewhere='github') class TestBalancedCard(Harness): - balanced_account_uri = '/v1/marketplaces/M123/accounts/A123' - @mock.patch('balanced.Account') - def test_balanced_card_basically_works(self, ba): - card = mock.Mock() - card.last_four = 1234 - card.expiration_month = 10 - card.expiration_year = 2020 - card.street_address = "123 Main Street" - card.meta = {"address_2": "Box 2"} - card.region = "Confusion" - card.postal_code = "90210" - - balanced_account = ba.find.return_value - balanced_account.uri = self.balanced_account_uri - balanced_account.cards = mock.Mock() - balanced_account.cards.all.return_value = [card] + @classmethod + def setUpClass(cls): + super(TestBalancedCard, cls).setUpClass() + setUp_balanced(cls) + + def setUp(self): + Harness.setUp(self) + setUp_balanced_resources(self) + + @classmethod + def tearDownClass(cls): + tearDown_balanced(cls) + super(TestBalancedCard, cls).tearDownClass() + + def test_balanced_card_basically_works(self): + balanced.Card.fetch(self.card_href) \ + .associate_to_customer(self.balanced_customer_href) expected = { - 'id': '/v1/marketplaces/M123/accounts/A123', - 'last_four': 1234, - 'last4': '************1234', + 'id': self.balanced_customer_href, + 'last_four': 'xxxxxxxxxxxx1111', + 'last4': 'xxxxxxxxxxxx1111', 'expiration_month': 10, 'expiration_year': 2020, 'address_1': '123 Main Street', 'address_2': 'Box 2', 'state': 'Confusion', - 'zip': '90210' + 'zip': '90210', } - card = billing.BalancedCard(self.balanced_account_uri) + card = billing.BalancedCard(self.balanced_customer_href) actual = dict([(name, card[name]) for name in expected]) assert actual == expected - @mock.patch('balanced.Account') + @mock.patch('balanced.Customer') def test_balanced_card_gives_class_name_instead_of_KeyError(self, ba): card = mock.Mock() - balanced_account = ba.find.return_value - balanced_account.uri = self.balanced_account_uri + balanced_account = ba.fetch.return_value + balanced_account.href = self.balanced_customer_href balanced_account.cards = mock.Mock() - balanced_account.cards.all.return_value = [card] + balanced_account.cards.filter.return_value.all.return_value = [card] - card = billing.BalancedCard(self.balanced_account_uri) + card = billing.BalancedCard(self.balanced_customer_href) expected = mock.Mock.__name__ actual = card['nothing'].__class__.__name__ + assert actual == expected + def test_balanced_works_with_old_urls(self): + # gittip will have a combination of old style from v1 + # and new urls from v1.1 + balanced.Card.fetch(self.card_href).associate_to_customer( + self.balanced_customer_href + ) + # do not actually do this in any real system + # but construct the url using the id from the + # customer and marketplace on the new api + # to match the format of that of the old one + url_user = '/v1/marketplaces/{}/accounts/{}'.format( + self.balanced_marketplace.id, + self.balanced_customer_href.split('/customers/')[1]) + + card = billing.BalancedCard(url_user) + + assert card._thing.href == self.card_href + class TestStripeCard(Harness): @mock.patch('stripe.Customer') @@ -111,47 +187,35 @@ def test_stripe_card_gives_empty_string_instead_of_KeyError(self, sc): class TestBalancedBankAccount(Harness): - balanced_account_uri = '/v1/marketplaces/M123/accounts/A123' - balanced_bank_account_uri = balanced_account_uri + '/bank_accounts/B123' - - @mock.patch('gittip.billing.balanced.Account') - @mock.patch('gittip.billing.balanced.BankAccount') - def test_balanced_bank_account(self, b_b_account, b_account): - # b_account = balanced.Account - # b_b_account = balanced.BankAccount - # b_b_b_account = billing.BalancedBankAccount - # got it? - bank_account = mock.Mock() - bank_account.is_valid = True - b_account.find.return_value\ - .bank_accounts.all.return_value = [bank_account] - - b_b_b_account = billing.BalancedBankAccount(self.balanced_account_uri) - assert b_account.find.called_with(self.balanced_account_uri) - assert b_b_account.find.called_with(self.balanced_bank_account_uri) - - assert b_b_b_account.is_setup + + @classmethod + def setUpClass(cls): + super(TestBalancedBankAccount, cls).setUpClass() + setUp_balanced(cls) + + def setUp(self): + Harness.setUp(self) + setUp_balanced_resources(self) + + @classmethod + def tearDownClass(cls): + tearDown_balanced(cls) + super(TestBalancedBankAccount, cls).tearDownClass() + + + def test_balanced_bank_account(self): + balanced.BankAccount.fetch(self.bank_account_href)\ + .associate_to_customer(self.balanced_customer_href) + + ba_account = billing.BalancedBankAccount(self.balanced_customer_href) + + assert ba_account.is_setup + with self.assertRaises(IndexError): - b_b_b_account.__getitem__('invalid') - - @mock.patch('gittip.billing.balanced.Account') - @mock.patch('gittip.billing.balanced.BankAccount') - def test_balanced_bank_account_account_uri(self, b_b_account, b_account): - # b_account = balanced.Account - # b_b_account = balanced.BankAccount - # b_b_b_account = billing.BalancedBankAccount - # got it? - bank_account = mock.Mock() - bank_account.is_valid = True - b_account.find.return_value\ - .bank_accounts.all.return_value = [bank_account] - b_account.uri = "Here I am!" - bank_account.account = b_account - - b_b_b_account = billing.BalancedBankAccount(self.balanced_account_uri) - - expected = "Here I am!" - actual = b_b_b_account['account_uri'] + ba_account.__getitem__('invalid') + + actual = ba_account['customer_href'] + expected = self.balanced_customer_href assert actual == expected def test_balanced_bank_account_not_setup(self): @@ -161,89 +225,71 @@ def test_balanced_bank_account_not_setup(self): class TestBillingAssociate(TestBillingBase): - @mock.patch('gittip.billing.balanced.Account.find') - @mock.patch('gittip.billing.get_balanced_account') - def test_associate_valid_card(self, gba, find): - find.return_value.uri = self.balanced_account_uri - gba.return_value.uri = self.balanced_account_uri - - # first time through, payment processor account is None - billing.associate(self.db, u"credit card", 'alice', None, self.card_uri) - - assert gba.call_count == 1 - assert gba.return_value.add_card.call_count == 1 - assert gba.return_value.add_bank_account.call_count == 0 - - @mock.patch('balanced.Account.find') - def test_associate_invalid_card(self, find): - error_message = 'Something terrible' - not_found = balanced.exc.HTTPError(error_message) - find.return_value.add_card.side_effect = not_found - find.return_value.uri = self.balanced_account_uri - - # second time through, payment processor account is balanced - # account_uri + + def test_associate_valid_card(self): + billing.associate(self.db, u"credit card", 'alice', None, self.card_href) + + user = authentication.User.from_username('alice') + customer = balanced.Customer.fetch(user.participant.balanced_account_uri) + cards = customer.cards.all() + assert len(cards) == 1 + assert cards[0].href == self.card_href + + def test_associate_invalid_card(self): #, find): + billing.associate( self.db , u"credit card" , 'alice' - , self.balanced_account_uri - , self.card_uri + , self.balanced_customer_href + , '/cards/CC123123123123', # invalid href ) user = authentication.User.from_username('alice') # participant in db should be updated to reflect the error message of # last update - assert user.participant.last_bill_result == error_message - assert find.call_count + assert user.participant.last_bill_result == '404 Client Error: NOT FOUND' - @mock.patch('gittip.billing.balanced.Account.find') - def test_associate_bank_account_valid(self, find): + def test_associate_bank_account_valid(self): - find.return_value.uri = self.balanced_account_uri billing.associate( self.db , u"bank account" , 'alice' - , self.balanced_account_uri - , self.balanced_destination_uri + , self.balanced_customer_href + , self.bank_account_href ) - args, _ = find.call_args - assert args == (self.balanced_account_uri,) + #args, _ = find.call_args + + customer = balanced.Customer.fetch(self.balanced_customer_href) + bank_accounts = customer.bank_accounts.all() + assert len(bank_accounts) == 1 + assert bank_accounts[0].href == self.bank_account_href - args, _ = find.return_value.add_bank_account.call_args - assert args == (self.balanced_destination_uri,) user = authentication.User.from_username('alice') # participant in db should be updated assert user.participant.last_ach_result == '' - @mock.patch('gittip.billing.balanced.Account.find') - def test_associate_bank_account_invalid(self, find): - ex = balanced.exc.HTTPError('errrrrror') - find.return_value.add_bank_account.side_effect = ex - find.return_value.uri = self.balanced_account_uri + def test_associate_bank_account_invalid(self): billing.associate( self.db , u"bank account" , 'alice' - , self.balanced_account_uri - , self.balanced_destination_uri + , self.balanced_customer_href + , '/bank_accounts/BA123123123123123123' # invalid href ) # participant in db should be updated alice = Participant.from_username('alice') - assert alice.last_ach_result == 'errrrrror' + assert alice.last_ach_result == '404 Client Error: NOT FOUND' class TestBillingClear(TestBillingBase): - @mock.patch('balanced.Account.find') - def test_clear(self, find): - valid_card = mock.Mock() - valid_card.is_valid = True - invalid_card = mock.Mock() - invalid_card.is_valid = False - card_collection = [valid_card, invalid_card] - find.return_value.cards = card_collection + + def test_clear(self): + + balanced.Card.fetch(self.card_href)\ + .associate_to_customer(self.balanced_customer_href) MURKY = """\ @@ -255,26 +301,19 @@ def test_clear(self, find): """ self.db.run(MURKY, ('alice',)) - billing.clear(self.db, u"credit card", 'alice', self.balanced_account_uri) + billing.clear(self.db, u"credit card", 'alice', self.balanced_customer_href) - assert not valid_card.is_valid - assert valid_card.save.call_count - assert not invalid_card.save.call_count + customer = balanced.Customer.fetch(self.balanced_customer_href) + cards = customer.cards.all() + assert len(cards) == 0 user = authentication.User.from_username('alice') assert not user.participant.last_bill_result assert user.participant.balanced_account_uri - @mock.patch('gittip.billing.balanced.Account') - def test_clear_bank_account(self, b_account): - valid_ba = mock.Mock() - valid_ba.is_valid = True - invalid_ba = mock.Mock() - invalid_ba.is_valid = False - ba_collection = [ - valid_ba, invalid_ba - ] - b_account.find.return_value.bank_accounts = ba_collection + def test_clear_bank_account(self): + balanced.BankAccount.fetch(self.bank_account_href)\ + .associate_to_customer(self.balanced_customer_href) MURKY = """\ @@ -286,11 +325,11 @@ def test_clear_bank_account(self, b_account): """ self.db.run(MURKY, ('alice',)) - billing.clear(self.db, u"bank account", 'alice', 'something') + billing.clear(self.db, u"bank account", 'alice', self.balanced_customer_href) - assert not valid_ba.is_valid - assert valid_ba.save.call_count - assert not invalid_ba.save.call_count + customer = balanced.Customer.fetch(self.balanced_customer_href) + bank_accounts = customer.bank_accounts.all() + assert len(bank_accounts) == 0 user = authentication.User.from_username('alice') assert not user.participant.last_ach_result diff --git a/tests/test_billing_payday.py b/tests/test_billing_payday.py index accd2f1c5f..4195a297cd 100644 --- a/tests/test_billing_payday.py +++ b/tests/test_billing_payday.py @@ -63,7 +63,7 @@ def test_charge_without_cc_marked_as_failure(self): def test_charge_failure_returns_None(self, cob): cob.return_value = (Decimal('10.00'), Decimal('0.68'), 'FAILED') bob = self.make_participant('bob', last_bill_result="failure", - balanced_account_uri=self.balanced_account_uri, + balanced_account_uri=self.balanced_customer_href, stripe_customer_id=self.STRIPE_CUSTOMER_ID, is_suspicious=False) @@ -75,7 +75,7 @@ def test_charge_failure_returns_None(self, cob): def test_charge_success_returns_None(self, charge_on_balanced): charge_on_balanced.return_value = (Decimal('10.00'), Decimal('0.68'), "") bob = self.make_participant('bob', last_bill_result="failure", - balanced_account_uri=self.balanced_account_uri, + balanced_account_uri=self.balanced_customer_href, stripe_customer_id=self.STRIPE_CUSTOMER_ID, is_suspicious=False) @@ -87,7 +87,7 @@ def test_charge_success_returns_None(self, charge_on_balanced): def test_charge_success_updates_participant(self, cob): cob.return_value = (Decimal('10.00'), Decimal('0.68'), "") bob = self.make_participant('bob', last_bill_result="failure", - balanced_account_uri=self.balanced_account_uri, + balanced_account_uri=self.balanced_customer_href, is_suspicious=False) self.payday.start() self.payday.charge(bob, Decimal('1.00')) @@ -106,7 +106,7 @@ def test_payday_moves_money(self, charge_on_balanced): last_bill_result='', is_suspicious=False) carl = self.make_participant('carl', claimed_time=day_ago, - balanced_account_uri=self.balanced_account_uri, + balanced_account_uri=self.balanced_customer_href, last_bill_result='', is_suspicious=False) carl.set_tip_to('bob', '6.00') # under $10! @@ -126,7 +126,7 @@ def test_payday_doesnt_move_money_from_a_suspicious_account(self, charge_on_bala last_bill_result='', is_suspicious=False) carl = self.make_participant('carl', claimed_time=day_ago, - balanced_account_uri=self.balanced_account_uri, + balanced_account_uri=self.balanced_customer_href, last_bill_result='', is_suspicious=True) carl.set_tip_to('bob', '6.00') # under $10! @@ -146,7 +146,7 @@ def test_payday_doesnt_move_money_to_a_suspicious_account(self, charge_on_balanc last_bill_result='', is_suspicious=True) carl = self.make_participant('carl', claimed_time=day_ago, - balanced_account_uri=self.balanced_account_uri, + balanced_account_uri=self.balanced_customer_href, last_bill_result='', is_suspicious=False) carl.set_tip_to('bob', '6.00') # under $10! @@ -158,10 +158,48 @@ def test_payday_doesnt_move_money_to_a_suspicious_account(self, charge_on_balanc assert bob.balance == Decimal('0.00') assert carl.balance == Decimal('0.00') + def test_payday_moves_money_with_balanced(self): + day_ago = utcnow() - timedelta(days=1) + paying_customer = balanced.Customer().save() + balanced.Card.fetch(self.card_href)\ + .associate_to_customer(paying_customer) + balanced.BankAccount.fetch(self.bank_account_href)\ + .associate_to_customer(self.balanced_customer_href) + bob = self.make_participant('bob', claimed_time=day_ago, + balanced_account_uri=self.balanced_customer_href, + last_bill_result='', + is_suspicious=False) + carl = self.make_participant('carl', claimed_time=day_ago, + balanced_account_uri=paying_customer.href, + last_bill_result='', + is_suspicious=False) + carl.set_tip_to('bob', '15.00') + self.payday.run() + + bob = Participant.from_username('bob') + carl = Participant.from_username('carl') + + assert bob.balance == Decimal('0.00') + assert carl.balance == Decimal('0.00') + + bob_customer = balanced.Customer.fetch(bob.balanced_account_uri) + carl_customer = balanced.Customer.fetch(carl.balanced_account_uri) + + bob_credits = bob_customer.credits.all() + assert len(bob_credits) == 1 + assert bob_credits[0].amount == 1500 + assert bob_credits[0].description == 'bob' + + carl_debits = carl_customer.debits.all() + assert len(carl_debits) == 1 + assert carl_debits[0].amount == 1576 # base amount + fee + assert carl_debits[0].description == 'carl' + class TestBillingCharges(TestPaydayBase): - BALANCED_ACCOUNT_URI = u'/v1/marketplaces/M123/accounts/A123' - BALANCED_TOKEN = u'/v1/marketplaces/M123/accounts/A123/cards/C123' + BALANCED_CUSTOMER_HREF = '/customers/CU123123123' + BALANCED_TOKEN = u'/cards/CU123123123' + STRIPE_CUSTOMER_ID = u'cus_deadbeef' def test_mark_missing_funding(self): @@ -211,28 +249,28 @@ def test_charge_on_stripe(self, ba): , self.alice.username ) - @mock.patch('balanced.Account') + @mock.patch('balanced.Customer') def test_charge_on_balanced(self, ba): amount_to_charge = Decimal('10.00') # $10.00 USD expected_fee = Decimal('0.61') charge_amount, fee, msg = self.payday.charge_on_balanced( - self.alice.username, self.BALANCED_ACCOUNT_URI, amount_to_charge) + self.alice.username, self.BALANCED_CUSTOMER_HREF, amount_to_charge) assert charge_amount == amount_to_charge + fee assert fee == expected_fee - assert ba.find.called_with(self.BALANCED_ACCOUNT_URI) - customer = ba.find.return_value - assert customer.debit.called_with( int(charge_amount * 100) + assert ba.fetch.called_with(self.BALANCED_CUSTOMER_HREF) + customer = ba.fetch.return_value + assert customer.bank_accounts.one.debit.called_with( int(charge_amount * 100) , self.alice.username ) - @mock.patch('balanced.Account') + @mock.patch('balanced.Customer') def test_charge_on_balanced_small_amount(self, ba): amount_to_charge = Decimal('0.06') # $0.06 USD expected_fee = Decimal('0.59') expected_amount = Decimal('10.00') charge_amount, fee, msg = \ self.payday.charge_on_balanced(self.alice.username, - self.BALANCED_ACCOUNT_URI, + self.BALANCED_CUSTOMER_HREF, amount_to_charge) assert charge_amount == expected_amount assert fee == expected_fee @@ -241,14 +279,18 @@ def test_charge_on_balanced_small_amount(self, ba): , self.alice.username ) - @mock.patch('balanced.Account') - def test_charge_on_balanced_failure(self, ba): + + def test_charge_on_balanced_failure(self): + balanced.Card( + number='4444444444444448', + expiration_year=2020, + expiration_month=12 + ).save().associate_to_customer(self.balanced_customer_href) + amount_to_charge = Decimal('0.06') # $0.06 USD - error_message = 'Woah, crazy' - ba.find.side_effect = balanced.exc.HTTPError(error_message) charge_amount, fee, msg = self.payday.charge_on_balanced( - self.alice.username, self.BALANCED_ACCOUNT_URI, amount_to_charge) - assert msg == error_message + self.alice.username, self.balanced_customer_href, amount_to_charge) + assert msg == '402 Client Error: PAYMENT REQUIRED' class TestPrepHit(TestPaydayBase): @@ -332,7 +374,7 @@ def test_prep_hit_at_nine_forty_two(self): class TestBillingPayday(TestPaydayBase): - BALANCED_ACCOUNT_URI = '/v1/marketplaces/M123/accounts/A123' + BALANCED_CUSTOMER_HREF = '/customers/CU123123123' def test_move_pending_to_balance_for_teams_does_so(self): self.make_participant('A', number='plural', balance=2, pending=3) @@ -357,7 +399,7 @@ def test_charge_and_or_transfer_no_tips(self, get_tips_and_total): , is_suspicious=False WHERE username='alice' - """, (self.BALANCED_ACCOUNT_URI,)) + """, (self.BALANCED_CUSTOMER_HREF,)) amount = Decimal('1.00') @@ -384,7 +426,7 @@ def test_charge_and_or_transfer(self, tip, get_tips_and_total): , is_suspicious=False WHERE username='alice' - """, (self.BALANCED_ACCOUNT_URI,)) + """, (self.BALANCED_CUSTOMER_HREF,)) ts_start = self.payday.start() now = datetime.utcnow() @@ -425,7 +467,7 @@ def test_charge_and_or_transfer_short(self, charge, get_tips_and_total): , is_suspicious=False WHERE username='alice' - """, (self.BALANCED_ACCOUNT_URI,)) + """, (self.BALANCED_CUSTOMER_HREF,)) now = datetime.utcnow() amount = Decimal('1.00') @@ -452,7 +494,7 @@ def test_charge_and_or_transfer_short(self, charge, get_tips_and_total): with self.assertRaises(Exception): billing.charge_and_or_transfer(ts_start, self.alice) assert charge.called_with(self.alice.username, - self.BALANCED_ACCOUNT_URI, + self.BALANCED_CUSTOMER_HREF, amount) @mock.patch('gittip.billing.payday.Payday.transfer') @@ -466,7 +508,7 @@ def test_tip(self, log, transfer): , is_suspicious=False WHERE username='alice' - """, (self.BALANCED_ACCOUNT_URI,)) + """, (self.BALANCED_CUSTOMER_HREF,)) amount = Decimal('1.00') invalid_amount = Decimal('0.00') tip = { 'amount': amount @@ -518,10 +560,10 @@ def test_tip(self, log, transfer): def test_start_zero_out_and_get_participants(self, log): self.make_participant('bob', balance=10, claimed_time=None, pending=1, - balanced_account_uri=self.BALANCED_ACCOUNT_URI) + balanced_account_uri=self.BALANCED_CUSTOMER_HREF) self.make_participant('carl', balance=10, claimed_time=utcnow(), pending=1, - balanced_account_uri=self.BALANCED_ACCOUNT_URI) + balanced_account_uri=self.BALANCED_CUSTOMER_HREF) self.db.run(""" UPDATE participants @@ -531,7 +573,7 @@ def test_start_zero_out_and_get_participants(self, log): , balanced_account_uri=%s WHERE username='alice' - """, (self.BALANCED_ACCOUNT_URI,)) + """, (self.BALANCED_CUSTOMER_HREF,)) ts_start = self.payday.start() @@ -606,7 +648,7 @@ def setUp(self): TestPaydayBase.setUp(self) self.payday.start() self.tipper = self.make_participant('lgtest') - self.balanced_account_uri = '/v1/marketplaces/M123/accounts/A123' + #self.balanced_account_uri = '/v1/marketplaces/M123/accounts/A123' def test_transfer(self): amount = Decimal('1.00') diff --git a/vendor/balanced-0.11.5.tar.gz b/vendor/balanced-0.11.5.tar.gz deleted file mode 100644 index 31a894c53b..0000000000 Binary files a/vendor/balanced-0.11.5.tar.gz and /dev/null differ diff --git a/vendor/balanced-1.0.1beta2.tar.gz b/vendor/balanced-1.0.1beta2.tar.gz new file mode 100644 index 0000000000..f8239be72f Binary files /dev/null and b/vendor/balanced-1.0.1beta2.tar.gz differ diff --git a/vendor/vcrpy-0.6.0.tar.gz b/vendor/vcrpy-0.6.0.tar.gz new file mode 100644 index 0000000000..c3220b5003 Binary files /dev/null and b/vendor/vcrpy-0.6.0.tar.gz differ diff --git a/www/bank-account.html.spt b/www/bank-account.html.spt index 0e2e9202ef..8a5900e3d8 100644 --- a/www/bank-account.html.spt +++ b/www/bank-account.html.spt @@ -19,19 +19,8 @@ if not user.ANON: if balanced_account_uri: working = user.participant.last_ach_result == "" status = "connected" if working else "not connected" - account = balanced.Account.find(balanced_account_uri) bank_account = billing.BalancedBankAccount(balanced_account_uri) - if bank_account.is_setup: - - # Factored out to aid debugging. This extra var will show up in the - # context on Sentry so we can compare the two values. See: - # - # https://github.com/gittip/www.gittip.com/issues/791 - - _bank_account_account_uri = bank_account['account_uri'] - - assert balanced_account_uri == _bank_account_account_uri username = user.participant.username @@ -92,7 +81,7 @@ title = "Bank Account" {% if bank_account and bank_account.is_setup %}

Current: {{ bank_account['bank_name'] }} - ******{{ bank_account['last_four'] }}

+ ******{{ bank_account['account_number'][-4:] }} {% endif %}
{% if user.participant.last_ach_result %} @@ -170,6 +159,13 @@ title = "Bank Account"
+
+ + +
+ +
+

Routing Information

{% endif %} diff --git a/www/bank-account.json.spt b/www/bank-account.json.spt index 07dc899c95..5799f878c4 100644 --- a/www/bank-account.json.spt +++ b/www/bank-account.json.spt @@ -41,21 +41,27 @@ else: # identify the merchant. out = {} - if 'merchant' not in balanced_account.roles: - merchant_keys = ['type', 'street_address', 'postal_code', 'region', - 'dob', 'name', 'phone_number'] - merchant_data = dict((key, body.get(key)) for key in merchant_keys) + if balanced_account.merchant_status != 'underwritten': + + balanced_account.name = body.get('name') + balanced_account.address['line1'] = body.get('street_address') + balanced_account.address['postal_code'] = body.get('postal_code') + balanced_account.address['state'] = body.get('region') + balanced_account.phone = body.get('phone_number') + balanced_account.dob_month = body.get('dob_month') + balanced_account.dob_year = body.get('dob_year') + balanced_account.meta['dob_day'] = body.get('dob_day') + balanced_account.ssn_last4 = body.get('ssn_last4') try: - balanced_account.add_merchant(merchant_data) # HTTP under here - except balanced.exc.MoreInformationRequiredError as mirerr: + balanced_account.save() + except balanced.exc.HTTPError as err: + out = {"problem": "Problem", "error": err.message} + + if balanced_account.merchant_status != 'underwritten': out = { 'problem': 'More Info Needed' , 'error': 'Unable to verify your identity' - , 'redirect_uri': mirerr.redirect_uri + '?' + - urllib.urlencode([('redirect_uri', redirect_to)]) + '&' } - except balanced.exc.HTTPError as err: - out = {"problem": "Problem", "error": err.message} # No errors? Great! Let's add the bank account. @@ -67,7 +73,7 @@ else: billing.clear( website.db , u"bank account" , user.participant.username - , balanced_account.uri + , balanced_account.href ) bank_account_uri = body['bank_account_uri'] diff --git a/www/credit-card.html.spt b/www/credit-card.html.spt index 3086627e1c..74993ee8bc 100644 --- a/www/credit-card.html.spt +++ b/www/credit-card.html.spt @@ -19,14 +19,15 @@ if not user.ANON: if user.participant.last_bill_result is not None: status = "working" if user.participant.last_bill_result == "" \ else "failing" - if balanced_account_uri: card = billing.BalancedCard(balanced_account_uri) - assert balanced_account_uri == card['id'] + # the id on the card might not match unless the db + # is updated to use the new style of urls else: card = billing.StripeCard(stripe_customer_id) assert stripe_customer_id == card['id'] + username = user.participant.username title = "Credit Card" @@ -87,7 +88,7 @@ title = "Credit Card"
{% if status != "missing" %} -

Current: {{ card['card_type'] }} {{ card['last4'] }}

+

Current: {{ card['brand'] }} {{ card['number'][-4:] }}

{% endif %}
{% if user.participant.last_bill_result %}