Allow user to get their invoice by invoice number
Table of Contents
Changelogs
Version | Date | Changes by | Description of change |
V1.0 |
| Tam Tran |
|
Order Resource
InvoiceNumber string Invoice unique number |
Quantity decimal Quantity |
Status object
Client Invoice Status (Unpaid, WaitingForConfirm, Paid, Expired, Cancelled, Refunded, PartialPayment, PartialPaid, PaymentFollowUp, OfflineManual) |
IssuedDate DateTime Isssued Date |
DueDate DateTime Due Date |
PaidDate DateTime Paid Date |
CreatedTime DateTime Invoices created time |
UpdatedTime DateTime Invoices updated time |
CurrencyCode text Current Code (USD, ..) |
FeeCodeNumber text Fee Code Number |
PayerTaxPercentage decimal Payer tax percentage |
PayeeTaxPercentage decimal Payee tax percentage |
Payer:CompanyName text Payer’s company name |
Payer:RegistrationNumber text Payer’s registration number |
Payer:Address text Payer’s address |
Payer:Country text Payer’s country |
Payee:CompanyName text Payer’s company name |
Payee:RegistrationNumber text Payer’s registration number |
Payee:Address text Payer’s address |
Payee:Country text Payer’s country |
MainInvoice:Total decimal Total price in invoice |
MainInvoice:SubTotal decimal Sub Total price in invoice |
MainInvoice:PayeeTaxAmount decimal Payee Tax Amount in primary invoice |
MainInvoice:PayerTaxAmount decimal Payer Tax Amount in primary invoice |
MainInvoice:Items[n]:Quantity decimal Quantity of rec |
MainInvoice:Items[n]:UnitPrice decimal Price |
MainInvoice:Items[n]:TotalPrice decimal Quantity x UnitPrice |
MainInvoice:Items[n]:Description text Description |
MainInvoice:Items[n]:TransactionDate datetime Transaction Date |
MainInvoice:Items[n]:TransactionId text Transaction Id |
MainInvoice:PayerSubtotal text Payer sub total in primary invoice |
MainInvoice:PayeeSubtotal text Payee sub total in primary invoice |
MainInvoice:PayerSubtotalWithTax text Payer sub total include tax in primary invoice |
MainInvoice:PayeeSubtotalWithTax text Payer sub total include tax in primary invoice |
SplitInvoices array Secondary invoice (have same attribute with MainInvoice) |
{ "InvoiceNumber": "INV-REAR-2024-09-27-00006", "Quantity": 20.000000, "IssuedDate": "2024-09-27T00:00:00.0000000Z", "DueDate": "2024-10-01T15:59:59.9999999Z", "PaidDate": null, "Status": { "Value": "Unpaid", "Description": "Unpaid" }, "CreatedTime": "2024-09-27T16:30:14.693", "UpdatedTime": "2024-09-27T16:30:14.693", "CurrencyCode": "USD", "FeeCodeNumber": null, "PayerTaxPercentage": 0.0000, "PayeeTaxPercentage": 0.0000, "Payer": { "CompanyName": "1234", "RegistrationNumber": "1234", "Address": "zxcvb", "Country": "Åland Islands" }, "Payee": { "CompanyName": "REDEX Pte. Ltd.", "RegistrationNumber": "201834016K", "Address": "Blk 71 Ayer Rajah Crescent", "Country": "Singapore" }, "MainInvoice": { "Total": 40.00, "SubTotal": 40.00, "PayeeTaxAmount": 0.00, "PayerTaxAmount": 0.00, "Items": [ { "Quantity": 20.000000, "UnitPrice": 1.50, "TotalPrice": 30.00, "Description": "Singapore v2024 Solar I-REC (Bid 20 Qty @ USD 1.5000)", "TransactionDate": "2024-09-27T08:15:35.4800000Z", "TransactionId": "EX2024092708153565670626" }, { "Quantity": 1.000000, "UnitPrice": 10.00, "TotalPrice": 10.00, "Description": "Buyer Processing Fee (Min USD 10.00)", "TransactionDate": "2024-09-27T16:30:14.7000000Z", "TransactionId": null } ], "PayerSubtotal": 0, "PayeeSubtotal": 40.00, "PayerSubtotalWithTax": 0.00, "PayeeSubtotalWithTax": 40.00 }, "SplitInvoices": null }
API Definition
GET /public/v2/invoices/{invoiceNumber}
Request
Headers
Content-Type |
|
Authorization |
|
Query Parameters
InvoiceNumber - text The Invoice Number of Invoice |
curl --location 'https://uat-api.redex.eco/public/v2/invoices/INV-REAR-2024-09-27-00006' \ --header 'accept: application/json' \ --header 'Authorization: Bearer {{access_token}}'
Response
Response Body |
Data object collection - Order Resource A collection of objects - Order Resource |
Errors list of error objects Please see "Getting Started - #Error Object" for more details 请查看Getting Started - #Error Object以获得更多信息。 |
Meta pagination resource Return Pagination Resource 返回分页信息 |
StatusCode integer Http Status codes standard. Example http状态码,如200,201,400, 422 |
Message text Response message: Success or error message. 返回成功或错误的信息。 |
200 Success
{ "Data": { "InvoiceNumber": "INV-REAR-2024-09-27-00006", "Quantity": 20.000000, "IssuedDate": "2024-09-27T00:00:00.0000000Z", "DueDate": "2024-10-01T15:59:59.9999999Z", "PaidDate": null, "Status": { "Value": "Unpaid", "Description": "Unpaid" }, "CreatedTime": "2024-09-27T16:30:14.693", "UpdatedTime": "2024-09-27T16:30:14.693", "CurrencyCode": "USD", "FeeCodeNumber": null, "PayerTaxPercentage": 0.0000, "PayeeTaxPercentage": 0.0000, "Payer": { "CompanyName": "1234", "RegistrationNumber": "1234", "Address": "zxcvb", "Country": "Åland Islands" }, "Payee": { "CompanyName": "REDEX Pte. Ltd.", "RegistrationNumber": "201834016K", "Address": "Blk 71 Ayer Rajah Crescent", "Country": "Singapore" }, "MainInvoice": { "Total": 40.00, "SubTotal": 40.00, "PayeeTaxAmount": 0.00, "PayerTaxAmount": 0.00, "Items": [ { "Quantity": 20.000000, "UnitPrice": 1.50, "TotalPrice": 30.00, "Description": "Singapore v2024 Solar I-REC (Bid 20 Qty @ USD 1.5000)", "TransactionDate": "2024-09-27T08:15:35.4800000Z", "TransactionId": "EX2024092708153565670626" }, { "Quantity": 1.000000, "UnitPrice": 10.00, "TotalPrice": 10.00, "Description": "Buyer Processing Fee (Min USD 10.00)", "TransactionDate": "2024-09-27T16:30:14.7000000Z", "TransactionId": null } ], "PayerSubtotal": 0, "PayeeSubtotal": 40.00, "PayerSubtotalWithTax": 0.00, "PayeeSubtotalWithTax": 40.00 }, "SplitInvoices": null }, "Meta": null, "Errors": null, "StatusCode": 200, "Message": "Success" }
400 Bad Request
{ "Data": null "StatusCode": 400, "Errors": null, "Meta": null, "Message": "Bad Request" }
422 Unprocessable Entity
{ "Data": null "StatusCode": 402, "Errors": null, "Meta": null, "Message": "Unprocessable Entity" }
401 Unauthorized
{ "Data": null, "StatusCode": 401, "Errors": null, "Meta": null, "Message": "Unauthorized" }
403 Forbidden
{ "Data": null, "StatusCode": 403, "Errors": null, "Meta": null, "Message": "Forbidden" }
Rate limit
Rate Limit Algorithm: Fixed Window
In fixed window rate limiting, a fixed time window (e.g., one minute, one hour) is used to track the number of requests or actions allowed within that window. Requests exceeding the limit are either rejected or throttled until the window resets.
Rate Limiting Overview
Our API employs rate limiting to ensure fair usage and protect the performance and availability of the service. Combination of Global Policy and Operation Policy
Global Policy
Rate Limit: 3000 requests per 5 minute(s)
Renewal Period: 300 second(s)
Key: IP Address
Increment Condition: Any Request
Operation Policy
Rate Limit: 10 requests per 10 seconds(s)
Renewal Period: 10 second(s)
Key:
accound-id
business account Id.Increment Condition: Any Request.
Rate Limit Details
Rate Limit by Key:
Key: This ensures that rate limits are applied uniquely for each business account id.
Request Limit: Each key is allowed to make up to 10 requests per 10 seconds.
Reset Interval: The limit resets every 10 seconds.
Response Headers:
Retry-After: Sent when the rate limit is exceeded, indicating how long to wait before making another request.
Exceeding the Rate Limit
When the rate limit is exceeded, the API will return a 429 Too Many Requests
status code. The response will include a Retry-After
header specifying the number of seconds to wait before making a new request.
Example Response When Rate Limit is Exceeded
HTTP/1.1 429 Too Many Requests Retry-After: 10 Content-Type: application/json { "Data": null, "Errors": null, "StatusCode": 429, "Message": "Rate limit exceeded", "Meta": null }