Retrieves the detailed billing records associated with a subscriber's account. The call is for records already billed. The getBillingRecords call is used after you have used getBillingStatements to retrieve a statementId. The application identity and token are sent in HTTPS header.
| Output Samples Change History User Notes |
The box below lists all fields that could be included in the call request. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).
See also Samples.
<?xml version="1.0" encoding="utf-8"?>
<getBillingRecordsRequest xmlns="http://www.ebay.com/marketplace/services">
<recordTimeRange> TimeRange
<timeFrom> dateTime </timeFrom>
<timeTo> dateTime </timeTo>
</recordTimeRange>
<recordType> BillingRecordType </recordType>
<statementId> string </statementId>
<subscriptionId> long </subscriptionId>
</getBillingRecordsRequest>
| Argument | Type | Occurrence | Meaning |
|---|
| recordTimeRange | TimeRange | Optional | Requested time range for records. |
| recordTimeRange.timeFrom | dateTime | Optional | Specifies the earliest (oldest) date to be used in a date range. |
| recordTimeRange.timeTo | dateTime | Optional | Specifies the latest (most recent) date to be used in a date range. |
| recordType | BillingRecordType | Optional |
Specifies whether the record is a one-time charge, a statement, a subscription charge, or a usage charge.
Applicable values: • All (in/out) Indicates that the billing record represents all transactions in the statement. • Charge (in/out) Indicates that the billing record represents all types of charges such as SubscriptionCharge, OneTimeCharge, UsageCharge. • Credit (in/out) Indicates that the billing record represents all types of credit such as CreditSubscriptionCharge, CreditOneTimeCharge, CreditUsageCharge, CreditStatement, CreditReversal. • CreditOneTimeCharge (in/out) Indicates that the billing record represents a credit for one-time subscription fee or setup fee. • CreditReversal (in/out) Indicates that the billing record represents a reversal of a CreditUsageCharge, a CreditOneTimeCharge, or a CreditSubscriptionCharge. • CreditStatement (in/out) Indicates that the billing record represents an account-level credit statement for the user. • CreditSubscriptionCharge (in/out) Indicates that the billing record represents a refund of charges that the user has paid after cancellation date. This might apply, for example, to a user who is subscribed to a plan that is prorated, who has been billed in advance for a month and who unsubscribes before the end of that month. Credits can be added manually or system-generated upon subscription cancellation. • CreditUsageCharge (in/out) Indicates that the billing record represents a credit for usage charge. • Discount (in/out) Reserved for future use. When discounts are introduced, a discount, such as 10% off a subscription charge or 100% of for a month or $10 for the first 3 months, will be calculated at bill processing time. • OneTimeCharge (in/out) Indicates that the billing record represents a one-time subscription charge or a setup fee. Equivalent to NRC (non-recurring charge). Pre- defined in the billing plan (not ever applied through the addUsage call). • Payment (in/out) Indicates that the billing record represents all transactions related to payment like reversal and refund and not just payment. • PaymentRefund (in/out) Indicates that the billing record represents a payment refund, in which money has been refunded to the user's PayPal account. • PaymentReversal (in/out) Indicates that the billing record represents a payment reversal, which records that a regularly scheduled payment has failed. A payment reversal and a payment will both appear on the user's account. • Statement (in/out) Indicates that the billing record represents a statement. Pre-defined in the billing plan (not ever applied through the addUsage call). • SubscriptionCharge (in/out) Indicates that the billing record represents a recurring subscription charge. Pre-defined in the billing plan (not ever applied through the addUsage call). • UsageCharge (in/out) Indicates just that the charge in the billing record was applied by the addUsage call. |
| statementId | string | Optional |
Unique identifier for a billing statement, created by eBay at statement time. Obtain this value from the response to the getBillingStatements request. Max length: 256. |
| subscriptionId | long | Required | For a particular application, the subscriptionId uniquely identifies a user's subscription. |
| Input Samples Change History User Notes |
The box below lists all fields that might be returned in the response. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).
See also Samples.
<?xml version="1.0" encoding="utf-8"?>
<getBillingRecordsResponse xmlns="http://www.ebay.com/marketplace/services">
<!-- Standard Output Fields -->
<ack> AckValue </ack>
<errorMessage> ErrorMessage
<error> ErrorData
<category> ErrorCategory </category>
<domain> string </domain>
<errorId> long </errorId>
<exceptionId> token </exceptionId>
<message> string </message>
<parameter name="string"> ErrorParameter (string) </parameter>
<!-- ... more parameter nodes here ... -->
<severity> ErrorSeverity </severity>
<subdomain> string </subdomain>
</error>
<!-- ... more error nodes here ... -->
</errorMessage>
<timestamp> dateTime </timestamp>
<version> string </version>
<!-- Call-specific Output Fields -->
<record> BillingRecord
<adjustable> boolean </adjustable>
<billed> boolean </billed>
<billingAccountId> string </billingAccountId>
<recordAdditionalDescription> string </recordAdditionalDescription>
<recordAmount type="RecordAmountType" currencyId="string"> RecordAmount (Amount) </recordAmount>
<!-- ... more recordAmount nodes here ... -->
<recordDescription> string </recordDescription>
<recordId> string </recordId>
<recordTime type="RecordTimeType"> RecordTime (dateTime) </recordTime>
<!-- ... more recordTime nodes here ... -->
<recordType> BillingRecordType </recordType>
<statementId> string </statementId>
</record>
<!-- ... more record nodes here ... -->
</getBillingRecordsResponse>
| Return Value | Type | Occurrence | Meaning |
|---|
| Standard Output Fields [Jump to call-specific fields] |
| ack | AckValue | Always |
Indicates whether or not errors or warnings were generated during the processing of the request.
Applicable values: • Failure (out) The request that triggered the error was not processed successfully. When a serious application-level error occurs, the error is returned instead of the business data. • PartialFailure (out) The request that triggered the error was processed successfully but with some warnings. • Success (out) The request was processed successfully, but something occurred that may affect your application or the user. • Warning (out) The request that triggered the error was processed successfully but with some warnings. |
| errorMessage | ErrorMessage | Conditionally | Information for an error or warning that occurred when eBay processed the request. |
| errorMessage.error | ErrorData | Conditionally,
repeatable: [0..*] |
ActivityProfile about a single error. |
| errorMessage.error.category | ErrorCategory | Conditionally |
There are three categories of errors: request errors, application errors, and system errors.
Applicable values: • Application (out) An error occurred due to a problem with the request, such as missing or invalid fields. The problem must be corrected before the request can be made again. If the problem is due to something in the application (such as a missing required field), the application must be changed. Once the problem in the appilcation or data is resolved, resend the corrected request to eBay. • Request (out) An error occurred due to a problem with the request, such as invalid or missing data. The problem must be corrected before the request can be made again. If the problem is a result of end-user data, the application must alert the end-user to the problem and provide the means for the end-user to correct the data. Once the problem in the data is resolved, resend the request to eBay with the corrected data. • System (out) Indicates that an error has occurred on the eBay system side, such as a database or server down. An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form. |
| errorMessage.error.domain | string | Conditionally |
Name of the domain upon which the error occurred.
|
| errorMessage.error.errorId | long | Conditionally | A unique code that identifies the particular error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms. |
| errorMessage.error.exceptionId | token | Conditionally | Unique identifier for an exception associated with an error. |
| errorMessage.error.message | string | Conditionally | A detailed description of the condition that resulted in the error. |
| errorMessage.error.parameter | ErrorParameter (string) | Conditionally,
repeatable: [0..*] |
Some warning and error messages return one or more variables that contain contextual information about the error. This is often the field or value that triggered the error. |
| errorMessage.error.parameter [ attribute name ] |
string | Conditionally | The name of the parameter in the list of parameter types returned within the error type. |
| errorMessage.error.severity | ErrorSeverity | Conditionally |
Indicates whether the error caused the request to fail (Error) or not (Warning). If the request fails and the source of the problem is within the application (such as a missing required element), please change the application before you retry the request. If the problem is due to end-user input data, please alert the end-user to the problem and provide the means for them to correct the data. Once the problem in the application or data is resolved, you can attempt to re- send the request to eBay. If the source of the problem is on eBay's side, you can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form. When a warning occurs, the error is returned in addition to the business data. In this case, you do not need to retry the request (as the original request was successful). However, depending on the cause or nature of the warning, you might need to contact either the end user or eBay to effect a long term solution to the problem to prevent it from reoccurring in the future. Applicable values: • Error (out) The request that triggered the error was not processed successfully. When a serious application-level error occurs, the error is returned instead of the business data. • Warning (out) The request was processed successfully, but something occurred that may affect your application or the user. For example, eBay may have changed a value the user sent in. In this case, eBay returns a normal, successful response and also returns the warning. |
| errorMessage.error.subdomain | string | Conditionally | Name of the subdomain upon which the error occurred. Subdomains include the following: UserProfile (in which the error is specific to the UserProfile service) and MarketplaceCommon (in which the error is common to all Marketplace services). |
| timestamp | dateTime | Always | This value represents the date and time when eBay processed the request. This value is returned in GMT, the ISO 8601 date and time format (YYYY- MM- DDTHH:MM:SS.SSSZ). See the "dateTime" type for information about the time format, and for details on converting to and from the GMT time zone. |
| version | string | Always |
The release version that eBay used to process the request. Developer Technical Support may ask you for the version value if you work with them to troubleshoot issues. Note: The version in use is normally the latest release version, as specified in the release notes. |
| Call-specific Output Fields |
| record | BillingRecord | Conditionally,
repeatable: [0..*] |
Transaction record for a billing account. |
| record.adjustable | boolean | Always | True if the transaction can be credited. Only applicable to one-time charges and setup fees. |
| record.billed | boolean | Always | For this record, specifies whether the fee appeared on the user's statement (i.e., whether it's been billed). |
| record.billingAccountId | string | Always |
A unique identifier for each combination of an application and a subscriber. Used for billing-related calls (getBillingStatements, getBillingRecords). Also known as EID. Max length: 32. |
|
record .recordAdditionalDescription |
string | Conditionally |
Allows additional description for the record. Max length: 1024. |
| record.recordAmount | RecordAmount (Amount) | Always,
repeatable: [1..*] |
The recordType determines what this value signifies. If recordType is SubscriptionCharge, amount represents the total amount due for the subscription to two or fewer digits after the decimal point in the subscriber's currency. If recordType is OneTimeCharge, amount represents the amount of the charge to two or fewer digits after the decimal point in the subscriber's currency. If recordType is UsageCharge, amount represents the total of the usage charge to two or fewer digits after the decimal point in the subscriber's currency. If recordType is Statement, amount represents the amount available to credit at the time of the statement, to two or fewer digits after the decimal point, in the subscriber's currency. |
| record.recordAmount [ attribute type ] |
RecordAmountType | Always |
The type of amount value of a record. For a list of possible enumeration values, see RecordAmountType. |
| record.recordAmount [ attribute currencyId ] |
string | Always | Currency in which the monetary amount is specified. A three-letter ID, such as USD, CAD, DEM. Currently, USD is the only available value. |
| record.recordDescription | string | Always |
The recordType determines what this value signifies. If recordType is SubscriptionCharge, recordDescription contains a text description of the subscription. If recordType is OneTimeCharge, recordDescription contains a text description of the charge. If recordType is UsageCharge, recordDescription contains a text description of the usage. If recordType is Statement, recordDescription contains a text description of the statement. Max length: 1024. |
| record.recordId | string | Always |
Unique identifier for the record, assigned by eBay. Contains state and location information about the record. An example of a recordId: 1111:222:333:444:x. Retrieve a recordID using getBillingRecords. Max length: 256. |
| record.recordTime | RecordTime (dateTime) | Always,
repeatable: [1..*] |
The recordType determines what this value signifies. If recordType is SubscriptionCharge, recordTime represents the transaction date. If recordType is OneTimeCharge, recordTime represents the time of the transaction. If recordType is UsageCharge, recordTime represents the time of the transaction. If recordType is Statement, recordTime represents the statement date. |
| record.recordTime [ attribute type ] |
RecordTimeType | Always |
The type of time value of a record. For a list of possible enumeration values, see RecordTimeType. |
| record.recordType | BillingRecordType | Always |
Specifies the type of record. The possible types are one-time charge, statement, subscription charge, and usage charge. In the case of each record type, the values of other fields, such as taxAmount and recordTime, are appropriate to the record type. For example, if the recordType is usage charge, then recordTime represents the transaction date. If recordType is statement, recordTime represents the time of the statement's creation.
Applicable values: • All (in/out) Indicates that the billing record represents all transactions in the statement. • Charge (in/out) Indicates that the billing record represents all types of charges such as SubscriptionCharge, OneTimeCharge, UsageCharge. • Credit (in/out) Indicates that the billing record represents all types of credit such as CreditSubscriptionCharge, CreditOneTimeCharge, CreditUsageCharge, CreditStatement, CreditReversal. • CreditOneTimeCharge (in/out) Indicates that the billing record represents a credit for one-time subscription fee or setup fee. • CreditReversal (in/out) Indicates that the billing record represents a reversal of a CreditUsageCharge, a CreditOneTimeCharge, or a CreditSubscriptionCharge. • CreditStatement (in/out) Indicates that the billing record represents an account-level credit statement for the user. • CreditSubscriptionCharge (in/out) Indicates that the billing record represents a refund of charges that the user has paid after cancellation date. This might apply, for example, to a user who is subscribed to a plan that is prorated, who has been billed in advance for a month and who unsubscribes before the end of that month. Credits can be added manually or system-generated upon subscription cancellation. • CreditUsageCharge (in/out) Indicates that the billing record represents a credit for usage charge. • Discount (in/out) Reserved for future use. When discounts are introduced, a discount, such as 10% off a subscription charge or 100% of for a month or $10 for the first 3 months, will be calculated at bill processing time. • OneTimeCharge (in/out) Indicates that the billing record represents a one-time subscription charge or a setup fee. Equivalent to NRC (non-recurring charge). Pre- defined in the billing plan (not ever applied through the addUsage call). • Payment (in/out) Indicates that the billing record represents all transactions related to payment like reversal and refund and not just payment. • PaymentRefund (in/out) Indicates that the billing record represents a payment refund, in which money has been refunded to the user's PayPal account. • PaymentReversal (in/out) Indicates that the billing record represents a payment reversal, which records that a regularly scheduled payment has failed. A payment reversal and a payment will both appear on the user's account. • Statement (in/out) Indicates that the billing record represents a statement. Pre-defined in the billing plan (not ever applied through the addUsage call). • SubscriptionCharge (in/out) Indicates that the billing record represents a recurring subscription charge. Pre-defined in the billing plan (not ever applied through the addUsage call). • UsageCharge (in/out) Indicates just that the charge in the billing record was applied by the addUsage call. |
| record.statementId | string | Always |
Unique identifier for a billing statement, created at statement-time. Max length: 256. |
| Input Output Change History User Notes |
New to making API calls? Please see Making an API Call.
Note: Some item IDs, user IDs, or other data in these samples might no longer be active on eBay. If necessary, you can substitute current eBay data in your requests.
Requests billing records for a specified subscription ID and statement ID.
Description
Demonstrates how to specify a statement ID, e.g. a statement ID obtained from a getBillingStatements response, to retrieve the billing records for the statement ID.
Input
XML format (HTTP POST). Also available is the .txt version of this XML. <?xml version="1.0" encoding="utf-8" ?> <getBillingRecordsRequest xmlns="http://www.ebay.com/marketplace/openebay/v1/services"> <subscriptionId>5330007258</subscriptionId> <statementId>6871408:1</statementId> </getBillingRecordsRequest>
Output
XML format. Also available is the .txt version of this XML. <getBillingRecordsResponse xmlns:ms="http://www.ebay.com/marketplace/services" xmlns="http://www.ebay.com/marketplace/openebay/v1/services"> <ack>Success</ack> <version>1.0.0</version> <timestamp>2010-02-09T02:00:01.440Z</timestamp> <record> <billingAccountId>160000040333001</billingAccountId> <recordType>OneTimeCharge</recordType> <recordId>17233393:x:11:8:x</recordId> <billed>true</billed> <statementId>6871408:1</statementId> <recordTime type="Transaction">2010-02-10T07:00:00.000Z</recordTime> <recordAmount type="Rated" currencyId="USD">299.0</recordAmount> <recordAmount type="Billed" currencyId="USD">299.0</recordAmount> <recordDescription>My record description</recordDescription> <adjustable>true</adjustable> </record> </getBillingRecordsResponse>
| Input Output Samples User Notes |
| Version | Description |
|---|---|
| 1.1.0 2010-08-26 |
|
| 1.0.0 2010-03-01 |
|
| Input Output Samples Change History User Notes |
© 2010 eBay, Inc. All rights reserved. This documentation and the API may only be used in accordance with the eBay Developers Program and API License Agreement.